求教,MUSH通配符的问题
本帖最后由 icebug 于 2014-8-25 11:54 AM 编辑各位大神好,最近在学习MUSH。
详细看了大大们关于MUSH的初级教程。
是这样我想针对游戏内的chat频道的问答做一个回答问题的机器人。但是通配符的问题灰常纠结,希望有大大能看到并解答。
举例:
需要处理的内容如下:
【闲聊】考 官 (kao guan):好,一加一等于几?:A、三 B、二C、一D、四
(注意这里面的答案位置是随机变化的)
在ZMUD里面我们是这么解决的:
#TRIGGER {^??【闲聊】考 官~(kao guan~):好,一加一等于几?:*%s(%x)、二}{#wa1000;huida %1}
用*来通配前面的字符,请问如果在MUSH里面怎么写呢?
我只知道.是通配任意非/n单个字符,那问题里面有的是数字,有的是汉字和数字的混编,还有像%这样的特殊字符,在MUSH里面怎么写?
北大侠客行MUD,中国最好的MUD 本帖最后由 icebug 于 2014-8-25 12:04 PM 编辑
留个小板凳,下面继续提问,不在重新开帖子了。其实我本来是想做一个lua的
但是将答案全部丢进去,到时候修改时候更方便
但是发现正确的回答里面有好几个都是:是 答案
所以否定了,还是用最原始的方法吧。 回复 2# yhzzyahoo
那下一步我就是直接:
DoAfter(1,"answer %1") 回复 5# yhzzyahoo
看了下帖子时间,大神居然3点多还没休息
请教如何才能不出错呢? DoAfterSpecial(1,answer "%1",10)
这样可以么? 本帖最后由 icebug 于 2014-8-26 02:52 PM 编辑
回复 9# huacuoh
请问大大该如何写这个呢?
原本的思路是学做成一个模块,回答问题的模块
但是发现需要定位三个部分
1、定位问题 :[考官]题目
2、定位答案 :A、 B、 C、 D、
3、定位答案序号:取正确值,返回小写输出。
还需要处理前面的机器暂停。
因为我也是初学阶段
请大大指点!~ 本帖最后由 icebug 于 2014-8-26 03:05 PM 编辑
回复 7# yhzzyahoo
还有请问我可以在MCL文件中将这些问题一次罗列出来并用命令直接发送么?
例如:
>
<send>DoAfter(1,"answer“..%1")</send>
</trigger>
<trigger
enabled="y"
group="dati"
match="^\s*【闲聊】考官(kao guan):好,纯的铜器是什么颜色:/s+(/w+)、紫色"
^\s*【闲聊】考 官(kao guan):好,一加一等于几?:*%s(%x)、二
.
.
.
send_to="12"
sequence="100" 回复 12# huacuoh
能否举个例子?
起个头?
实在很抓狂,究竟咋弄嘞。 回复 14# yhzzyahoo
明白
我在想有什么代码和我这种情况类似。提点一下
我再继续向下翻帖子 回复 16# huacuoh
谢谢。
大致思路比较清晰了,我在研究一下,然后对比一下红豆机器
还是写一个比较准确的东西出来
页:
[1]
2