CapersProject/Assets/02.Scripts/Character/Player/Tycoon/State/IdleState.cs

47 lines
1.6 KiB
C#
Raw Normal View History

2024-10-14 11:13:08 +00:00
using BlueWater.Interfaces;
namespace BlueWater.Players.Tycoons
{
2024-11-04 12:22:07 +00:00
public class IdleState : IStateMachine<TycoonPlayer>
2024-10-14 11:13:08 +00:00
{
public void EnterState(TycoonPlayer character)
{
character.SpineController.PlayAnimation(TycoonPlayerSpineAnimation.Idle, true);
}
public void UpdateState(TycoonPlayer character)
{
if (character.TycoonMovement.IsMoving)
{
2024-11-04 12:22:07 +00:00
character.StateMachineController.TransitionToState(character.TycoonPickupHandler.IsPickedUpAnything()
? character.ServingState
: character.WalkingState, character);
2024-10-14 11:13:08 +00:00
}
else if (character.IsMakingCocktail)
{
2024-11-04 12:22:07 +00:00
character.StateMachineController.TransitionToState(character.MakingCocktailState, character);
2024-10-14 11:13:08 +00:00
}
else if (character.IsCleaningFloor)
{
2024-11-04 12:22:07 +00:00
character.StateMachineController.TransitionToState(character.CleaningFloorState, character);
2024-10-14 11:13:08 +00:00
}
else if (character.IsCleaningTable)
{
2024-11-04 12:22:07 +00:00
character.StateMachineController.TransitionToState(character.CleaningTableState, character);
2024-10-14 11:13:08 +00:00
}
else if (!character.TycoonMovement.IsMoving)
{
2024-11-04 12:22:07 +00:00
if (character.TycoonPickupHandler.IsPickedUpAnything())
2024-10-14 11:13:08 +00:00
{
2024-11-04 12:22:07 +00:00
character.StateMachineController.TransitionToState(character.ServingIdleState, character);
2024-10-14 11:13:08 +00:00
}
}
}
public void ExitState(TycoonPlayer character)
{
}
}
}