3.0 KiB
3.0 KiB
- 主要逻辑和模块逻辑分离
- 细化版本管理,提供不同版本之间的升级函数,由
update_manager
控制。务必仔细测试再发布,一旦升级无法降级! - 函数由两个以上的函数调用,或由不同包下的函数调用,或需要作为接口开放给下游数据包时,应改用标签调用!
系统模块
频繁使用的计算单元
- 位于
tags/functions/calculation
目录下的标签通常被用来进行简单重复的计算任务
事件
- 通常由进度触发,触发后调用同名的事件标签
- 将需要调用的函数填入
tags/functions/event/<事件名称>
标签即可
日志
- 仓库中提供了日志相关的代码片段,位于
.vscode/settings.json
- 暂时没有找到方法在控制台记录日志
详细 Fine
- 等级:300
- 使用方法:
execute if score fz.logger.level fz.variable.integer matches ..300 run tellraw @a [{"nbt": "fz.level.fine", "interpret": true, "storage": "fz:logger"}, {"text": "${你的日志}"}
调试 Debug
- 等级:400
- 使用方法:
execute if score fz.logger.level fz.variable.integer matches ..400 run tellraw @a [{"nbt": "fz.level.debug", "interpret": true, "storage": "fz:logger"}, {"text": "${你的日志}"}
信息 Info
- 等级:500
- 使用方法:
execute if score fz.logger.level fz.variable.integer matches ..500 run tellraw @a [{"nbt": "fz.level.info", "interpret": true, "storage": "fz:logger"}, {"text": "${你的日志}"}
提醒 Alert
- 等级:600
- 使用方法:
execute if score fz.logger.level fz.variable.integer matches ..600 run tellraw @a [{"nbt": "fz.level.alert", "interpret": true, "storage": "fz:logger"}, {"text": "${你的日志}"}
意外 Exception
暂不提供
错误 Error
- 等级:800
- 使用方法:
execute if score fz.logger.level fz.variable.integer matches ..800 run tellraw @a [{"nbt": "fz.level.error", "interpret": true, "storage": "fz:logger"}, {"text": "${你的日志}"}
功能模块
配置
- 标签
tags/functions/module/config/timeout
:注册超时时的操作 - 标签
tags/functions/module/config/reset_trigger
:用于重置玩家@s
的触发器计分板
按钮操作
- 定义一个显示按钮时执行的函数,使用形如
tellraw @s {"text": "[按钮]", "clickEvent": {"action": "run_command", "value": "/trigger fz.module.config.trigger set <触发器分数>"}}
的指令定义按钮。大多数情况下这里的触发器分数必须是独一无二的 - 在
tags/functions/module/config/display
标签中注册 - 定义一个点击按钮时执行的函数,使用形如
execute if score @s fz.module.config.trigger matches <min>..<max> run ...
的指令判断玩家的触发器分数,并执行你的操作 - 在
tags/functions/module/config/on_click
标签中注册上述函数