shanghua 发表于 2022-9-7 15:28:03

mudlet基础脚本开发-3、武当门派任务 - 整体架构搭建

本帖最后由 shanghua 于 2022-9-14 03:35 PM 编辑

先加载 叶神的 z99框架,叶神的框架博大精深,暂时还没有完全领悟它的用法,做不到完善嵌套他的框架,只能自主实现,有些地方直接用的他的变量与工具类,就不再重复造轮子了。
首先解释一下架构这玩意是个什么意思。就好比是小时候写作文,老师让我们先写大纲,然后按照大纲的步骤把内容一步步细化。在程序开发界,这种大纲就是架构。

架构思路:

1、准备触发器的文案内容。
打开mudlet的日志记录功能,手动把炼丹、练阵、诵经、侠客的任务做一遍,这样文案会全部记录下来,方便开发测试。
采气的任务要等时间,所以直接放弃。



2、分别创建炼丹、练阵、诵经、侠客的 触发、脚本目录



3、创建一个领取任务的触发 ,通过它去控制程序执行哪个任务脚本


触发器代码:
你向冲虚道长打听有关『quest』的消息。
^冲虚道长说道:「今天全派弟子要在(.+)熟读典籍,据说要诵唱(.+)的.+·(.+)\((\d+)\)|^冲虚道长说道:「武当三侠最近迷上了(.+),需要一个道童帮他看守丹炉,你到俞岱岩那里帮他看看炉火吧。」|^冲虚道长说道:「武当派以真武七截阵闻名天下,每个拜入武当的入门弟子都需要学习(.+)演练|^冲虚道长说道:「山下双井子村的(.+)似乎有点麻烦,你现在下山一趟帮他解决麻烦。」
local e = multimatches
print(e)
if e~='' then
cecho('\n<magenta>==== 去诵经 ====')
jobSwitch('诵经')
startSJ(e, e, e, e)
end

if e=='炼丹' then
cecho('\n<yellow>==== 去炼丹 ====')
jobSwitch('炼丹')
startLD()
end

if e=='阵法' then
cecho('\n<cyan>==== 去练阵 ====')
jobSwitch('练阵')
startZF()
end

if e=='崔老汉' then
cecho('\n<bisque>==== 侠客:崔老汉 ====')
jobSwitch('侠客')
startXK()
end



这样我们就可以通过不同的内容,去执行不同的任务。


4、创建一个任务分发的脚本 jobSwitch(name)


function jobSwitch(name)
    disableTrigger('抄经')
    disableTrigger('炼丹')
    disableTrigger('侠客')
    disableTrigger('练阵')
    disableTrigger('XK-土匪挡道')
    disableTrigger('XK-土匪死了')

    disableScript('抄经脚本')
    disableScript('炼丹脚本')
    disableScript('侠客脚本')
    disableScript('练阵脚本')

    disableTimer('xkTimer')

    if name~=nil then
      enableTrigger(name)
      enableScript(name..'脚本')
    end

    expandAlias('cxjob')
end



行了,整体的架子搭好了。下一步,我们就先实现一个简单的过阵逻辑。
页: [1]
查看完整版本: mudlet基础脚本开发-3、武当门派任务 - 整体架构搭建