mudlet基础脚本开发-5、武当门派任务 - 炼丹
本帖最后由 shanghua 于 2022-9-14 05:17 PM 编辑上一节,我们开发了练阵的机器,这一节我们继续填架子。
炼丹的任务相对简单,难点在于抓取炉子,所以炼丹脚本的开发思路:
1、找俞岱岩
2、准备开始
3、看炉
4、丹成
5、交丹
还是先找一个自己记的住的位置,新建一个ld.lua文件,用vscode打开它,以下所有的脚本代码全都复制到这个文件里,最后把文件里的代码一起复制到mudlet的脚本里去。
1、找俞岱岩:我们通过 这一节教程 接到任务,去执行 startLD() 函数脚本代码:
function startLD ()
send('do 4 n;e;e')
tempTimer(2, [])
end
2、准备开始
触发:
你向俞岱岩打听有关『炼丹』的消息。
俞岱岩说道:「我最近正在研究炼制
勾选多行触发,行数间距填1触发代码:
readyLD()脚本代码:
function readyLD()
send('s;zuo;kan')
end
3、看炉
上代码之前,我们先分析一下这个炉子,如图:
这炉子看起来很复杂,其实我们分析一下,就很简单,抓1行就够。
空白用 \s+
重复的星星,数一数它是8个,*是正则关键字,需要转义,所以最终用 \*{8}
正儿八经要用的内容是^,数一数它是5个,它也是正则关键字,需要转义,所以最终用 \^{5}
^后边的星星可抓,可不抓,原理同上
最后颜色匹配,在mudlet里也是相当简单,往下看就好。也可以先看一下 mudlet的基础教程。
3-1、黄炉:
触发:
^\s+\*{8}(\^{5})\*{7}
颜色不占触发行数,所以这里是0
触发代码:
getColorLD('H')
3-2、红炉:
触发:
^\s+\*{9}\^{3}\*{8}
触发代码:
getColorLD('L')
3-3、紫炉:
触发:
^\s+\*{7}(\^)\*{6}
触发代码:
getColorLD('M')脚本代码:
function getColorLD(color)
send('change '..color)
end
4、丹成
触发:
丹炉里传出来一阵清香,看来已经成丹了!赶紧向俞岱岩报告!触发代码:
okLD()脚本代码:
function okLD()
send('zhan');
tempTimer(1.5, [])
end
5、交丹
触发:
你向俞岱岩打听有关『炼丹』的消息。
(^你的「医术」进步了!)?
俞岱岩说道:「不错不错!
这里是多行匹配,(^你的「医术」进步了!)有时有,有时没有,所以用 ? 让它匹配0次或1次。
触发代码:
overLD()脚本代码:
function overLD()
tempTimer(1.5, [[
send('n;w;w;do 4 s;')
enableAlias('cxok')
]])
end
最后记得,把ld.lua里的代码复制到mudlet炼丹脚本里去。
附上触发与脚本目录结构:
一路看过来
很有启发
谢谢! 在跟着教程一步一步学, 非常感谢!
页:
[1]