feat: safe delegate invocation helper added

This commit is contained in:
2025-04-13 19:08:47 +03:00
parent 00f7b1aaab
commit 58eb373c79
21 changed files with 116 additions and 91 deletions

View File

@@ -16,21 +16,21 @@ public abstract class StateBehaviourBase : Behaviour, IState
public void Update()
{
OnUpdateState();
OnStateUpdate?.Invoke(this);
OnStateUpdate?.InvokeSafe(this);
}
protected virtual void OnTransitionedToState(IState from) { }
public void TransitionTo(IState from)
{
OnTransitionedToState(from);
OnStateTransitionedTo?.Invoke(this, from);
OnStateTransitionedTo?.InvokeSafe(this, from);
}
protected virtual void OnTransitionedFromState(IState to) { }
public void TransitionFrom(IState to)
{
OnTransitionedFromState(to);
OnStateTransitionedFrom?.Invoke(this, to);
OnStateTransitionedFrom?.InvokeSafe(this, to);
}
public abstract IState? GetNextState();