|  |  |  | 
|---|
|  |  |  | import GameWorld | 
|---|
|  |  |  | import Commands | 
|---|
|  |  |  | import IPY_GameServer | 
|---|
|  |  |  | import MergeChildMsg | 
|---|
|  |  |  | import CrossRealmMsg | 
|---|
|  |  |  | import PyGameData | 
|---|
|  |  |  | import traceback | 
|---|
|  |  |  | import GMCommon | 
|---|
|  |  |  | import ShareDefine | 
|---|
|  |  |  | import os | 
|---|
|  |  |  | #--------------------------------------------------------------------- | 
|---|
|  |  |  | g_broadCastList = [] | 
|---|
|  |  |  | 
|---|
|  |  |  | GameWorld.Log("###使用GM命令 = %s错误,玩家不是GM"%(callFunName), curPlayer.GetPlayerID()) | 
|---|
|  |  |  | return | 
|---|
|  |  |  |  | 
|---|
|  |  |  | #非跨服服务器下使用跨服专属GM命令,则发送到跨服 | 
|---|
|  |  |  | if not GameWorld.IsMergeServer(): | 
|---|
|  |  |  | #非跨服服务器下使用跨服GM命令,则发送到跨服 | 
|---|
|  |  |  | if not GameWorld.IsCrossServer(): | 
|---|
|  |  |  | callFunc = GameWorld.GetExecFunc(Commands, "%s.%s"%(callFunName, "OnGetMergeParam")) | 
|---|
|  |  |  | if callFunc != None: | 
|---|
|  |  |  | extendParamList = callFunc(curPlayer) | 
|---|
|  |  |  | alist.extend(extendParamList) | 
|---|
|  |  |  | MergeChildMsg.SendMergerChildToCenterStringData(ChConfig.Def_SendGMCMD, alist) | 
|---|
|  |  |  | return | 
|---|
|  |  |  |  | 
|---|
|  |  |  | CrossRealmMsg.SendMsgToCrossServer(ShareDefine.ClientServerMsg_GMCMD, alist) | 
|---|
|  |  |  |  | 
|---|
|  |  |  | callFunc = GameWorld.GetExecFunc(Commands, "%s.%s"%(callFunName, "OnExec")) | 
|---|
|  |  |  | if callFunc == None: | 
|---|
|  |  |  | #没有此命令 | 
|---|
|  |  |  | 
|---|
|  |  |  | return cmdDict | 
|---|
|  |  |  |  | 
|---|
|  |  |  | ## 收到子服务器发送的GM命令 | 
|---|
|  |  |  | def ClientServer_SendGMCMD(cmdMsgList, tick): | 
|---|
|  |  |  | def ClientServerMsg_GMCMD(cmdMsgList, tick): | 
|---|
|  |  |  | if len(cmdMsgList) == 0: | 
|---|
|  |  |  | return | 
|---|
|  |  |  |  | 
|---|