From 8072a81c49f0391a37449ec5266d7dc1ee058890 Mon Sep 17 00:00:00 2001 From: codetypes Date: Fri, 19 Jul 2024 14:03:51 +0800 Subject: [PATCH] update setting template --- src/index.scss | 2 + src/misc/template.ts | 141 +++++++++++++++++++++++++++++++------------ 2 files changed, 104 insertions(+), 39 deletions(-) diff --git a/src/index.scss b/src/index.scss index c555432..f0df208 100644 --- a/src/index.scss +++ b/src/index.scss @@ -200,4 +200,6 @@ code { margin: 0 3px; white-space: break-spaces; box-sizing: border-box; + font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, + Cantarell, "Open Sans", "Helvetica Neue", sans-serif; } diff --git a/src/misc/template.ts b/src/misc/template.ts index 0f9a24f..ef47862 100644 --- a/src/misc/template.ts +++ b/src/misc/template.ts @@ -4,22 +4,25 @@ export const zhNodeDef = () => { { name: "AlwaysFail", type: "Decorator", + children: 1, status: ["failure", "|running"], desc: "始终返回失败", - doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 不管子节点是否成功都返回`失败`\n", + doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 不管子节点是否成功都返回`failure`\n", }, { name: "AlwaysSuccess", type: "Decorator", + children: 1, status: ["success", "|running"], desc: "始终返回成功", - doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 不管子节点是否成功都返回`成功`\n", + doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 不管子节点是否成功都返回`success`\n", }, { name: "Assert", type: "Decorator", - desc: "断言", + children: 1, status: ["success"], + desc: "断言", args: [ { name: "message", @@ -27,11 +30,12 @@ export const zhNodeDef = () => { desc: "消息", }, ], - doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 当子节点返回`失败`时,抛出异常\n+ 其余情况返回子节点的执行状态\n", + doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 当子节点返回`failure`时,抛出异常\n+ 其余情况返回子节点的执行状态\n", }, { name: "Calculate", type: "Action", + children: 0, status: ["success"], desc: "简单的数值公式计算", args: [ @@ -47,6 +51,7 @@ export const zhNodeDef = () => { { name: "Check", type: "Condition", + children: 0, status: ["success", "failure"], desc: "检查True或False", args: [ @@ -56,11 +61,12 @@ export const zhNodeDef = () => { desc: "值", }, ], - doc: "+ 做简单数值公式判定,返回`成功`或`失败`\n", + doc: "+ 做简单数值公式判定,返回`success`或`failure`\n", }, { name: "Clear", type: "Action", + children: 0, status: ["success"], desc: "清除变量", output: ["清除的变量名"], @@ -68,41 +74,70 @@ export const zhNodeDef = () => { { name: "Concat", type: "Action", + children: 0, status: ["success", "failure"], desc: "将两个输入合并为一个数组,并返回新数组", input: ["数组1", "数组2"], output: ["新数组"], - doc: "+ 如果输入不是数组,则返回`失败`\n", + doc: "+ 如果输入不是数组,则返回`failure`\n", + }, + { + name: "Delay", + type: "Decorator", + children: 1, + status: ["success"], + desc: "延时执行子节点", + input: ["延时时间?"], + args: [ + { + name: "delay", + type: "float", + desc: "延时时间", + }, + ], + doc: "+ 当延时触发时,执行第一个子节点,多个仅执行第一个\n+ 如果子节点返回 `running`,会中断执行并清理执行栈", }, { name: "Filter", type: "Action", + children: 1, status: ["success", "failure", "|running"], desc: "返回满足条件的元素", input: ["输入数组"], output: ["变量", "新数组"], - doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 遍历输入数组,将当前元素写入`变量`,满足条件的元素放入新数组\n+ 只有当新数组不为空时,才返回`成功`\n", + doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 遍历输入数组,将当前元素写入`变量`,满足条件的元素放入新数组\n+ 只有当新数组不为空时,才返回`success`\n", }, { name: "ForEach", type: "Action", + children: 1, status: ["success", "|running", "|failure"], desc: "遍历数组", input: ["数组"], output: ["变量"], - doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 遍历输入数组,将当前元素写入`变量`\n+ 当子节点返回`失败`时,退出遍历并返回`失败`状态\n+ 执行完所有子节点后,返回`成功`", + doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 遍历输入数组,将当前元素写入`变量`\n+ 当子节点返回`failure`时,退出遍历并返回`failure`状态\n+ 执行完所有子节点后,返回`success`", + }, + { + name: "IfElse", + type: "Composite", + children: 3, + status: ["success", "failure", "|running"], + desc: "条件执行,if-else", + doc: "+ 必须有三个子节点\n+ 第一个子节点为条件节点\n+ 第二个子节点为条件为`success`时执行的节点\n+ 第三个子节点为条件为`failure`时执行的节点,\n", }, { name: "Includes", type: "Condition", + children: 0, status: ["success", "failure"], desc: "判断元素是否在数组中", input: ["数组", "元素"], - doc: "+ 若输入的元素不合法,返回`失败`\n+ 只有数组包含元素时返回`成功`,否则返回`失败`\n", + doc: "+ 若输入的元素不合法,返回`failure`\n+ 只有数组包含元素时返回`success`,否则返回`failure`\n", }, { name: "Index", type: "Action", + children: 0, status: ["success", "failure"], desc: "索引输入的数组或对象", args: [ @@ -114,18 +149,20 @@ export const zhNodeDef = () => { ], input: ["输入目标", "索引?"], output: ["输出目标"], - doc: "+ 合法元素不包括 `undefined` 和 `null`\n+ 只有索引到有合法元素时候才会返回`成功`,否则返回`失败`\n", + doc: "+ 合法元素不包括 `undefined` 和 `null`\n+ 只有索引到有合法元素时候才会返回`success`,否则返回`failure`\n", }, { - name: "Inverter", + name: "Invert", type: "Decorator", + children: 1, status: ["!success", "!failure", "|running"], desc: "反转子节点运行结果", - doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 当子节点返回`成功`时返回`失败`\n+ 当子节点返回`失败`时返回`成功`\n", + doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 当子节点返回`success`时返回`failure`\n+ 当子节点返回`failure`时返回`success`\n", }, { name: "IsNull", type: "Condition", + children: 0, status: ["success", "failure"], desc: "判断变量是否不存在", input: ["判断的变量"], @@ -133,6 +170,7 @@ export const zhNodeDef = () => { { name: "IsStatus", type: "Condition", + children: 1, status: ["success", "failure"], desc: "检查子节点状态", args: [ @@ -156,11 +194,12 @@ export const zhNodeDef = () => { ], }, ], - doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 只有当子节点的执行状态与指定状态相同时才返回`成功`,其余返回失败\n+ 若子节点返回`运行中`状态,将中断子节点并清理子节点的执行栈", + doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 只有当子节点的执行状态与指定状态相同时才返回`success`,其余返回失败\n+ 若子节点返回`running`状态,将中断子节点并清理子节点的执行栈", }, { name: "Let", type: "Action", + children: 0, status: ["success"], desc: "定义新的变量名", input: ["变量名"], @@ -169,6 +208,7 @@ export const zhNodeDef = () => { { name: "Listen", type: "Decorator", + children: 1, status: ["success"], desc: "侦听事件", input: ["目标对象?"], @@ -199,14 +239,23 @@ export const zhNodeDef = () => { name: "行为树执行失败后", value: "afterRunTreeFailure", }, + { + name: "testOff", + value: "testOff", + }, + { + name: "hello", + value: "hello", + }, ], }, ], - doc: "+ 当事件触发时,执行第一个子节点,多个仅执行第一个\n+ 如果子节点返回 `运行中`,会中断执行并清理执行栈", + doc: "+ 当事件触发时,执行第一个子节点,多个仅执行第一个\n+ 如果子节点返回 `running`,会中断执行并清理执行栈", }, { name: "Log", type: "Action", + children: 0, status: ["success"], desc: "打印日志", args: [ @@ -241,24 +290,10 @@ export const zhNodeDef = () => { }, ], }, - { - name: "Loop", - type: "Action", - status: ["success", "|running", "|failure"], - desc: "循环执行", - input: ["循环次数?"], - args: [ - { - name: "count", - type: "int", - desc: "循环次数", - }, - ], - doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 当子节点返回`失败`时,退出遍历并返回`失败`状态\n+ 执行完所有子节点后,返回`成功`\n", - }, { name: "NotNull", type: "Condition", + children: 0, status: ["success", "failure"], desc: "判断变量是否存在", input: ["判断的变量"], @@ -266,6 +301,7 @@ export const zhNodeDef = () => { { name: "Now", type: "Action", + children: 0, status: ["success"], desc: "获取当前时间", output: ["当前时间"], @@ -273,28 +309,32 @@ export const zhNodeDef = () => { { name: "Once", type: "Decorator", + children: 1, status: ["success", "failure", "|running"], desc: "只执行一次", - doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 第一次执行完全部子节点时返回`成功`,之后永远返回`失败`", + doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 第一次执行完全部子节点时返回`success`,之后永远返回`failure`", }, { name: "Parallel", type: "Composite", status: ["success", "|running"], + children: -1, desc: "并行执行", - doc: "+ 并行执行所有子节点\n+ 当有子节点返回`运行中`时,返回`运行中`状态\n+ 执行完所有子节点后,返回`成功`", + doc: "+ 并行执行所有子节点\n+ 当有子节点返回`running`时,返回`running`状态\n+ 执行完所有子节点后,返回`success`", }, { name: "Push", type: "Action", + children: 0, status: ["success", "failure"], desc: "向数组中添加元素", input: ["数组", "元素"], - doc: "+ 当变量`数组`不是数组类型时返回`失败`\n+ 其余返回`成功`\n", + doc: "+ 当变量`数组`不是数组类型时返回`failure`\n+ 其余返回`success`\n", }, { name: "Random", type: "Action", + children: 0, status: ["success"], desc: "返回一个随机数", input: ["最小值?", "最大值?"], @@ -320,15 +360,33 @@ export const zhNodeDef = () => { { name: "RandomIndex", type: "Action", + children: 0, status: ["success", "failure"], desc: "随机返回输入的其中一个!", input: ["输入目标"], output: ["随机目标"], - doc: "+ 合法元素不包括 `undefined` 和 `null`\n+ 在输入数组中,随机返回其中一个\n+ 当输入数组为空时,或者没有合法元素,返回`失败`\n", + doc: "+ 合法元素不包括 `undefined` 和 `null`\n+ 在输入数组中,随机返回其中一个\n+ 当输入数组为空时,或者没有合法元素,返回`failure`\n", + }, + { + name: "Repeat", + type: "Decorator", + children: 1, + status: ["success", "|running", "|failure"], + desc: "循环执行", + input: ["循环次数?"], + args: [ + { + name: "count", + type: "int", + desc: "循环次数", + }, + ], + doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 当子节点返回`failure`时,退出遍历并返回`failure`状态\n+ 执行完所有子节点后,返回`success`\n", }, { name: "RepeatUntilFailure", type: "Decorator", + children: 1, status: ["!success", "!failure", "|running"], desc: "一直尝试直到子节点返回失败", input: ["最大循环次数?"], @@ -339,11 +397,12 @@ export const zhNodeDef = () => { desc: "最大循环次数", }, ], - doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 只有当子节点返回`失败`时,才返回`成功`,其它情况返回`运行中`状态\n+ 如果设定了尝试次数,超过指定次数则返回`失败`", + doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 只有当子节点返回`failure`时,才返回`success`,其它情况返回`running`状态\n+ 如果设定了尝试次数,超过指定次数则返回`failure`", }, { name: "RepeatUntilSuccess", type: "Decorator", + children: 1, status: ["|success", "|failure", "|running"], desc: "一直尝试直到子节点返回成功", input: ["最大循环次数?"], @@ -354,27 +413,30 @@ export const zhNodeDef = () => { desc: "最大循环次数", }, ], - doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 只有当子节点返回`成功`时,才返回`成功`,其它情况返回`运行中`状态\n+ 如果设定了尝试次数,超过指定次数则返回`失败`", + doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 只有当子节点返回`success`时,才返回`success`,其它情况返回`running`状态\n+ 如果设定了尝试次数,超过指定次数则返回`failure`", }, { name: "Selector", type: "Composite", + children: -1, desc: "选择执行", status: ["|success", "&failure", "|running"], - doc: "+ 一直往下执行,直到有子节点返回`成功`则返回`成功`\n+ 若全部节点返回`失败`则返回`失败`", + doc: "+ 一直往下执行,直到有子节点返回`success`则返回`success`\n+ 若全部节点返回`failure`则返回`failure`", }, { name: "Sequence", type: "Composite", + children: -1, status: ["&success", "|failure", "|running"], desc: "顺序执行", - doc: "+ 一直往下执行,只有当所有子节点都返回`成功`, 才返回`成功`\n+ 若子节点返回`失败`,则直接返回`失败`状态\n+ 其余情况返回`运行中`状态\n", + doc: "+ 一直往下执行,只有当所有子节点都返回`success`, 才返回`success`\n+ 若子节点返回`failure`,则直接返回`failure`状态\n+ 其余情况返回`running`状态\n", }, { name: "Timeout", type: "Decorator", - desc: "超时", + children: 1, status: ["|success", "|running", "failure"], + desc: "超时", args: [ { name: "time", @@ -382,11 +444,12 @@ export const zhNodeDef = () => { desc: "超时时间", }, ], - doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 当子节点执行超时或返回`失败`时,返回`失败`\n+ 其余情况返回子节点的执行状态\n", + doc: "+ 只能有一个子节点,多个仅执行第一个\n+ 当子节点执行超时或返回`failure`时,返回`failure`\n+ 其余情况返回子节点的执行状态\n", }, { name: "Wait", type: "Action", + children: 0, status: ["success", "running"], desc: "等待", input: ["等待时间?"],