北大侠客行MUD论坛

 找回密码
 注册
搜索
热搜: 新手 wiki 升级
楼主: iceoo

状态、技能界面插件(MUSH)

[复制链接]
发表于 2013-8-19 10:49:19 | 显示全部楼层
找不到 Trigger 函数 "skill_skill" 或者之前发生过错误。
提示这个是为什么呢?
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2013-8-19 15:58:37 | 显示全部楼层
发个详细的吧
Run-time error
Plugin: pkuxkx_status (called from world: pkuxkx_2011)
Function/Sub: skill_skill called by trigger
Reason: 正在处理触发器 "trigger_skill_skill"
[string "Plugin"]:1329: bad argument #1 to 'insert' (table expected, got nil)
stack traceback:
        [C]: in function 'insert'
        [string "Plugin"]:1329: in function <[string "Plugin"]:1328>
脚本错误处的上下文:
1325 : -- ------------------------------------
1326 : -- 技能
1327 : -- ------------------------------------
1328 : function skill_skill(n,l,w)
1329*:  table.insert(skilltypeobj.list, w[2])
1330 :  skilltemp[w[2]] = {name = "", lv = 0, exp = 0, expadd = 0, maxexp = 0,}
1331 :  local skillobj = skilltemp[w[2]]
1332 :  skillobj.name = w[1]
1333 :  skillobj.lv  = tonumber(w[3])
└─────────────────────────────────┘
┌    五项基本功夫    ───────────────────────┐
找不到 Trigger 函数 "skill_skill" 或者之前发生过错误。
找不到 Trigger 函数 "skill_skill" 或者之前发生过错误。
找不到 Trigger 函数 "skill_skill" 或者之前发生过错误。
找不到 Trigger 函数 "skill_skill" 或者之前发生过错误。
找不到 Trigger 函数 "skill_skill" 或者之前发生过错误。
└─────────────────────────────────
求解决啊
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2013-8-19 16:00:25 | 显示全部楼层
我和群里的问了下,然后自己看了下,应该是

function skill_skill(n,l,w)
        table.insert(skilltypeobj.list, w[2])
        skilltemp[w[2]] = {name = "", lv = 0, exp = 0, expadd = 0, maxexp = 0,}
        local skillobj = skilltemp[w[2]]
        skillobj.name        = w[1]
        skillobj.lv                = tonumber(w[3])
        skillobj.exp        = tonumber(w[4])
        skillobj.maxexp        = (skillobj.lv+1)^2
       
        if skill[w[2]] ~= nil then
                if skillobj.lv ~= skill[w[2]].lv then
                        skillobj.expadd = (skill[w[2]].lv+1)^2 + skillobj.exp - skill[w[2]].exp
                elseif skillobj.exp ~= skill[w[2]].exp then
                        skillobj.expadd = skillobj.exp - skill[w[2]].exp
                end
        end
end
这个句段可能有问题,但是不会解决,求大神帮忙
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2013-8-20 05:55:54 | 显示全部楼层
又问了下看然后看了下,貌似上面的是正确的,然后因为触发不正确所以导致了变量数组里某个值为空了
下面是相应的正则
^│[\\s|□]+(.+)\\s*\\((\\S+)\\)\\s+-\\s*\\S+\\s*(\\d+)\\/\\s*(\\d+).*│$
发现中间应该少了
│  读书写字 (literate)                      - 心领神会  351/      0│
部分的“读书识字”这里的汉字部分的抓取,但是添加之后依然没有解决,添加后为
^│[\\s|□]+(.+)\\s*\\S+\\s*\\((\\S+)\\)\\s+-\\s*\\S+\\s*(\\d+)\\/\\s*(\\d+).*│$
求高手解答
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2013-8-20 06:59:08 | 显示全部楼层
正则去找了个判断工具改好了,但是不提示出错也不抓取技能了,蛋疼,写好的如下
^│[\\s|□]+(.+)\\s+(\\S+)\\s*\\((\\S+)\\)\\s+-\\s*\\S+\\s*(\\d+)\\/\\s*(\\d+).*│$
到底是哪里出问题了呢
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2013-8-20 07:06:55 | 显示全部楼层
现在只有expadd被正确输出,其他都看不到
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2013-8-20 13:49:58 | 显示全部楼层
估计是正则的问题我现在是不出错了但是没有出现skills的窗口hp部分正常
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2013-8-21 12:53:57 | 显示全部楼层
我现在和楼上的一样,求原作者或者在用的前辈指点啊
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2013-8-22 11:34:24 | 显示全部楼层
程序易读性很好,因刚接触mush,问几个小问题:
1、前几天经验、潜能改为万了,需要做些调整;
2、我是天龙号,qifa和chan的busy时间要调整吗?
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2013-8-22 15:40:07 | 显示全部楼层
funtrigger = "^┌\\s+\\S+项(\\S+)\\s+───────────────────────┐$",
        "^└─────────────────────────────────┘",
找到这样两个触发换下我上面的就可了
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|北大侠客行MUD ( 京ICP备16065414号-1 )

GMT+8, 2024-11-28 12:22 PM , Processed in 0.008623 second(s), 13 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表