public void ClearTile() { expectedState = GameTileState.Empty; currentState = GameTileState.Empty; if (OnCurrentStateChange != null) { OnCurrentStateChange.Invoke(currentState); } }
public override void Boot() { OnMachineBoot(); currentStateName = startingState; CurrentState.OnStateEnter(null); OnCurrentStateChange.Invoke(states[currentStateName], null); }
public override void ShutDown() { string previousStateName = currentStateName; CurrentState.OnStateQuit(null); currentStateName = ""; OnMachineShutDown(); OnCurrentStateChange.Invoke(null, states[previousStateName]); }
public override void Boot() { OnMachineBoot(); foreach (KeyValuePair <string, PlayerState> kv in states) { kv.Value.OnMachineBoot(); } currentStateName = startingState; CurrentState.OnStateEnter(null); OnCurrentStateChange.Invoke(states[currentStateName], null); }
public bool ChangeState(GameTileState newState) { bool changed = false; if (currentState.CanChangeState() && currentState != newState) { currentState = newState; changed = true; if (OnCurrentStateChange != null) { OnCurrentStateChange.Invoke(currentState); } } return(changed); }
public override void ShutDown() { string previousStateName = currentStateName; CurrentState.OnStateQuit(null); currentStateName = ""; OnCurrentStateChange.Invoke(null, states[previousStateName]); foreach (KeyValuePair <string, PlayerState> kv in states) { kv.Value.OnMachineShutDown(); } OnMachineShutDown(); }