无论是在你的主要游戏对象(游戏结束,重新启动,继续等)或个人角色和 NPC(AI 行为,动画等)中,状态机是一种用来管理游戏状态非常有效的方式。下面是一个简单的状态机,应该会在任何 Unity 的上下文中工作良好。
大多数状态机使用 C 编写,但是异常复杂,而且还需要大量样板代码。然而,状态机在游戏开发中是一个非常有用的模式,管理开销不应该是阻止你编写好代码的负担。下面是本项目的一些特性:
简单使用枚举作为状态定义
最小的初始化 — 一行代码
易用的 添加/删除 状态
使用反射来避免样板代码 — 只写你实际需要的方法
与 Coroutines 兼容
在 iOS 和 Android 上测试
评论