CapersProject/Assets/02.Scripts/Character/Npc/Customer/State/VomitState.cs
2024-12-06 22:20:10 +09:00

37 lines
1.0 KiB
C#

using BlueWater.Audios;
using BlueWater.Interfaces;
namespace BlueWater.Npcs.Customers
{
public class VomitState : IStateMachine<Customer>
{
private string _vomitSfxName = "Vomit";
private bool _isVomiting;
public void EnterState(Customer character)
{
character.SpineController.PlayAnimation(CustomerSpineAnimation.VomitingForm, false);
}
public void UpdateState(Customer character)
{
if (!_isVomiting && character.SpineController.IsAnimationComplete())
{
AudioManager.Instance.PlaySfx(_vomitSfxName);
character.SpineController.PlayAnimation(CustomerSpineAnimation.Vomiting, false);
_isVomiting = true;
}
if (_isVomiting && character.SpineController.IsAnimationComplete())
{
character.InstanceVomit();
}
}
public void ExitState(Customer character)
{
}
}
}