#!/usr/bin/python # -*- coding: GBK -*- #------------------------------------------------------------------------------- # ##@package GM.Commands.EnterFB # # @todo:½øÈ븱±¾ # @author hxp # @date 2017-10-25 # @version 1.0 # # ÏêϸÃèÊö: ½øÈ븱±¾ # #------------------------------------------------------------------------------- #"""Version = 2017-10-25 18:00""" #------------------------------------------------------------------------------- import GameWorld import PlayerControl import FBCommon import ChConfig import PlayerFB ## GMÃüÁîÖ´ÐÐÈë¿Ú # @param curPlayer µ±Ç°Íæ¼Ò # @param paramList ²ÎÊýÁбí [] # @return None # @remarks º¯ÊýÏêϸ˵Ã÷. def OnExec(curPlayer, paramList): if not paramList or len(paramList) == 3: GameWorld.DebugAnswer(curPlayer, "EnterFB mapID ¿ÉÑ¡(lineID posX posY)") return mapID = paramList[0] lineID = paramList[1] if len(paramList) > 1 else 0 posX = paramList[2] if len(paramList) > 2 else 0 posY = paramList[3] if len(paramList) > 3 else 0 if FBCommon.GetFBPDictValue(curPlayer, ChConfig.Def_PDict_LastEnterFBTick % mapID): FBCommon.SetFBPDictValue(curPlayer, ChConfig.Def_PDict_LastEnterFBTick % mapID, 0) tick = GameWorld.GetGameWorld().GetTick() if mapID in FBCommon.GetClientCustomScene(): PlayerFB.DoEnterCustomScene(curPlayer, mapID, lineID, tick) elif mapID in ChConfig.Def_CrossMapIDList: PlayerControl.PlayerEnterCrossServer(curPlayer, mapID, lineID) else: PlayerControl.PlayerEnterFB(curPlayer, mapID, lineID, posX, posY) return