Files
SimUL/Assets/Scripts/InteractableObjects/Bed.cs
T
2023-03-14 20:53:29 +02:00

36 lines
895 B
C#

using System;
public class Bed : BaseInteractableObject
{
private Player _player;
public override void Interact(Player player)
{
_player = player;
_player.SetPlayerAnimation(AnimationStates.Sitting, OnAnimationFinished);
}
private void OnAnimationFinished()
{
TimeManager.Instance.Pause();
SliderUI.Instance.ShowTimeSliderDialog("Go to sleep", "Sleep until", OnCancel,OnConfirm);
}
private void OnCancel()
{
TimeManager.Instance.Resume();
OnFastForwardEnd();
}
private void OnConfirm(TimeSpan time)
{
_player.SetPlayerActing(PlayerStates.Sleeping);
TimeManager.Instance.FastForward(time, OnFastForwardEnd);
}
private void OnFastForwardEnd()
{
_player.SetPlayerActing(PlayerStates.Awake);
_player.SetPlayerAnimation(AnimationStates.Standing);
}
}