总所周知,状态机是一种很常见的设计模式,这里提供了一个强大易用、可视化编辑的分层有限状态机Godot插件。
1. 完善的可视化编辑器
2. 支持分层嵌套、可用于复杂情形
3. 多样化的转换方式
4. 两种开发模式:信号回调与附加状态脚本
5. 完全GDscript开发,兼容godot基础版本与mono版本
GDscript
6. 支持C#脚本作为状态脚本(v0.8 新增)
C#
7. 支持以GDScript和C#脚本为条件的转换–(v0.8 新增,完整版特有)
GDScript
addon
hierarchical_finite_state_machine
Demos
Demo 位于 res://addons/hierarchical_finite_state_machine/demo/
res://addons/hierarchical_finite_state_machine/demo/
如果你使用的是标准版Godot, 你将不能运行含有 C#脚本的demo(打开`.tscn`有可能丢失依赖关系)
只有完整版才会附带以下Demo:
1. new_corss_language_scriptint_2d_platiform_player
new_corss_language_scriptint_2d_platiform_player
2. new_feature_csharp_script_condition_transition_2d_platiform_player
new_feature_csharp_script_condition_transition_2d_platiform_player
3. new_feature_gd_script_condition_transiton_2d_platform_player
new_feature_gd_script_condition_transiton_2d_platform_player
详细教程请看中文文档,也可下载项目后直接打开Document_cn.md进行阅读
Document_cn.md进行阅读
居然支持C#,棒 🍭
竹米
肝了两天实现的新特性
用C#的话有点不完美,为了兼容标准版的godot,基础功能必须用gds实现,所以C#访问HFSM的脚本成员时没有代码补全,必须用Get(), Call()访问。
Get()
Call()
要是觉得好用的话记得 在我的github上点个star,让我康康有多少人用 ~~
大佬!!