一个直观的 Unity3d 有限状态机 (FSM)。 设计时强调易用性,而不牺牲功能性。
教科书中的状态机实现,以及其他 C# 状态机库,都倾向于配置复杂或过多的框架代码。然而,状态机确实非常有用 - 管理开销永远不应阻止我们提高可读性、修复错误,以及编写优质代码。
以思维的速度创建状态: 只需添加枚举字段即可!
有效地思考您的代码: 所有内容都集中在 MonoBehaviour 中。
使用您对 Unity 的了解: 以"Unity"的方式进行操作,可以避免意外的怪异现象和副作用。
只编写您将要使用的方法: 智能的内部反射可以避免编写枯燥的模板代码。
广泛的单元测试覆盖
初始化后无需垃圾分配
经过战斗检验且已在生产代码中发布
支持 iOS/Android/IL2CPP
// 支持协程,只需返回 IEnumerator IEnumerator Play_Enter() { yield return new WaitForSeconds(1); Debug.Log("开始"); } IEnumerator Play_Exit() { yield return new WaitForSeconds(1); }
暂无开放 Issues,或尚未同步最近议题。