| | |
| | |
|
| | | if familyWarRank:
|
| | | GameWorld.Log("解散仙盟,触发更新仙盟联赛排名: delFamilyID=%s,familyWarRank=%s" % (familyID, familyWarRank))
|
| | | PlayerFamily.UpdFamilyWarRank()
|
| | | UpdFamilyWarRank()
|
| | |
|
| | | # 补发未分配的连胜奖励
|
| | | AllotWinRewardBySystem(GetFamilyWarChampionRecData(), True)
|
| | |
| | |
|
| | | # 下周分组定级
|
| | | elif stateValue == FamilyWarState_NextWeekGroupRank:
|
| | | DoLogicFamilyWar_NextWeekGroupRank()
|
| | | pass
|
| | | #废弃该阶段逻辑
|
| | | #DoLogicFamilyWar_NextWeekGroupRank()
|
| | |
|
| | | else:
|
| | | GameWorld.ErrLog("不存在该仙盟联赛状态!stateValue=%s" % stateValue)
|
| | |
| | | PlayerFamily.UpdFamilyWarRank()
|
| | | return
|
| | |
|
| | | def UpdFamilyWarRank():
|
| | | '''更新仙盟联赛排名
|
| | | 注意:该逻辑在仙盟联赛周期中不可执行,仅在下周分组定级状态下可更新,由程序控制,在活动结束后结算调用
|
| | | 仙盟联赛新一周期开始时、仙盟解散时 会触发该逻辑
|
| | | '''
|
| | | #gameWorld = GameWorld.GetGameWorld()
|
| | | #state = gameWorld.GetDictByKey(ShareDefine.Def_Notify_WorldKey_FBFuncState % ChConfig.Def_FBMapID_FamilyWar)
|
| | | #if state != GameWorldFamilyWar.FamilyWarState_NextWeekGroupRank:
|
| | | # GameWorld.DebugLog("非下周分组定级阶段不可更新仙盟联赛排名!")
|
| | | # return
|
| | | |
| | | GameWorld.Log("=== 更新仙盟联赛排名 ===")
|
| | | |
| | | familyMgr = GameWorld.GetFamilyManager()
|
| | | sortFamilyIDList = PlayerFamily.GetSortFamilyIDList()
|
| | | for rank, familyID in enumerate(sortFamilyIDList, 1):
|
| | | family = familyMgr.FindFamily(familyID)
|
| | | if not family:
|
| | | continue
|
| | | curRank = PlayerFamily.GetFamilyWarRank(family)
|
| | | if not curRank:
|
| | | break
|
| | | if curRank != rank:
|
| | | PlayerFamily.SetFamilyWarRank(family, rank)
|
| | | GameWorld.Log(" 更新仙盟联赛仙盟排名: familyID=%s,curRank=%s,updRank=%s" % (family.GetID(), curRank, rank))
|
| | | |
| | | return
|
| | |
|
| | | def __DoLogicFamilyWarAllOver():
|
| | | ''' 仙盟赛全部比赛结束后逻辑
|
| | | 非最高级别组: 第一名晋级
|
| | |
| | |
|
| | | PlayerDBGSEvent.SetDBGSTrig_ByKey(PlayerDBGSEvent.Def_FamilyWar_Round, 0) # 重置对战轮次
|
| | | PlayerDBGSEvent.SetDBGSTrig_ByKey(PlayerDBGSEvent.Def_FamilyWar_AllOver, 1) # 设置已经处理过总结算
|
| | | |
| | | UpdFamilyWarRank() # 改为比赛结束后默认更新联赛排名
|
| | | return
|
| | |
|
| | | def UpdFamilyWarChampion(championFamilyID):
|