using BlueWater.Interfaces; namespace BlueWater.Players.Tycoons { public class IdleState : IStateMachine { public void EnterState(TycoonPlayer character) { character.SpineController.PlayAnimation(TycoonPlayerSpineAnimation.Idle, true); } public void UpdateState(TycoonPlayer character) { if (character.TycoonMovement.IsMoving) { character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything() ? character.ServingState : character.WalkingState, character); } else if (character.IsMakingCocktail) { character.StateMachineController.TransitionToState(character.MakingCocktailState, character); } else if (character.IsCleaningFloor) { character.StateMachineController.TransitionToState(character.CleaningFloorState, character); } else if (character.IsCleaningTable) { character.StateMachineController.TransitionToState(character.CleaningTableState, character); } else if (!character.TycoonMovement.IsMoving) { if (character.TycoonPickupHandler.IsPickedUpAnything()) { character.StateMachineController.TransitionToState(character.ServingIdleState, character); } } } public void ExitState(TycoonPlayer character) { } } }