5424 【后端】【1.4】跨服竞技场开发(修复匹配中匹配状态结束后玩家还被视为匹配中的bug)
2个文件已修改
13 ■■■■ 已修改文件
ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCrossRealmPK.py 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ServerPython/CoreServerGroup/GameServer/Script/GameWorldLogic/CrossRealmPK.py
@@ -644,8 +644,16 @@
        return
    
    gameWorld = GameWorld.GetGameWorld()
    preState = gameWorld.GetDictByKey(ShareDefine.Def_Notify_WorldKey_CrossDailyActionState % ShareDefine.DailyActionID_CrossReamPK)
    gameWorld.SetDict(ShareDefine.Def_Notify_WorldKey_CrossDailyActionState % ShareDefine.DailyActionID_CrossReamPK, isOpen)
    # 匹配状态从关闭到开启
    if not preState and isOpen:
        PyGameData.g_crossPKPlayerDict = {}
        PyGameData.g_crossPKZoneMatchPlayerDict = {}
        PyGameData.g_crossPKRoomDict = {}
        GameWorld.Log("跨服PK匹配状态开启,重置相关匹配数据!")
    ipyDataMgr = IpyGameDataPY.IPY_Data()
    for index in xrange(ipyDataMgr.GetCrossRealmPKZoneCount()):
        zoneIpyData = ipyDataMgr.GetCrossRealmPKZoneByIndex(index)
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/Player/PlayerCrossRealmPK.py
@@ -33,7 +33,8 @@
def SetIsCrossPKMatching(curPlayer, isMatching):
    curPlayer.SetDict(ChConfig.Def_PlayerKey_IsCrossPKMatching, isMatching)
    return
def GetIsCrossPKMatching(curPlayer): return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_IsCrossPKMatching)
def GetIsCrossPKMatching(curPlayer):
    return curPlayer.GetDictByKey(ChConfig.Def_PlayerKey_IsCrossPKMatching) and IsCrossRealmPKMatchState()
def DoPlayerOnDay(curPlayer):
    if GameWorld.IsCrossServer():