hxp
2018-09-03 5aeeb7133a2e988ef8337c3e9d400e4bfe25c097
Fix: 1832 仙盟联赛分组出现整组未分组情况;
1个文件已修改
30 ■■■■ 已修改文件
ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldFamilyWar.py 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/GameWorldFamilyWar.py
@@ -425,20 +425,20 @@
            continue
        if family.GetLV() < joinFamilyLVLimit:
            GameWorld.Log("仙盟等级不足,无法参与联赛!familyID=%s,LV=%s,joinFamilyLVLimit=%s" % (familyID, family.GetLV(), joinFamilyLVLimit))
            continue
        groupFamilyList.append(family)
        # 添加参赛仙盟及成员名单
        PyGameData.g_familyWarFamilyIDList.append(familyID)
        for index in xrange(family.GetCount()):
            curMember = family.GetAt(index)
            memPlayerID = curMember.GetPlayerID()
            memPlayer = curMember.GetPlayer()
            isAddOK = AddFamilyWarMem(memPlayerID, familyID, warMemRecList)
            lastJoinFamilyID = lastFamilyWarMemDict.get(memPlayerID, 0)
            # 重新通知玩家参与的仙盟
            if lastJoinFamilyID and isAddOK and lastJoinFamilyID != familyID and memPlayer:
                __NotifyPlayerJoinFamilyInfo(memPlayer, familyID)
        else:
            groupFamilyList.append(family)
            # 添加参赛仙盟及成员名单
            PyGameData.g_familyWarFamilyIDList.append(familyID)
            for index in xrange(family.GetCount()):
                curMember = family.GetAt(index)
                memPlayerID = curMember.GetPlayerID()
                memPlayer = curMember.GetPlayer()
                isAddOK = AddFamilyWarMem(memPlayerID, familyID, warMemRecList)
                lastJoinFamilyID = lastFamilyWarMemDict.get(memPlayerID, 0)
                # 重新通知玩家参与的仙盟
                if lastJoinFamilyID and isAddOK and lastJoinFamilyID != familyID and memPlayer:
                    __NotifyPlayerJoinFamilyInfo(memPlayer, familyID)
                
        # 满一组仙盟数 or 没有仙盟了
        if len(groupFamilyList) == FamilyWar_GroupFamilyCount or i == familyCount - 1:
@@ -453,6 +453,8 @@
                
    GameWorld.Log("    PyGameData.g_familyWarFamilyIDList: %s" % PyGameData.g_familyWarFamilyIDList)
    GameWorld.Log("    PyGameData.g_familyWarMemDict: %s" % PyGameData.g_familyWarMemDict)
    GameWorld.Log("    通用记录对战家族数: %s" % warBatRecList.Count())
    GameWorld.Log("    通用记录参与玩家数: %s" % warMemRecList.Count())
    GameWorld.Log("    仙盟联赛首轮比赛分组确认完毕!")
    PlayerDBGSEvent.SetDBGSTrig_ByKey(PlayerDBGSEvent.Def_FamilyWar_Round, FamilyWarRound_First) # 设置已处理过的轮次
    return