// Create controller & set direction private void Awake() { // Update direction _stunElapsed = 0f; characterState = (GridCharacterState)(-1); UpdateDirection(Direction.None); }
// Set state & call delegate private void SetState(GridCharacterState newState) { if (characterState != newState) { characterState = newState; if (onStageChange != null) { onStageChange(characterState); } } }
// State change private void CharacterStateChanged(GridCharacterState state) { _animator.SetBool("Idling", state == GridCharacterState.Idle || state == GridCharacterState.Stunned); _animator.SetBool("Walking", state == GridCharacterState.Walking || state == GridCharacterState.Pushing); }