perf: DelegateExtensions.InvokeSafe marked obsolete for memory allocation reasons, soon to be removed

This commit is contained in:
2025-05-29 21:48:08 +03:00
parent 1b0f25e854
commit bf8fbebae3
35 changed files with 116 additions and 115 deletions

View File

@@ -53,12 +53,12 @@ public class State : BaseEntity, IState
public void Update()
{
if (GetNextState() is IState transitionState)
OnStateTransitionReady?.InvokeSafe(this, transitionState);
OnStateUpdate?.InvokeSafe(this);
OnStateTransitionReady?.Invoke(this, transitionState);
OnStateUpdate?.Invoke(this);
}
public void TransitionTo(IState from) => OnStateTransitionedTo?.InvokeSafe(this, from);
public void TransitionFrom(IState to) => OnStateTransitionedFrom?.InvokeSafe(this, to);
public void TransitionTo(IState from) => OnStateTransitionedTo?.Invoke(this, from);
public void TransitionFrom(IState to) => OnStateTransitionedFrom?.Invoke(this, to);
public IState? GetNextState()
{

View File

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

View File

@@ -23,7 +23,7 @@ public class StateMachine : Behaviour
_state = value;
previousState.TransitionFrom(value);
value.TransitionTo(_state);
OnStateChanged?.InvokeSafe(this, previousState, value);
OnStateChanged?.Invoke(this, previousState, value);
value.OnStateTransitionReady += OnStateTransitionReady;
}