| | |
| | | import IpyGameDataPY
|
| | | import PyGameData
|
| | | import GameWorld
|
| | | import ChConfig
|
| | |
|
| | | import time
|
| | |
|
| | | Def_UserDataKey_ServerIDList = "ServerIDList"
|
| | | Def_UserDataKey_PlayerInfo = "PlayerInfo"
|
| | |
|
| | | # 仙宫玩家记录
|
| | | def GetXGPlayerID(recData): return recData.GetValue1() # 仙宫玩家ID
|
| | |
| | | # 确保玩家自身一定能看到自己,跨服排位赛历史分区问题
|
| | | if saveServerIDList and serverID and not GameWorld.CheckServerIDInList(serverID, saveServerIDList):
|
| | | saveServerIDList.append(serverID)
|
| | | recData.SetUserDataByKey(Def_UserDataKey_ServerIDList, saveServerIDList) # 保存当下的区服ID范围 |
| | | recData.SetUserDataByKey(Def_UserDataKey_PlayerInfo, playerInfo) # 保存当下的玩家基本信息
|
| | | recData.SetUserDataByKey(ChConfig.Def_RecDataKey_ServerIDList, saveServerIDList) # 保存当下的区服ID范围 |
| | | recData.SetUserDataByKey(ChConfig.Def_RecDataKey_PlayerInfo, playerInfo) # 保存当下的玩家基本信息
|
| | | GameWorld.Log("新晋仙官玩家: xiangongID=%s,playerID=%s,rank=%s,serverID=%s,saveServerIDList=%s,%s"
|
| | | % (xiangongID, playerID, rank, serverID, saveServerIDList, playerInfo))
|
| | |
|
| | |
| | | if passDays > showDays:
|
| | | GameWorld.DebugLog(" xgPlayerID=%s,addTime=%s,passDays=%s > %s" % (xgPlayerID, addTime, passDays, showDays))
|
| | | break
|
| | | serverIDList = recData.GetUserDataByKey(Def_UserDataKey_ServerIDList)
|
| | | serverIDList = recData.GetUserDataByKey(ChConfig.Def_RecDataKey_ServerIDList)
|
| | | if playerServerID:
|
| | | if serverIDList == None:
|
| | | GameWorld.DebugLog(" xgPlayerID=%s,serverIDList is None" % (xgPlayerID))
|
| | |
| | | recDataList = gameRecMgr.GetGameRecDataList(ShareDefine.Def_GameRecType_Xiangong, xiangongID)
|
| | |
|
| | | for recData in recDataList[::-1]:
|
| | | serverIDList = recData.GetUserDataByKey(Def_UserDataKey_ServerIDList)
|
| | | playerInfo = recData.GetUserDataByKey(Def_UserDataKey_PlayerInfo)
|
| | | serverIDList = recData.GetUserDataByKey(ChConfig.Def_RecDataKey_ServerIDList)
|
| | | playerInfo = recData.GetUserDataByKey(ChConfig.Def_RecDataKey_PlayerInfo)
|
| | | if not playerInfo or not GameWorld.CheckServerIDInList(serverID, serverIDList):
|
| | | continue
|
| | | playerInfo["AddTime"] = recData.GetTime()
|