GeWuYou
|
bbb8d417f6
|
refactor(state): 将状态机相关类重命名以统一命名规范
- 将 ContextAwareStateMachine 重命名为 StateMachineSystem
- 将 ContextAwareStateMachineTests 重命名为 StateMachineSystemTests
- 将 GameStateMachine 重命名为 GameStateMachineSystem
- 创建新的 IStateMachineSystem 接口继承 ISystem 和 IStateMachine
- 移除 ContextAwareStateMachine 中对 system 的引用
- 将 Context 字段改为私有 _context 字段
- 更新所有测试类中的类型引用以匹配新名称
|
2026-01-17 21:13:38 +08:00 |
|
GeWuYou
|
ce6cb3f8df
|
refactor(state): 修改状态机接口返回类型支持链式调用
- 将Register方法返回类型从void改为IStateMachine
- 将Unregister方法返回类型从void改为IStateMachine
- 在实现类中添加return this语句
- 更新接口定义以匹配新的返回类型
- 实现链式调用功能提升API易用性
|
2026-01-17 13:20:33 +08:00 |
|
GeWuYou
|
47326085e7
|
fix(state): 修改状态机切换方法返回值类型并改进转换失败处理
- 将ChangeTo方法返回值从void改为bool类型
- 添加转换失败时返回false的逻辑
- 在状态转换被拒绝时调用OnTransitionRejected回调
- 更新接口定义以匹配新的返回值类型
- 修改单元测试以验证转换失败时的返回值
- [skip ci]
|
2026-01-17 10:06:16 +08:00 |
|
GeWuYou
|
b6554c5820
|
refactor(state): 重构状态机实现以支持状态历史记录和线程安全
- 在销毁时添加当前状态退出和所有状态清理逻辑
- 向IStateMachine接口添加状态检查、获取、历史记录等新方法
- 实现线程安全的状态机,添加锁保护并发访问
- 添加状态历史记录功能,支持最大历史数量限制
- 实现GoBack状态回退功能和状态转换验证
- 添加状态切换前后的回调方法
- 在注销状态时从历史记录中移除相关引用
- 添加Unregister方法中的状态转换验证逻辑
|
2026-01-17 08:43:32 +08:00 |
|
GeWuYou
|
c0274074b3
|
feat(state): 添加状态机系统核心功能实现
- 实现了基础状态机StateMachine类,支持状态注册、切换和生命周期管理
- 创建了上下文感知状态机ContextAwareStateMachine,能够感知架构上下文并发送状态变更事件
- 定义了IState和IStateMachine抽象接口,规范状态和状态机的行为契约
- 添加了StateChangedEvent事件类,用于通知状态变更
- 实现了游戏专用状态机GameStateMachine,提供类型安全的状态检查和获取功能
|
2026-01-15 23:04:41 +08:00 |
|