|
本帖最后由 feixiong 于 2012-3-1 07:37 PM 编辑
如果大家看hellua或者胡小子两位的脚本会发现一个疑问:
他们的MUSH 触发器里的文字,只是对应一个脚本就OK了,这和ZMUD天壤之别
zmud的脚本里是:
#TRIGGER {您上次是在*连线进入,请及时核对。} {#mess 这是宇宙流独立开发的路径机器人,请学会感恩我们宇宙流!} {yellboat} 519
我就一直很迷惑,他们究竟是如何利用mush脚本达到ZMUD里的功能的j.
今天在六师兄 水鬼 的知道下我终于明白了,举个lua例子吧:
trigger: 您上次是在*连线进入,请及时核对。 对应脚本:lianxian.busy
在脚本内的具体内容是:
lianxian.busy=function(n,l,w)
Walk=1
if string.find(l,"流氓") then
print("流氓出现了:")
lianxian.kill()
end
end
这里固定采取 xxxx=function(n,l,w)的形式来实现ZMUD里的触发,N 代表名字,应该是ZMUD触发器里的类型,l就代表了 您上次是在*连线进入,请及时核对。 这个我要匹配的文本,W呢代表了文本里我们设置的变量。
我举得例子只是在文本里查找 流氓 这个词,没用到变量,所以呢就string.find(l ,“流氓”) 了
哈哈哈,开心吧,只要你跟着我的笔记看,我相信掌握起来会比我快很多
看了我通俗易懂的论述,再来看胡小子专业的论述:是不是很容易理解了哈哈
help----trigger选项:
sub MyTrigger (name, line, wildcards)
world.Note "Trigger " & name & " matched."
world.Note "Wildcard 1 was" & wildcards (1)
end sub
北大侠客行MUD,中国最好的MUD |
|