找回密码
 注册
搜索
查看: 613|回复: 7

请教大神,护具错误

[复制链接]
门派:桃花岛
发表于 2019-6-8 15:12:49 | 显示全部楼层 |阅读模式
怎么错误了呢,如何求改呀,大神
<!-- Produced by MUSHclient v 4.84 - www.mushclient.com -->


你眼中一亮看到魏湘云的身边掉落一件吉祥甲胄。
Run-time error
World: tj.sjever.net
Function/Sub: fqyyArmorGet called by trigger
Reason: 正在处理触发器 "hp24"
C:\MUSHS\lua\armor.lua:129: attempt to concatenate field '?' (a nil value)
stack traceback:
        C:\MUSHS\lua\armor.lua:129: in function <C:\MUSHS\lua\armor.lua:128>


门派:大轮寺
发表于 2019-6-10 17:03:17 | 显示全部楼层
对了啊,我的就是这样子,用公版的机器人全新的,就是不捡护具!
门派:天龙寺
发表于 2019-6-10 18:45:55 | 显示全部楼层
hp24的内容create_trigger_t('hp24','^(> )*你眼中一亮看到\\D*的身边掉落一件(\\D*)。','','fqyyArmorGet')
下面是armor.lua的内容
function fqyyArmorGet()
        if job.name~=nil then
                messageShow(job.name..'中获得装备。','#DC143C','#EEEEEE')
        else
                messageShow('莫名其妙获得装备。','#DC143C','#EEEEEE')
        end
        create_trigger_t('fqyyWeaponLog','^(> )*它的功能有:【(\\N*)】$','','checkItemByfqyyA')
    SetTriggerOption("fqyyWeaponLog","group","fqyylog")
        create_timer_s('fqyyArmorGetT',0.2,'fqyyArmorGetT')
end
function fqyyArmorGetT()
        exe('get armor')
end
看内容应该是只执行了捡armor,应该是这里要加上
function fqyyArmorGetT()
        exe('get armor;get boot')------还有披风的id是什么,我忘记了,自己加上
end
门派:天龙寺
发表于 2019-6-10 18:47:30 | 显示全部楼层
还有hp25也要更改一下:
create_trigger_t('hp25','^(> )*你捡起一(件|副|双|袭|顶|个|条|对)(\\D*)(手套|靴|甲胄|腰带|披风|彩衣|头盔)。','','fqyyArmorCheck')
门派:大轮寺
发表于 2019-6-10 19:57:34 | 显示全部楼层
function fqyyArmorGet(n,l,w)
        print(w[2].."|"..w[3].."|"..w[4])
        local tmpw4=w[3] or ""
       
        if job.name~=nil then
                messageShow(job.name..'中获得'..tmpw4..w[4]..'。','#DC143C','#EEEEEE')
        else
                messageShow('莫名其妙获得'..tmpw4..w[4]..'。','#DC143C','#EEEEEE')
        end
        fqyytmp.tmpArmorClass=w[4]
        create_trigger_t('fqyyWeaponLog','^(> )*它的功能有:【(\\N*)】$','','checkItemByfqyyA')
    create_trigger_t('fqyyWeaponLog2','^(> )*它的功能有:【(\\N*)%】$','','checkItemByfqyyA')
    SetTriggerOption("fqyyWeaponLog","group","fqyylog")
        SetTriggerOption("fqyyWeaponLog2","group","fqyylog")
        fqyyArmorGetT()
        create_timer_s('fqyyArmorGetT',0.2,'fqyyArmorGetT')
end
function fqyyArmorGetT()
        exe('get '..fqyytmp.armorClass[fqyytmp.tmpArmorClass])
end
门派:大轮寺
发表于 2019-6-10 19:58:24 | 显示全部楼层
公版的是这样的,不知道什么问题
门派:天龙寺
发表于 2019-6-10 20:06:15 | 显示全部楼层
我也是公版没改过, exe('get '..fqyytmp.armorClass[fqyytmp.tmpArmorClass])这一句不一样,我现在改为
exe('get armor;get boot;get mantle;get belt;get glove;get cap;get coat')

评分

1

查看全部评分

门派:大轮寺
发表于 2019-6-10 21:34:32 | 显示全部楼层
这个还可以优化一下,命令太多了会溢出,不知道这句话为什么在有的版本没错,7月2日的版本就错了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|书剑永恒MUD ( 闽ICP备14012032号|闽公网安备 35050202000162号 )

GMT+8, 2025-6-8 09:25 , Processed in 0.040191 second(s), 27 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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