#!/usr/bin/python # -*- coding: GBK -*- #------------------------------------------------------------------------------- # ##@package GameWorldSkyTower # # @todo:ÌìÐÇËþ # @author hxp # @date 2020Äê03ÔÂ02ÈÕ # @version 1.0 # # ÏêϸÃèÊö: ÌìÐÇËþ # #------------------------------------------------------------------------------- #"""Version = 2020Äê03ÔÂ02ÈÕ 20:00""" #------------------------------------------------------------------------------- import GameWorld import ShareDefine import PlayerUniversalGameRec import time def OnPlayerLogin(curPlayer): PlayerUniversalGameRec.SendUniversalGameRecInfo(curPlayer, ShareDefine.Def_UniversalGameRecType_SkyTowerPassPlayer) return def __GetPassPlayerRecDataByFloorID(floorID): ## »ñÈ¡¹ý¹Ø²ã¼Ç¼Êý¾Ý recTypeListData = GameWorld.GetUniversalRecMgr().GetTypeList(ShareDefine.Def_UniversalGameRecType_SkyTowerPassPlayer) recData = None for index in xrange(recTypeListData.Count()): universalRecData = recTypeListData.At(index) if universalRecData.GetValue1() == floorID: recData = universalRecData break return recData def MapServer_SkyTowerInfo(msgList): ## ÌìÐÇËþ¹ý¹Ø msgType, msgData = msgList # ¹ý¹Ø if msgType == "ServerChallengePass": __OnServerChallengePass(msgData) return # Áì½± if msgType == "ServerChallengeReward": floorID = msgData[0] recData = __GetPassPlayerRecDataByFloorID(floorID) isPass = 1 if recData else 0 return msgList + [isPass] return def __OnServerChallengePass(msgData): ## È«·þÌôÕ½²ã¹ý¹Ø floorID, playerID, playerName, job, playerLV, realmLV = msgData recData = __GetPassPlayerRecDataByFloorID(floorID) if recData: GameWorld.DebugLog("¸ÃÌìÐÇËþÒѾ­ÓÐÈËÏȹý¹ØÁË£¬²»´¦Àí!floorID=%s" % floorID, playerID) return GameWorld.DebugLog("ÐÂÔöÌìÐÇËþÈ«·þÌôÕ½²ã¹ý¹Ø¼Ç¼!floorID=%s" % floorID, playerID) recTypeListData = GameWorld.GetUniversalRecMgr().GetTypeList(ShareDefine.Def_UniversalGameRecType_SkyTowerPassPlayer) recData = recTypeListData.AddRec() recData.SetTime(int(time.time())) recData.SetValue1(floorID) recData.SetValue2(playerID) recData.SetValue3(playerLV) recData.SetValue4(job) recData.SetValue5(realmLV) recData.SetStrValue1(playerName) # ¹ã²¥µ¥ÌõÊý¾Ý PlayerUniversalGameRec.SendUniversalGameRecSingle(None, recData) return