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