[修改] 修改版本号为1.0.1
## HOMEPAGE GameFrameX 的 Fsm 有限状态机组件
Fsm 有限状态机组件 (Fsm Component) - 提供状态机组件相关的接口。
FsmComponent
FsmComponent 是一个集成于Game Framework游戏框架的有限状态机组件,用于管理和控制有限状态机(FSM)的创建、获取、检查以及销毁。
Count
HasFsm
GetFsm
GetAllFsmList
CreateFsm
DestroyFsm
在游戏开始时,Awake 方法会被自动调用。
Awake
protected override void Awake() { base.Awake(); new FsmManager(); m_FsmManager = GameFrameworkEntry.GetModule<IFsmManager>(); if (m_FsmManager == null) { Log.Fatal("FSM manager is invalid."); return; } }
使用 CreateFsm 方法创建一个新的有限状态机。需要提供拥有者对象、状态机名称(可选)和状态集合。
public IFsm<T> CreateFsm<T>(T owner, params FsmState<T>[] states) where T : class { return m_FsmManager.CreateFsm(owner, states); }
根据拥有者类型或名称来获取对应的有限状态机。
public IFsm<T> GetFsm<T>() where T : class { return m_FsmManager.GetFsm<T>(); }
调用 HasFsm 方法确认是否已创建特定的有限状态机。
public bool HasFsm<T>() where T : class { return m_FsmManager.HasFsm<T>(); }
使用 DestroyFsm 方法销毁不再需要的状态机,回收资源。
public bool DestroyFsm<T>(IFsm<T> fsm) where T : class { return m_FsmManager.DestroyFsm(fsm); }
确保在调用任何状态机管理方法之前,状态机管理器 m_FsmManager 已被正确初始化,否则可能会引发错误。
m_FsmManager
此组件需要与游戏框架的其他模块和组件进行交互使用,需保证游戏框架已被正确设置并初始化。
直接在 manifest.json 的文件中的 dependencies 节点下添加以下内容
manifest.json
dependencies
{"com.gameframex.unity.fsm": "https://github.com/AlianBlank/com.gameframex.unity.fsm.git"}
在Unity 的Packages Manager 中使用Git URL 的方式添加库,地址为:https://github.com/AlianBlank/com.gameframex.unity.fsm.git
Packages Manager
Git URL
直接下载仓库放置到Unity 项目的Packages 目录下。会自动加载识别
Packages
©Copyright 2023 CCF 开源发展委员会 Powered by Trustie& IntelliDE 京ICP备13000930号
## HOMEPAGE GameFrameX 的 Fsm 有限状态机组件
Fsm 有限状态机组件 (Fsm Component) - 提供状态机组件相关的接口。
使用文档(文档编写于GPT4)
有限状态机组件
FsmComponent
说明文档简介
FsmComponent
是一个集成于Game Framework游戏框架的有限状态机组件,用于管理和控制有限状态机(FSM)的创建、获取、检查以及销毁。功能
Count
属性:获取当前状态机的数量。HasFsm
方法:检查指定类型的状态机是否已经存在。GetFsm
方法:根据指定类型获取状态机实例。GetAllFsmList
方法:获取所有状态机实例。CreateFsm
方法:创建新的状态机实例。DestroyFsm
方法:销毁指定的状态机实例。使用方法
初始化组件
在游戏开始时,
Awake
方法会被自动调用。创建状态机
使用
CreateFsm
方法创建一个新的有限状态机。需要提供拥有者对象、状态机名称(可选)和状态集合。获取状态机
根据拥有者类型或名称来获取对应的有限状态机。
检查状态机存在
调用
HasFsm
方法确认是否已创建特定的有限状态机。销毁状态机
使用
DestroyFsm
方法销毁不再需要的状态机,回收资源。注意事项
确保在调用任何状态机管理方法之前,状态机管理器
m_FsmManager
已被正确初始化,否则可能会引发错误。此组件需要与游戏框架的其他模块和组件进行交互使用,需保证游戏框架已被正确设置并初始化。
使用方式(任选其一)
直接在
manifest.json
的文件中的dependencies
节点下添加以下内容在Unity 的
Packages Manager
中使用Git URL
的方式添加库,地址为:https://github.com/AlianBlank/com.gameframex.unity.fsm.git直接下载仓库放置到Unity 项目的
Packages
目录下。会自动加载识别