Spider bomb in FSM

This commit is contained in:
Maddo 2025-03-08 11:33:26 +01:00
commit 4913eba12e
20 changed files with 300 additions and 48 deletions

View file

@ -27,11 +27,9 @@ public abstract partial class BaseState<TKey, TType> : Node2D, IState<TKey, TTyp
foreach (var node in _moduleNodes)
{
if (node is IModule<TKey, TType> module)
{
_modules.Add(module);
module.Init(_stateMachine);
}
if (node is not IModule<TKey, TType> module) continue;
_modules.Add(module);
module.Init(_stateMachine);
}
}
@ -40,9 +38,21 @@ public abstract partial class BaseState<TKey, TType> : Node2D, IState<TKey, TTyp
_stateMachine.SetState(newState);
}
public abstract void EnterState();
public virtual void EnterState()
{
foreach (var module in _modules)
{
module.EnterState(StateId);
}
}
public abstract void ExitState();
public virtual void ExitState()
{
foreach (var module in _modules)
{
module.ExitState(StateId);
}
}
public virtual void ProcessState(double delta)
{