使用指南
全局事件节点
事件处理 / 全局事件 节点手册,包含 4 个节点的用途、引脚、使用场景和注意事项。
16
学习目标
理解工作流从哪里开始执行,以及如何把生命周期、输入、自定义事件转成后续游戏逻辑。
覆盖范围
- 节点数量:4
- 分类路径:事件处理 / 全局事件
典型使用场景
- 跨节点或跨组件广播关卡、任务、战斗状态变化
- 用自定义事件解耦发送者和接收者
- 在场景切换或系统状态变化时通知多个对象
通用注意事项
- 事件名和负载结构要在发送端与接收端保持一致。
- 绑定后如不再需要,应使用句柄取消监听。
节点索引
| 节点 | 节点 ID | 输入/输出 | 执行方式 |
|---|---|---|---|
| 绑定全局事件 | globalEventBind | 3 / 2 | 立即继续 |
| 触发全局事件 | globalEventEmit | 3 / 1 | 立即继续 |
| 取消事件绑定 | globalEventUnbind | 2 / 0 | 立即继续 |
| 执行事件 | globalEvent | 0 / 3 | 立即继续 |
绑定全局事件
绑定全局事件:让当前组件开始监听指定的全局事件。绑定后,每次有发送者触发该事件,对应的 执行事件 节点就会运行一次。 适合做跨组件响应:例如在 UI 组件中绑定”玩家受伤”事件,每次玩家受伤时自动刷新血条。 绑定成功后会输出一个绑定句柄,可用于后续取消绑定。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | globalEventBind |
| 分类 | 事件处理 |
| 二级分类 | 全局事件 |
| 分组 | - |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 连接到此端口以注册全局事件监听 | - | 可选 |
event | 事件 | 事件 | 事件 | 事件入口 连接到 执行事件 节点的事件输出端口,用于将全局事件绑定到当前组件。 | - | 必填 |
eventName | 事件名 | 数据 | enum / EventNameEnum | 事件名 选择要监听的全局事件,例如 INPUT_KEY_DOWN | 下拉选择 | 必填 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 事件触发时从此处执行绑定的回调逻辑 | - | 可选 |
handle | 句柄 | 数据 | eventHandle | 绑定句柄 用于后续取消这个具体监听 | - | 可选 |
使用场景
- 跨节点或跨组件广播关卡、任务、战斗状态变化
- 用自定义事件解耦发送者和接收者
- 在场景切换或系统状态变化时通知多个对象
注意事项
- 适合的工作流类型:component。
- 事件名和负载结构要在发送端与接收端保持一致。
- 绑定后如不再需要,应使用句柄取消监听。
触发全局事件
发送全局事件:向全局事件发送一个事件,所有绑定该事件的组件都会收到并执行相应逻辑。 可以附带一个负载对象来传递额外数据:例如发送”拾取物品”事件时带上物品 ID 和数量。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | globalEventEmit |
| 分类 | 事件处理 |
| 二级分类 | 全局事件 |
| 分组 | - |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 连接到此端口以触发全局事件 | - | 可选 |
eventName | 事件名 | 数据 | enum / EventNameEnum | 要触发的全局事件名称,需与绑定的事件名一致 | 下拉选择 | 必填 |
payload | 负载 | 数据 | unknown | 事件负载 随事件派发的对象 | - | 可选 |
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 事件触发后从此处继续执行下游逻辑 | - | 可选 |
使用场景
- 跨节点或跨组件广播关卡、任务、战斗状态变化
- 用自定义事件解耦发送者和接收者
- 在场景切换或系统状态变化时通知多个对象
注意事项
- 适合的工作流类型:component。
- 事件名和负载结构要在发送端与接收端保持一致。
- 绑定后如不再需要,应使用句柄取消监听。
取消事件绑定
取消绑定:根据绑定节点输出的句柄移除一个具体的全局事件或节点事件订阅,此后该监听不再接收事件。 适合做按需监听:例如在 BOSS 登场时绑定”战斗结束”事件,在 BOSS 死亡时取消绑定。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | globalEventUnbind |
| 分类 | 事件处理 |
| 二级分类 | 全局事件 |
| 分组 | - |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
exe | - | 执行流 | 执行流 | 连接到此端口以注销全局事件监听 | - | 可选 |
handle | 句柄 | 数据 | eventHandle | 绑定句柄 来自绑定节点的句柄输出,或保存过的事件句柄变量 | - | 必填 |
输出引脚
无。
使用场景
- 跨节点或跨组件广播关卡、任务、战斗状态变化
- 用自定义事件解耦发送者和接收者
- 在场景切换或系统状态变化时通知多个对象
注意事项
- 适合的工作流类型:component。
- 事件名和负载结构要在发送端与接收端保持一致。
- 绑定后如不再需要,应使用句柄取消监听。
执行事件
执行事件:当有发送者派发匹配事件时,触发从这里开始执行。 适合做跨组件通信:例如在玩家组件中发送”得分”事件,在 UI 组件中用此节点接收并更新分数显示。 事件可以携带一个负载对象,用于把额外数据传给下游节点。
节点信息
| 字段 | 值 |
|---|---|
| 节点 ID | globalEvent |
| 分类 | 事件处理 |
| 二级分类 | 全局事件 |
| 分组 | - |
| 是否需要等待结果 | 否 |
| 是否需要先选择目标 | 否 |
输入引脚
无。
输出引脚
| 引脚 ID | 名称 | 连接方式 | 值类型 | 用途 | 默认或选择 | 连接要求 |
|---|---|---|---|---|---|---|
event | 事件 | 事件 | 事件 | 事件输出 连接到绑定节点(如 绑定全局事件、绑定节点事件)的事件入口,将事件路由到具体的监听目标。 | - | 必填 |
exe | - | 执行流 | 执行流 | 全局事件触发时执行,适合在事件驱动的解耦系统中监听跨模块通知 | - | 可选 |
payload | 负载 | 数据 | unknown | 事件负载 由事件总线传入的对象,类型由事件绑定节点自动推导 | - | 可选 |
使用场景
- 跨节点或跨组件广播关卡、任务、战斗状态变化
- 用自定义事件解耦发送者和接收者
- 在场景切换或系统状态变化时通知多个对象
注意事项
- 适合的工作流类型:component。
- 事件名和负载结构要在发送端与接收端保持一致。
- 绑定后如不再需要,应使用句柄取消监听。