北大侠客行MUD论坛

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

mudlet基础教程-7、触发 - 多行触发

[复制链接]
发表于 2022-8-29 19:26:34 | 显示全部楼层 |阅读模式
本帖最后由 shanghua 于 2022-9-7 04:05 PM 编辑

纯新手教程,大老请绕行。

由于多行触发的情景不好复现,所以我们需要先把触发内容记下来,然后用测试函数去模拟场景,我们把这个过程叫做 测试触发

mudlet里的测试触发函数有:
feedTriggers 测试普通触发
cfeedTriggers 测试颜色触发
dfeedTriggers 这个是测试啥触发的我也没用过



实现一个两行触发:
你向冲虚道长打听有关『quest』的消息。
冲虚道长说道:「今天全派弟子要在天柱峰下熟读典籍,据说要诵唱庄子·外篇「上卷」的庄子·外篇·在宥(34)


1、我们要写测试语句,代码如下:
  1. lua feedTriggers('你向冲虚道长打听有关『quest』的消息。\n冲虚道长说道:「今天全派弟子要在天柱峰下熟读典籍,据说要诵唱庄子·外篇「上卷」的庄子·外篇·在宥(34)\n')
复制代码
两句话拼成一行,用\n代替回车,最后必须以\n结束,否则语句会出现断行,无法进行测试。

2、建立触发,如图:

红框里的选项勾上,行数选1行。对于这个行数,我也是理解不了,反正就是总行数减1。
高亮选上之后匹配的内容会在屏幕上突出显示,一眼就能看出来。

图中的正则匹配语句与代码,给大家放出来,方便测试与理解:
  1. 冲虚道长说道:「今天全派弟子要在(.+)下熟读典籍,据说要诵唱(.+)的.+·(.+)\((\d+)\)
复制代码
  1. -- 记录变量:地点、书名、篇章、页数
  2. print('\n---------\n')
  3. cj = {
  4.   area = multimatches[2][2],
  5.   book = multimatches[2][3],
  6.   chapter = multimatches[2][4],
  7.   page = multimatches[2][5]
  8. }
  9. print('地点:' ..cj.area)
  10. print('书名:' ..cj.book)
  11. print('章节:' ..cj.chapter)
  12. print('页数:' ..cj.page)
复制代码

3、进行测试



教程目录:










本帖子中包含更多资源

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

x
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2022-8-29 20:54:24 | 显示全部楼层
dfeedTriggers是带rgb颜色的触发测试,行数line delta,mudlet文档算是比较详细的了,建议刚用mudlet的各位一定多看看
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-28 01:11 AM , Processed in 0.011766 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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