在 Manus 中运行任何 Skill
一键导入
一键导入
一键在 Manus 中运行任何 Skill
开始使用event
星标35
分支10
更新时间2026年5月30日 05:34
事件系统,处理引擎和游戏事件的监听与触发。
安装
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
文件资源管理器
4 个文件SKILL.md
readonly菜单
事件系统,处理引擎和游戏事件的监听与触发。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
资产管理系统,负责加载和管理游戏资源。
Boo引擎的主命名空间,提供对各个核心模块的访问。所有引擎功能都通过Boo命名空间统一访问。
Boo引擎的核心游戏实例,负责游戏的初始化、更新、渲染和场景管理。作为引擎对外的核心全局实例,提供游戏引擎的全自动运行和用户控制接口。
输入系统,处理鼠标和触控板输入事件。
Boo引擎的场景系统,负责管理游戏中的所有节点和组件,提供层次化的结构来组织游戏对象,支持2D和3D场景的管理。
| name | event |
| description | 事件系统,处理引擎和游戏事件的监听与触发。 |
事件系统负责处理引擎和游戏事件的监听与触发,允许不同系统之间进行松耦合的通信。通过事件系统,你可以监听事件并在需要时触发事件。
// 注册事件监听,返回监听器 ID
uint64_t on(const std::string& eventName, std::function<void()> callback);
// 取消指定 ID 的监听
void off(uint64_t id);
// 取消某事件的所有监听
void off(const std::string& eventName);
// 触发事件
void emit(const std::string& eventName);
| 常量 | 值 | 描述 |
|---|---|---|
Boo::EventEngine_Launch | "Launch" | 引擎启动完成事件 |
#include "engine/boo.h"
void setupEvents() {
// 监听事件,保存 ID 以便后续取消
uint64_t listenerId = Boo::event->on("GameStart", []() {
LOGI("游戏开始!");
});
// 触发事件
Boo::event->emit("GameStart");
// 通过 ID 取消监听
Boo::event->off(listenerId);
}
#include "engine/boo.h"
void onLaunch() {
LOGI("引擎已启动,开始初始化游戏逻辑");
// 创建场景等初始化工作
}
void registerLaunchEvent() {
Boo::event->on(Boo::EventEngine_Launch, onLaunch);
}
// 取消 "GameOver" 事件的所有监听者
Boo::event->off("GameOver");
off(id) 取消,避免悬空回调emit 中的名称完全一致on 是否在 emit 之前调用on 都会注册一个新的监听器,注意避免重复注册事件系统是 Boo 引擎中实现系统间通信的重要机制,提供了 on/off/emit 接口来管理事件的监听和触发。通过事件系统,不同系统之间可以通过事件进行通信,而不需要直接依赖彼此,从而提高代码的模块化和可扩展性。