feat: serialized state machine & states
This commit is contained in:
@@ -7,10 +7,24 @@ public abstract class StateBehaviourBase : Behaviour, IState
|
||||
public event IState.StateUpdateEventHandler? OnStateUpdate = null;
|
||||
public event IState.StateTransitionedFromEventHandler? OnStateTransitionedFrom = null;
|
||||
public event IState.StateTransitionedToEventHandler? OnStateTransitionedTo = null;
|
||||
public event INameable.NameChangedEventHandler? OnNameChanged = null;
|
||||
|
||||
public abstract event IState.StateTransitionReadyEventHandler? OnStateTransitionReady;
|
||||
|
||||
public abstract string Name { get; }
|
||||
private string _name = string.Empty;
|
||||
public string Name
|
||||
{
|
||||
get => _name;
|
||||
set
|
||||
{
|
||||
if (_name.CompareTo(value) == 0)
|
||||
return;
|
||||
|
||||
string previousName = _name;
|
||||
_name = value;
|
||||
OnNameChanged?.Invoke(this, previousName);
|
||||
}
|
||||
}
|
||||
|
||||
protected virtual void OnUpdateState() { }
|
||||
public void Update()
|
||||
|
Reference in New Issue
Block a user