9415 【BT】【后端】古神战场(修复击杀积分王时刚好获胜导致重复结算奖励bug)
1个文件已修改
7 ■■■■ 已修改文件
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_CrossBattlefield.py 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorldLogic/FBProcess/GameLogic_CrossBattlefield.py
@@ -1620,6 +1620,12 @@
    fbPropertyID = GameWorld.GetGameWorld().GetPropertyID()
    zoneID = FBCommon.GetCrossDynamicLineMapZoneID()
    funcLineID = FBCommon.GetCrossDynamicLineMapFuncLineID()
    gameFB = GameWorld.GetGameFB()
    fbStep = gameFB.GetFBStep()
    if fbStep > FB_Step_Fighting:
        GameWorld.ErrLog("跨服战场触发重复结算,不处理! zoneID=%s,funcLineID=%s,winnerFaction=%s" % (zoneID, funcLineID, winnerFaction), fbPropertyID)
        return
    GameWorld.Log("跨服战场结算! zoneID=%s,funcLineID=%s,winnerFaction=%s" % (zoneID, funcLineID, winnerFaction), fbPropertyID)
    
    refreshCrossBattlefield(tick, False) # 结算前强刷一次
@@ -1630,7 +1636,6 @@
    winnerOrderIntAwardDict = {int(k):v for k, v in winnerOrderAwardDict.items()}
    syncRankCount = max(winnerOrderIntAwardDict) if winnerOrderIntAwardDict else 20
    
    #gameFB = GameWorld.GetGameFB()
    worldObj = GetBattleWorld()
    leaveTime = GetBFStepTime()[Time_Leave] * 1000
    copyMapMgr = GameWorld.GetMapCopyPlayerManager()