hxp
12 小时以前 dc0b92c1e2fe9f3d24c183b325dad54d088735c1
ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GM/GMShell.py
@@ -94,6 +94,7 @@
            
        #验证权限失败
        elif not CheckGMLV(curPlayer , callFunName):
            GameWorld.DebugAnswer(curPlayer, 'GM等级不足!')
            return
            
        callFunc = GameWorld.GetExecFunc(Commands, "%s.%s"%(callFunName, "OnExec"))
@@ -108,10 +109,8 @@
                    continue
                inputList[i] = value
                
            isSendGameServer = callFunc(curPlayer, inputList)
            callFunc(curPlayer, inputList)
            DR_UseGMCMD(curPlayer, inputStr)
            if isSendGameServer:
                curPlayer.GameServer_GMCmd(inputStr)
            return
        
        # GameObj 的 Get、Set函数
@@ -186,7 +185,9 @@
            DR_UseGMCMD(curPlayer, inputStr)
            return
        
        curPlayer.GameServer_GMCmd(inputStr)
        #没有此命令
        GameWorld.Log("###使用GM命令 = %s, 没有该命令!" % callFunName, curPlayer.GetPlayerID())
        GameWorld.DebugAnswer(curPlayer, 'no cmd !!!')
    except BaseException:
        GameWorld.DebugAnswer(curPlayer, "执行GM命令错误, 请查看所在地图日志!")
        errorMsg = str(traceback.format_exc())
@@ -223,30 +224,6 @@
    if curPlayer_GMLV == 90:
        #内部测试人员,不限制
        return True
    GMLVPowerDict = ReadChConfig.GetEvalChConfig("GMLVPower")
    if curPlayer_GMLV in GMLVPowerDict:
        powerList = GMLVPowerDict[curPlayer_GMLV]
        if not powerList or callFunName in powerList:
            return True
    #验证权限
    if callFunName in ChConfig.Def_GMPower_Disc:
        gmPowerList = ChConfig.Def_GMPower_Disc[callFunName]
        if curPlayer_GMLV not in gmPowerList:
            #GM等级异常
            GameWorld.Log("###使用GM命令 = %s,GM等级 = %s异常"%(callFunName , curPlayer_GMLV) , curPlayer.GetPlayerID())
            return
        if not gmPowerList[curPlayer_GMLV]:
            GameWorld.Log("###使用GM命令 = %s,权限 = %s不足"%(callFunName , curPlayer_GMLV) , curPlayer.GetPlayerID())
            return
    #内部测试用GM命令
    else:
        GameWorld.Log("###非内部人员, 使用调试GM命令 = %s,权限 = %s不足"%(callFunName , curPlayer_GMLV) , curPlayer.GetPlayerID())
        return
    
    return True