| | |
| | | if len(inputList) != 2:
|
| | | return
|
| | | gmLV = GameWorld.ToIntDef(inputList[1])
|
| | | playerPF = GameWorld.GetPlatform()
|
| | | playerPF = GameWorld.GetAppID()
|
| | | # curIP = curPlayer.GetIP()
|
| | | # if (curIP.find('10.30.') == 0 or curIP.find('192.168.') == 0) and playerPF == "173on_lan":
|
| | | #测试修改
|
| | |
| | | callFunc = GameWorld.GetExecFunc(Commands, "%s.%s"%(callFunName, "GetGMServerIDList"))
|
| | | if callFunc != None:
|
| | | gmServerIDList = callFunc(curPlayer)
|
| | | pack = ChServerToServerPyPack.tagSSGMCMD()
|
| | | pack.FromServerID = GameWorld.GetGameWorld().GetServerID()
|
| | | pack.ServerType = GameWorld.GetServerType()
|
| | | pack.PlayerID = curPlayer.GetPlayerID()
|
| | | pack.CMDStr = str(inputList)
|
| | | pack.CMDLen = len(pack.CMDStr)
|
| | | NetPackCommon.SendCrossServerToServerPack(pack, gmServerIDList, dirType=ShareDefine.dirType_Cross)
|
| | | if gmServerIDList:
|
| | | pack = ChServerToServerPyPack.tagSSGMCMD()
|
| | | pack.FromServerID = GameWorld.GetGameWorld().GetServerID()
|
| | | pack.ServerType = GameWorld.GetServerType()
|
| | | pack.PlayerID = curPlayer.GetPlayerID()
|
| | | pack.CMDStr = str(inputList)
|
| | | pack.CMDLen = len(pack.CMDStr)
|
| | | NetPackCommon.SendCrossServerToServerPack(pack, gmServerIDList, dirType=ShareDefine.dirType_Cross)
|
| | | return
|
| | |
|
| | | # GameObj 的 Get、Set函数
|
| | |
| | | GameWorld.Log("OnSSGMCMD cmdStr=%s,fromServerID=%s" % (cmdStr, fromServerID), playerID)
|
| | | crossPlayer = CrossPlayer.GetCrossPlayerMgr().FindCrossPlayer(playerID)
|
| | | if not crossPlayer:
|
| | | if GameWorld.IsCrossCenter():
|
| | | GameWorld.ErrLog("跨服中心找不到crossPlayer!直接注册", playerID)
|
| | | crossPlayer = CrossPlayer.GetCrossPlayerMgr().RegistPlayer(playerID) # 跨服中心不存在该玩家,直接注册
|
| | | crossPlayer.SetMainServerID(fromServerID)
|
| | | if not crossPlayer:
|
| | | GameWorld.ErrLog("本服找不到crossPlayer!", playerID)
|
| | | return
|
| | | cmdList = eval(cmdStr)
|
| | | callFunName = cmdList[0]
|
| | | callName = "%s.%s" % (callFunName, "OnExec")
|
| | | callName = "%s.%s" % (callFunName, "OnExecCross")
|
| | | callFunc = GameWorld.GetExecFunc(Commands, callName)
|
| | | if not callFunc:
|
| | | GameWorld.DebugAnswer(crossPlayer, "找不到该跨服命令! %s" % callName)
|