shanghua 发表于 2022-8-29 22:15:14

mudlet基础教程-8、触发 - 颜色触发

本帖最后由 shanghua 于 2022-9-7 04:07 PM 编辑

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

颜色触发我也只会一些最基本的匹配,再深度一点的请自行研究 官方文档。

1、一行一色
还是先写测试语句,代码如下:
lua cfeedTriggers('<span style="background-color: rgb(255, 255, 255); color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; text-align: center;"><</span>red:green<span style="background-color: rgb(255, 255, 255); color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; text-align: center;">></span>我想测试<span style="background-color: rgb(255, 255, 255); color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; text-align: center;"><</span>r<span style="background-color: rgb(255, 255, 255); color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; text-align: center;">></span>一个颜色\n')分析一下尖括号里的语意:<字体颜色:背景颜色>第一个尖括号是给内容上色<r>第二个尖括号表示颜色结束
然后我们创建触发,如下图:

触发器里的颜色,直接点击选择,如图:


进行测试,如下图:

我们可以把<>里的颜色换成<green:red>,试试。

2、一行多色
测试语句,代码如下:
lua cfeedTriggers('<span style="color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; text-align: center; background-color: rgb(255, 255, 255);"><</span>red:green<span style="color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; text-align: center; background-color: rgb(255, 255, 255);">></span>我想<span style="color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; text-align: center; background-color: rgb(255, 255, 255);"><</span>r<span style="color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; text-align: center; background-color: rgb(255, 255, 255);">></span>测试<span style="color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; text-align: center; background-color: rgb(255, 255, 255);"><</span>yellow:green<span style="color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; text-align: center; background-color: rgb(255, 255, 255);">></span>多个<span style="color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; text-align: center; background-color: rgb(255, 255, 255);"><</span>r<span style="color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; text-align: center; background-color: rgb(255, 255, 255);">></span>颜色\n')创建触发,如下图:

在这种匹配规则中,刚开以为颜色也占行数,所以这里的行数是2。
经@double大老指点,发现不是的,颜色是不占行数的,这里的行数,表示行数差。也就理解为两行文字之间的行距。这里只有一行文字,所以这里的行数应该是0,如果是三行文字的话,行数才是2。

进行测试,如下图:


3、多行多色
测试语句,代码如下:
lua cfeedTriggers('<span style="background-color: rgb(255, 255, 255); color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; text-align: center;"><</span>red:green<span style="background-color: rgb(255, 255, 255); color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; text-align: center;">></span>我想测试<span style="background-color: rgb(255, 255, 255); color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; text-align: center;"><</span>r<span style="background-color: rgb(255, 255, 255); color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; text-align: center;">></span>两行颜色\n<span style="background-color: rgb(255, 255, 255); color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; text-align: center;"><</span>yellow:blue<span style="background-color: rgb(255, 255, 255); color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; text-align: center;">></span>再来一行<span style="background-color: rgb(255, 255, 255); color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; text-align: center;"><</span>r<span style="background-color: rgb(255, 255, 255); color: rgb(51, 51, 51); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 13px; text-align: center;">></span>\n')创建触发,如图:

这种情况的匹配规则,只有文字占行数,颜色不占行数,所以这里的匹配行数还是1
测试,如图:




教程目录:

mudlet基础教程-1、变量
mudlet基础教程-2、变量
mudlet基础教程-3、别名
mudlet基础教程-4、正则
mudlet基础教程-5、按钮
mudlet基础教程-6、触发 - 基础触发
mudlet基础教程-7、触发 - 多行触发
mudlet基础教程-9、定时器


suwuji 发表于 2022-8-30 22:53:36

看这个行数规则真是迷糊了,这个指定不是完全可以程序自动计算的么?还用人指定?还有啥更复杂的变数是在规则之外的?

double 发表于 2022-8-30 23:14:41

suwuji 发表于 2022-8-30 10:53 PM
看这个行数规则真是迷糊了,这个指定不是完全可以程序自动计算的么?还用人指定?还有啥更复杂的变数是在规 ...

这个写的不对,行数只是限制多行匹配头尾之间的行数差,避免一些误触发,颜色匹配本身并不会额外占用行数

shanghua 发表于 2022-8-31 09:32:33

本帖最后由 shanghua 于 2022-8-31 09:34 AM 编辑

suwuji 发表于 2022-8-30 10:53 PM
看这个行数规则真是迷糊了,这个指定不是完全可以程序自动计算的么?还用人指定?还有啥更复杂的变数是在规 ...
楼上解释了,这个行数原来是行数差
页: [1]
查看完整版本: mudlet基础教程-8、触发 - 颜色触发