ServerPython/CoreServerGroup/GameServer/Script/Player/ChPlayer.py
@@ -635,6 +635,10 @@
    elif packType == IPY_GameServer.CDBPlayerRefresh_VIPLv:
        curPlayer.SetVIPLv(packValue);
#        __RefreshTeamState(curPlayer)
    elif packType == IPY_GameServer.CDBPlayerRefresh_ExAttr5:
        PlayerControl.SetCrossMapID(curPlayer, packValue, False)
    elif packType == IPY_GameServer.CDBPlayerRefresh_ExAttr9:
        PlayerControl.SetVIPExpireTime(curPlayer, packValue)
        
@@ -873,17 +877,29 @@
#{
#    tagHead        Head;
#    DWORD        MapID;
#    BYTE        FBLineID;
#    BYTE        IsAllLine;
#    BYTE        LineCount;
#    BYTE        LineIDList[LineCount];    //个数为0时代表查全部
#};
def ClinetQueryFBLinePlayerCnt(index, clientData, tick):
    curPlayer = GameWorld.GetPlayerManager().GetPlayerByIndex(index)
    queryMapID = clientData.MapID
    fbLineID = clientData.FBLineID
    isAllLine = clientData.IsAllLine
    queryFBLineIDList = clientData.LineIDList
    playerManager = GameWorld.GetPlayerManager()
    
    sendCMD = str([queryMapID, fbLineID, isAllLine])
    if queryMapID in ChConfig.Def_CrossMapIDList:
        fbLinePlayerInfoDict = PyGameData.g_crossFBFuncLinePlayerCountInfo.get(queryMapID, {})
        if not queryFBLineIDList:
            resultInfo = [queryMapID, fbLinePlayerInfoDict]
        else:
            defaultInfo = [0] # 与本服结构相同,默认0人
            queryFBLineInfo = {}
            for lineID in queryFBLineIDList:
                queryFBLineInfo[lineID] = fbLinePlayerInfoDict.get(lineID, defaultInfo)
            resultInfo = [queryMapID, queryFBLineInfo]
        QueryFBLinePlayerCntResult(curPlayer, resultInfo)
        return
    sendCMD = str([queryMapID, queryFBLineIDList])
    playerManager.MapServer_QueryPlayer(curPlayer.GetPlayerID(), 0, 0, queryMapID,
                'FBLinePlayerCnt', sendCMD, len(sendCMD), curPlayer.GetRouteServerIndex())
    return