我们在写代码的过程中时常要调试,但线上的服务器打包部署运行很费时,或者需要在线上查看数据,可以直接在服务器上输入需要执行的代码
判定是否有gm权限,前缀runstr执行代码
function GM:RunCMD(str)
if self.player.gm_level ~= 100 then
lua_app.log_error("GM:RunCMD: not GM", self.player.cache.account, self.player.cache.name, self.player.ip, str)
return
end
if head7 == "runstr " then
local strcode = string.sub(str, 8)
self:runstr(strcode)
return
end
end
--运行字符串代码
function GM:runstr(str)
--local f = loadstring(str) --lua5.3弃用了
SetGmPlayer(self.player)
local f = load(str)
if f then
pcall(f)
end
SetGmPlayer(nil)
end
输入runstr local player = WHO() print(player.cache.level)
function WHO(dbid)
if not dbid then
return GetGmPlayer()
end
return server.playerCenter:GetPlayerByDBID(dbid)
end
who()默认获取当前用户信息,打印出玩家等级为50
这个方法更为好用,可以用来测试,以后有异常情况也可以重新调用
下面是帮派职务每天自动更新,因为运营需要测试,我写了个命令直接刷新。
调用此命令,直接刷新帮派职务,玩家贡献度高获得帮主职位
此命令本地方法,所以需要先取的服务器和玩家类
function GetServer()
return server
end
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。