作者hmml (hmml)
看板mud_sanc
标题[心得] Zmud 撷取讯息至新视窗试作,参考用!
时间Mon Oct 13 10:28:23 2008
以下写法,是以全部讯息为目标,再设定条件筛选过滤的写法,
但其中仍有若干缺点,如漏抓讯息,多抓不必要的讯息,条件筛选无
法成功等问题。
感谢wser提供意见!
内容如下:
trigger 1:
pattern:(%1)
commands:
#var hide 1
#if (%begins(%1,封神榜频道-)) {#var hide 1}
#if (%begins(%1,【)) {#var hide 1}
#if (%begins(%1,> 【)) {#var hide 1}
#if (%begins(%1,【 牧师 】)) {#var hide 2}
#if (%begins(%1,【新版鬼楼正式开放】)) {#var hide 2}
#if (%begins(%1,【 国 家 名 】)) {#var hide 2}
#if (%begins(%1,【 等级 】)) {#var hide 2}
#if (%begins(%1,你的技能)) {#var hide 5} (不会执行,原因不明)
#if (%begins(%1,你技能中)) {#var hide 5}
#if (%begins(%1,〔队伍频道)) {#var hide 1}
#if (%begins(%1,$友克鑫拍卖会$)) {#var hide 1}
#if (%begins(%1,你大喝: 使用『偷窥』)) {#var hide 3}
#if (%begins(%1,你大喝: 使用『解析』)) {#var hide 3}
#if (%begins(%1,* 没有显示)) {#var hide 4}
#if (%begins(%1,总评: )) {#var hide 4}
#case @hide {#cap chat} {#noop} {#c+ chat} {#c- chat} {#cap skill}
trigger 2:
pattern:(%1):
commands:
#var hide 2
#if (%ends(%1,大呼)) {#var hide 1}
#if (%ends(%1,的告诉你)) {#var hide 1}
#if (%ends(%1,说道)) {#var hide 1}
#if (%ends(%1,织依说道)) {#var hide 2}
#case @hide {#cap chat} {#noop} {#cap skill}
%begins(s1,s2):
当字串s1的开头为s2,则值为真(true)。以 %begins(%1,【) 为例:
我将pattern的%1放入s1的位置,【放在s2,大意是说:
当%1的开头为【时,那就符合本函数的要求。
%ends(s1,s2):
当字串s1的结尾是s2,其值为真(true)。功用和%begins(s1,s2)相似,
只是判断的位置是结尾。
#noop:不执行任何工作。
#case index command1 [commandn]
依index的结果(只能是数字)来决定执行什麽指令(command1~commandn)。即:
#case index {no.1 command} {no.2 command} {no.3 coomand}....{no.n command}
类似选择题的指令,当index为1时,会执行{no.1 command};当index为2,则执行
{no.2 command}依此类推。如果index的数字大过所准备的指令数目,会从头算,
如列了三个指令项,但index为4,则会执行{no.1 command}。
优点:让triggers数量减少,管理容易。
有效避免焚华策和二天一流洗画面。(因为【不在最前面)
扩充性高,可以再增加筛选内容。
缺点:开头就说得差不多了!所以是试作品。
无法插入%time函数,再研究吧!残念......
条件式一样要避免吃字,如果开头第一个字就吃字就没辄了。
原本期望能将讯息撷取的触发简化成一条,但目前找不到可用函数,所以要两条,
如要抓技能讯息,因为有一个条件无故不执行,结果增至三条。..Orz..
声明:如果有任何人不成功,我也不打算成仁唷!
资料参考:
天涯中文MUD游戏:
http://www.tymud.com/www/20/2007-04/86.html
红猫的重生世界 :
http://suzin.pixnet.net/blog/post/8470686
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.163.168.121
1F:推 litears :未看先推 10/13 10:38
※ 编辑: hmml 来自: 218.163.168.121 (10/13 10:49)
※ 编辑: hmml 来自: 218.163.168.121 (10/13 10:53)