| | |
| | | import operator
|
| | | import random
|
| | | import time
|
| | | import json
|
| | |
|
| | | class CrossPKPlayer():
|
| | | ## 跨服PK玩家类
|
| | |
| | | seasonStatePack.SeasonID = gameWorld.GetDictByKey(ShareDefine.Def_Notify_WorldKey_CrossPKSeasonID)
|
| | | seasonStatePack.SeasonState = gameWorld.GetDictByKey(ShareDefine.Def_Notify_WorldKey_CrossPKSeasonState)
|
| | | seasonStatePack.MatchState = gameWorld.GetDictByKey(ShareDefine.Def_Notify_WorldKey_CrossDailyActionState % ShareDefine.DailyActionID_CrossReamPK)
|
| | | seasonStatePack.CrossZoneName = GameWorld.GetCrossZoneName()
|
| | | seasonStatePack.CrossZoneNameLen = len(seasonStatePack.CrossZoneName)
|
| | | NetPackCommon.SendFakePack(curPlayer, seasonStatePack)
|
| | |
|
| | | return
|
| | |
| | | GameWorld.Log(" zoneID=%s,seasonID=%s,seasonState=%s,matchState=%s" % (zoneID, seasonID, seasonState, matchState))
|
| | | if not zoneID:
|
| | | return
|
| | | |
| | | if not seasonID:
|
| | | dbSeasonID = PlayerDBGSEvent.GetDBGSTrig_ByKey(ShareDefine.Def_Notify_WorldKey_CrossPKSeasonID)
|
| | | if dbSeasonID:
|
| | | GameWorld.ErrLog(" 已经有分配赛季ID的暂定不能被置为0! dbSeasonID=%s" % dbSeasonID)
|
| | | return
|
| | | |
| | | gameWorld = GameWorld.GetGameWorld()
|
| | | curSeasonState = gameWorld.GetDictByKey(ShareDefine.Def_Notify_WorldKey_CrossPKSeasonState)
|
| | |
|
| | |
| | | seasonStatePack.SeasonID = seasonID
|
| | | seasonStatePack.SeasonState = seasonState
|
| | | seasonStatePack.MatchState = matchState
|
| | | seasonStatePack.CrossZoneName = GameWorld.GetCrossZoneName()
|
| | | seasonStatePack.CrossZoneNameLen = len(seasonStatePack.CrossZoneName)
|
| | | playerManager = GameWorld.GetPlayerManager()
|
| | | for i in xrange(playerManager.GetPlayerCount()):
|
| | | curPlayer = playerManager.GetPlayerByIndex(i)
|
| | |
| | | overInfoData.OverType = overType
|
| | | overInfoData.PlayerID = playerID
|
| | | overInfoData.WinnerID = winnerID
|
| | | overInfoData.RoundWinnerInfo = str(roundWinnerIDList)
|
| | | overInfoData.RoundWinnerInfo = json.dumps(roundWinnerIDList, ensure_ascii=False)
|
| | | overInfoData.RoundWinnerLen = len(overInfoData.RoundWinnerInfo)
|
| | | overInfoData.PKScore = pkScore
|
| | | overInfoData.DanLV = danLV
|
| | |
| | | winnerID = overInfoData.WinnerID
|
| | | roundWinnerIDList = []
|
| | | try:
|
| | | roundWinnerIDList = eval(overInfoData.RoundWinnerInfo)
|
| | | roundWinnerIDList = json.loads(overInfoData.RoundWinnerInfo)
|
| | | except:
|
| | | GameWorld.ErrLog("__OnLoginNotifyPKOverInfo roundWinnerIDList eval error! RoundWinnerInfo=%s" % overInfoData.RoundWinnerInfo, playerID)
|
| | | pkScore = overInfoData.PKScore
|