selfmud 发表于 2011-9-13 03:05:05

【mush】我的触发器总是莫名其妙的自动关闭有可能是怎么回事呢

我的触发器总是莫名其妙的自动关闭有可能是怎么回事呢?我选择了“启用” “保持有效性” “正则表达式”
我因为在实验这写脚本
然后就老更新脚本,有时还退出游戏再进来实验。
然后经常触发就不触发了,然后我打开触发器一看,发现触发器是关闭的
很多很多都是关闭的,然后我又一个一个打开。
整了半天,然后下次又不触发了,我又打开触发器看这句咋回事,结果发现触发器又是关闭的

请教有可能是什么原因造成的?

北大侠客行MUD,中国最好的MUD

fantom 发表于 2011-9-13 09:18:59

找找脚本有没有enabletrigger语句

pizzagoo 发表于 2011-9-13 09:31:27

原帖由 istillsun 于 2011-9-13 09:12 AM 发表 http://pkuxkx.net/forum/images/common/back.gif
littleknife的那个模块化机器人就有这么个“特点”,应该是为了各个模块之间不相互干扰吧,sigh
我是在脚本里加一句打开的代码,不知道有没有其他方法
哦,模块化机器人在哪里?

pizzagoo 发表于 2011-9-13 09:39:53

原帖由 istillsun 于 2011-9-13 09:34 AM 发表 http://pkuxkx.net/forum/images/common/back.gif
http://www.pkuxkx.net/forum/thread-22571-1-1.html
别跟我说你没看到hzb
不好意思,我没注意,跟我的机器人想法类似,只是我的没有模块化。
这可是个大工程啊,子襄mm加油吧,作为你的毕业设计。

selfmud 发表于 2011-9-13 15:06:46

原帖由 istillsun 于 2011-9-13 09:12 AM 发表 http://pkuxkx.net/forum/images/common/back.gif
littleknife的那个模块化机器人就有这么个“特点”,应该是为了各个模块之间不相互干扰吧,sigh
我是在脚本里加一句打开的代码,不知道有没有其他方法

打开触发的代码是不是夹在主lua里面,直接enable,我给我的触发器加了很多类,比如newbie_yx,newbiw_bm,newbie_lw等等很多。需要挨个打开需要太多的打开命令了

有没有办法类似zmud721里面那样,class下面还有class
比如我做个newbie组,然后下面放很多类似于newbie_yx,new_bm等组,然后这些组下面再放很多触发

mml 发表于 2011-9-13 15:08:50

用别人写的机器人总不如自己的,自己写的出错也知道从哪里找起

selfmud 发表于 2011-9-13 15:11:27

关键是我觉得那个模块化很好啊
我直接来了个“拿来主义”
等我水平高了可以自己写了再写更好的
现在不是不想写好的,书不会写,所以只好用别人的了

selfmud 发表于 2011-9-13 15:36:01

弱弱的问一句table是啥。。。
我有个名称为class.lua的文件 一直没看懂,不知道是不是传说中的table
local _class = {}

function class(super)
    local class_type = {}
    class_type.ctor = false
    class_type.super = super
    class_type.new =
      function(...)
            local obj = {}
            do
                local create
                create =
                  function(c, ...)
                        if c.super then
                            create(c.super, ...)
                        end
                        if c.ctor then
                            c.ctor(obj, ...)
                        end
                  end
                create(class_type, ...)
            end
            setmetatable(obj, { __index = _class })
            return obj
      end
    local vtbl = {}
    _class = vtbl

    setmetatable(class_type, { __newindex =
      function(t, k, v)
            vtbl = v
      end
    })

    if super then
      setmetatable(vtbl, { __index =
            function(t,k)
                local ret = _class
                vtbl = ret
                return ret
            end
      })
    end

    return class_type
end

littleknife 发表于 2011-9-15 09:49:19

关闭的原因是在system.mod中自动设置的。凡是重新载入Lua脚本,就把除了system类的触发关掉。以免冲突。
initri()函数。

至于楼上代码疑问,建议楼主阅读lua教程。

selfmud 发表于 2011-9-15 20:38:51

哦哦。。。。。
页: [1]
查看完整版本: 【mush】我的触发器总是莫名其妙的自动关闭有可能是怎么回事呢