Reddit/Unity3D,
我刚刚发布了RxFSM — 在Unity中用于状态机,触发器使用带数据的结构
我一直会遇到这样的问题:
// 旧的方法 — 单独存储数据,存储时期希望能顺利
float lastDamageAmount;
Element lastDamageElement;
// 然后在状态回调中查找
void OnHitEnter() { ApplyEffect(lastDamageElement); }
而RxFSM:
sm.EnterState<Damaged>(State.Hit, (prev, trg) =>
{
hp -= trg.amount;
SpawnEffect(trg.element, trg.direction); // 数据直接在这里
});
它还支持:
- 异步策略 (Throttle / Switch / Parallel)
- 等级结构状态机
- UniTask & R3集成
- 自动销毁至使用AddTo(gameObject)
GitHub:https://github.com/YoruYomix/RxFSM
欢迎所有曾经在Unity中处理过状态机复杂性的使用者提供反馈!
评论 (0)