基础-04-场景下的处理方法
2024年9月30日大约 2 分钟
1.简介
每个场景
(scenes里的元素) 下,都会包含一个 处理方法数组(handlers)
。
每一个 处理方法
,会包含以下属性
- states
状态表达式
- 在这个场景下,判断当前是什么状态。 - operations
操作指令数组
- 在这个状态下,需要进行的具体操作。 - sub_handlers
子处理方法数组
- 在这个状态下,尽一步细分对应的处理方法。
2.状态表达式
戳 这里 了解
3.操作指令数组
戳 这里 了解
4.子处理方法数组
在 状态表达式
判断为真时,可以使用 子处理方法数组(sub_handlers)
进一步细分状态。
数组中的元素,都是一个 处理方法
,也就是嵌套的结构。
这个用法主要是可以简化部分写法,观感上也会更直观。例如以下两种写法是等价的。
例子
- states: "[闪避识别-黄光] & [前台-击破]"
operations: ...
- states: "[闪避识别-黄光] & [前台-强攻]"
operations: ...
- states: "[闪避识别-黄光]"
sub_handlers:
- states: "[前台-击破]"
operations: ...
- states: "[前台-强攻]"
operations: ...
当然,如果觉得绕晕了,你可以保持使用第一种写法。
5.处理方法模版
未写
6.执行逻辑
命中某个场景时,脚本会按顺序,对场景中的每个处理方法
的状态表达式
进行判断
- 1.0. 如果
状态表达式(states)
判断为真- 1.1. 存在
操作指令数组(operations)
,则执行对应的操作指令。 - 1.2. 存在
子处理方法数组(sub_handlers)
,则继续判断子处理方法数组(sub_handlers)
的状态表达式(states)
,回到1.0步骤。
- 1.1. 存在
- 2.0. 如果
1.0
部分无法找到完全满足(包括sub_handlers)的处理方法
,则继续判断下一个处理方法
。