#!/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
|
|