HeavenStudio/Assets/Scripts/Games/TapTrial/TapTrialPlayer.cs

57 lines
1.3 KiB
C#
Raw Normal View History

2022-02-19 21:03:45 +00:00
using UnityEngine;
2022-03-14 14:21:05 +00:00
using HeavenStudio.Util;
2022-02-28 07:05:57 +00:00
2022-03-14 14:21:05 +00:00
namespace HeavenStudio.Games.Scripts_TapTrial
2022-02-19 21:03:45 +00:00
{
public class TapTrialPlayer : MonoBehaviour
{
[Header("References")]
[System.NonSerialized] public Animator anim;
public float nextBeat;
public int tripleOffset = 0;
private void Awake()
2022-02-19 21:03:45 +00:00
{
anim = GetComponent<Animator>();
}
2022-02-28 07:05:57 +00:00
private void Update()
{
float normalizedBeat = Conductor.instance.GetPositionFromMargin(nextBeat, 1f);
2022-02-28 07:05:57 +00:00
if (PlayerInput.Pressed())
{
Tap(false, 0);
2022-02-28 07:05:57 +00:00
}
}
public void Tap(bool hit, int type)
2022-02-28 07:05:57 +00:00
{
if (hit)
Jukebox.PlayOneShotGame("tapTrial/tap");
else
Jukebox.PlayOneShotGame("tapTrial/tonk");
switch (type)
{
case 0:
anim.Play("Tap", 0, 0);
break;
case 1:
anim.Play("DoubleTap", 0, 0);
break;
case 2:
if(tripleOffset % 2 == 0)
anim.Play("DoubleTap", 0, 0);
else
anim.Play("Tap", 0, 0);
tripleOffset++;
break;
}
2022-02-28 07:05:57 +00:00
}
2022-02-19 21:03:45 +00:00
}
}