GameFramework 开发脚手架之 Event事件系统

301 阅读1分钟

项目 github地址

打开项目选GameLauncher场景,直接启动游戏。我用的是 Unity 2021.3.6f1 版本。但应该是2017之后的都支持,没有实测过。

参考

GameFramework框架详解之 Event事件系统

老规矩,先看上面这篇文章,掌握大致的原理。

使用

封装之后扩展自己的事件非常简单。

  1. 参考测试用例

1700463966282.png

  1. 业务扩展遵守开闭原则,照着 TestEvetArgs 和 TestEventBsMgr 实现自己的事件系统 XXXEvetArgs 和 XXXEventBsMgr,然后在合适的地方调用XXXEventBsMgr的方法就ok了。

  2. 关键点

设计事件系统关键是,出问题的时候能快速定位这个事件是在哪里注册的在哪里触发的触发的业务逻辑在哪里处理的(这三点在框架里封装的其实并不好,你尝试去调试框架内部的事件就会有所体会),所以把这三个都封装到XXXEventBsMgr。出问题的时候只要查这个类就好。

1700464524523.png

测试用例

参考 GameFramework 二次封装之 启动测试流程,然后把 TestEventMgr 的OnEnter 和OnUpdate 方法配置到 ProcedureTest 里面就可以进行测试了。