北大侠客行MUD论坛

 找回密码
 注册
搜索
热搜: 新手 wiki 升级
查看: 5092|回复: 3

【tintin++】两种多行触发的实现方法

[复制链接]
发表于 2019-4-17 12:11:12 | 显示全部楼层 |阅读模式
本帖最后由 zhouyi 于 2019-4-17 04:20 AM 编辑

tintin++原生无法支持多行触发,自己实验了一下。尝试了一种嵌套的方法实现多行触发,但是觉得似乎会有些隐患,一时还没想明白。
-------------用action制作多行触发(一行只会被匹配一次,所以这个方法会影响其他触发器生效)
#act {测试行1} {#act {%*} {#if "%%0"=="测试行2" {#showme 两行触发测试};#unact {%*}}
#act {测试行1} {#act {%*} {#if "%%0"=="测试行2" {#act {%*} {#if "%%%0"=="测试行3" {#showme 三行触发测试};#unact {%*}}} {#unact {%*}}}}

尝试了一下用event做多行触发,好处是不影响action的生效,坏处是可能覆盖你其他地方定义的eve动作。
-------------用event制作多行触发(event会在触发器之前生效,使用中应当注意。另外,event只会在真实接受到来自服务器的行后生效,#showme无效)
#eve {RECEIVED LINE} {#var tmp {%1};#if {"$tmp"=="    蓝蓝的大海一望无边。岸边不远处停着几只小船,细细的白沙,"} {#eve {RECEIVED LINE} {#var tmp {%%1};#if {"$tmp"=="踩在脚下软软的好不舒服。不时有几只小蟹横行而过。一排浅浅的足"} {#ec 两行触发测试成功} {#echo 两行触发测试失败};#uneve {RECEIVED LINE}}}}

------------用act和eve结合起来实现多个多行触发并行存在的方法
#act {    蓝蓝的大海一望无边。岸边不远处停着几只小船,细细的白沙,} {#var tmp {%0};#if {"$tmp"=="    蓝蓝的大海一望无边。岸边不远处停着几只小船,细细的白沙,"} {#eve {RECEIVED LINE} {#var tmp {%%1};#if {"$tmp"=="踩在脚下软软的好不舒服。不时有几只小蟹横行而过。一排浅浅的足"} {#ec 两行触发测试成功} {#echo 两行触发测试失败};#uneve {RECEIVED LINE}}}}


我想应该还可以用list的办法来实现多行触发吧,下次再试试。 --2019年4月17日

北大侠客行MUD,中国最好的MUD
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2019-4-21 22:02:30 | 显示全部楼层
利用buffer来实现多行触发:
---------------黄金战士的分割线-------
武馆休息室 -
    这是扬威武馆的休息室。收拾得非常干净,摆设简单。靠墙设有几张木床,
近门处放着一张桌子。
----------------以上是需要三行触发的内容----
#ACTION {近门处放着一张桌子} {
    #buffer {get} {bf} {1} {2};
    #if {"$bf[1]"=="    这是扬威武馆的休息室。收拾得非常干净,摆设简单。靠墙设有几张木床," && "$bf[2]"=="武馆休息室 - "} {#ec 三行触发测试成功} {#ec 三行触发测试失败};
};
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2019-9-19 15:35:09 | 显示全部楼层
我一般用#ac镶嵌,结合#class开关
#class room open;
#ac {^白虎大街 -} {
#class tmp open;
#ac {^耸立于前。北边是家大的酒楼,里面熙熙攘攘,热闹非凡。向南却是} {say 南面是化生寺;T- tmp};
#ac {^耸立于前。北面静静的是一家书局,来往多是些读书人。南面是一家} {say 南面是钱庄;T- tmp};
#class tmp close;
};

#class room close;

镶嵌的action用class归类便于开关。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2020-3-5 08:41:35 | 显示全部楼层
tintin的大括号太丑了,看得眼花
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|北大侠客行MUD ( 京ICP备16065414号-1 )

GMT+8, 2024-3-28 06:57 PM , Processed in 0.010303 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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