| #!/usr/bin/python  | 
| # -*- coding: GBK -*-  | 
| #-------------------------------------------------------------------------------  | 
| #  | 
| #-------------------------------------------------------------------------------  | 
| #  | 
| ##@package GM.Commands.SetSkyTower  | 
| #  | 
| # @todo:ÌìÐÇËþ¹ý¹ØÊýÉèÖà  | 
| # @author xdh  | 
| # @date 2019-01-21 16:10  | 
| # @version 1.0  | 
| #  | 
| #  | 
| # ÏêϸÃèÊö: ÌìÐÇËþ¹ý¹ØÊýÉèÖà  | 
| #  | 
| #---------------------------------------------------------------------  | 
| #"""Version = 2019-01-21 16:10"""  | 
| #---------------------------------------------------------------------  | 
|   | 
| import GameLogic_SkyTower  | 
| import IpyGameDataPY  | 
| import GameWorld  | 
| import ChConfig  | 
| import PlayerControl  | 
|   | 
| #---------------------------------------------------------------------  | 
| #È«¾Ö±äÁ¿  | 
| #---------------------------------------------------------------------  | 
|   | 
| #---------------------------------------------------------------------  | 
| ## Â߼ʵÏÖ  | 
| ## GMÃüÁîÖ´ÐÐÈë¿Ú  | 
| #  @param curPlayer  | 
| #  @param cmdList ²ÎÊýÁÐ±í  | 
| #  @return None  | 
| def OnExec(curPlayer, cmdList):  | 
|     if not cmdList:  | 
|         GameWorld.DebugAnswer(curPlayer, "ÉèÖùý¹ØËþ²ã: SetSkyTower 1 ²ã")  | 
|         GameWorld.DebugAnswer(curPlayer, "Ìî³äÈ«·þ¹ý¹Ø: SetSkyTower 2 ²ã  ¹ý¹Ø»úÆ÷ÈËÊý")  | 
|         GameWorld.DebugAnswer(curPlayer, "ÖØÖÃÈ«·þ½±Àø: SetSkyTower 3")  | 
|         GameWorld.DebugAnswer(curPlayer, "ÖØÖÃÈ«·þ¹ý¹Ø: SetSkyTower 4")  | 
|         GameWorld.DebugAnswer(curPlayer, "×¢: ÖØÖÃÈ«·þ¹ý¹ØÐèÖØµÇ")  | 
|         return  | 
|     isSendGameServer = False  | 
|       | 
|     cmdType = cmdList[0]  | 
|     if cmdType == 1:  | 
|         fbLevel = cmdList[1] if len(cmdList) > 1 else 0  | 
|         GameLogic_SkyTower.SetSkyTowerCurfloorID(curPlayer, fbLevel)  | 
|         GameLogic_SkyTower.SyncSkyTowerInfo(curPlayer)  | 
|         GameWorld.DebugAnswer(curPlayer, "ÌìÐÇËþ¹ý¹ØÊýÉèÖàfloor=%s£¡"%fbLevel)  | 
|     elif cmdType == 2:  | 
|         floorID = cmdList[1] if len(cmdList) > 1 else 0  | 
|         #robotCount = cmdList[2] if len(cmdList) > 2 else 1  | 
|         isSendGameServer = True  | 
|         ipyDataServer = IpyGameDataPY.GetIpyGameDataNotLog("SkyTowerServerChallenge", floorID)  | 
|         if not ipyDataServer:  | 
|             GameWorld.DebugAnswer(curPlayer, "²»´æÔÚ¸ÃÈ«·þ½±Àø²ã:%s" % floorID)  | 
|             return  | 
|     elif cmdType == 3:  | 
|         __ClearServerPassFloorReward(curPlayer)  | 
|           | 
|     elif cmdType == 4:  | 
|         isSendGameServer = True  | 
|         __ClearServerPassFloorReward(curPlayer)  | 
|           | 
|     return isSendGameServer  | 
|   | 
| def __ClearServerPassFloorReward(curPlayer):  | 
|     ipyDataMgr = IpyGameDataPY.IPY_Data()  | 
|     for index in range(ipyDataMgr.GetSkyTowerServerChallengeCount()):  | 
|         ipyDataServer = ipyDataMgr.GetSkyTowerServerChallengeByIndex(index)  | 
|         floorID = ipyDataServer.GetFloorID()  | 
|         PlayerControl.NomalDictSetProperty(curPlayer, ChConfig.Def_Player_Dict_SkyTowerServerRecord % floorID, 0)  | 
|     GameLogic_SkyTower.SyncSkyTowerInfo(curPlayer, None, True)  | 
|     return  | 
|   |