diff --git a/Assets/Scripts/Games/Lockstep/Lockstep.cs b/Assets/Scripts/Games/Lockstep/Lockstep.cs index fc7f1a9ca..cd3fcc2d6 100644 --- a/Assets/Scripts/Games/Lockstep/Lockstep.cs +++ b/Assets/Scripts/Games/Lockstep/Lockstep.cs @@ -1,6 +1,7 @@ /* I do not know crap about Unity or C# Almost none of this code is mine, but it's all fair game when the game you're stealing from borrowed from other games */ +//Don't worry Raffy everyone starts somewhere - Rasmus using HeavenStudio.Util; using System; @@ -275,7 +276,7 @@ namespace HeavenStudio.Games if (state >= 1f || state <= -1f) { var cond = Conductor.instance; - var beatAnimCheck = Math.Round(cond.songPositionInBeats * 2); + var beatAnimCheck = Math.Round(caller.startBeat * 2); if (beatAnimCheck % 2 != 0) { Jukebox.PlayOneShotGame("lockstep/tink"); @@ -288,13 +289,12 @@ namespace HeavenStudio.Games } return; } - Success(); + Success(caller.startBeat); } - public void Success() + public void Success(float beat) { - var cond = Conductor.instance; - var beatAnimCheck = Math.Round(cond.songPositionInBeats * 2); + var beatAnimCheck = Math.Round(beat * 2); if (beatAnimCheck % 2 != 0) { Jukebox.PlayOneShotGame($"lockstep/marchOffbeat{UnityEngine.Random.Range(1, 3)}"); @@ -309,8 +309,7 @@ namespace HeavenStudio.Games public void Miss(PlayerActionEvent caller) { - var cond = Conductor.instance; - var beatAnimCheck = Math.Round(cond.songPositionInBeats * 2); + var beatAnimCheck = Math.Round(caller.startBeat * 2); if (beatAnimCheck % 2 != 0 && currentMissStage != HowMissed.MissedOff) { diff --git a/Assets/Scripts/Games/MrUpbeat/MrUpbeat.cs b/Assets/Scripts/Games/MrUpbeat/MrUpbeat.cs index 87bdcc0db..060747ded 100644 --- a/Assets/Scripts/Games/MrUpbeat/MrUpbeat.cs +++ b/Assets/Scripts/Games/MrUpbeat/MrUpbeat.cs @@ -58,6 +58,7 @@ namespace HeavenStudio.Games public float beat; public bool goRight; } + bool startLeft; public static MrUpbeat instance; @@ -101,6 +102,14 @@ namespace HeavenStudio.Games }); } } + if (queuedInputs.Count % 2 != 0) + { + startLeft = true; + } + else + { + startLeft = false; + } queuedInputs.Clear(); } if (PlayerInput.Pressed() && !IsExpectingInputNow(InputType.STANDARD_DOWN)) @@ -132,7 +141,7 @@ namespace HeavenStudio.Games if (GameManager.instance.currentGame == "mrUpbeat") { float offSet = 0; - if (!MrUpbeat.instance.isPlaying(MrUpbeat.instance.metronomeAnim, "MetronomeIdle") && !MrUpbeat.instance.isPlaying(MrUpbeat.instance.metronomeAnim, "MetronomeGoRight")) + if (MrUpbeat.instance.startLeft) { offSet = 1; } @@ -157,6 +166,14 @@ namespace HeavenStudio.Games } } + if ((length + 1) % 2 != 0) + { + MrUpbeat.instance.startLeft = true; + } + else + { + MrUpbeat.instance.startLeft = false; + } } else { diff --git a/Assets/Scripts/Games/Tambourine/Tambourine.cs b/Assets/Scripts/Games/Tambourine/Tambourine.cs index 7c67fd520..00eb265d0 100644 --- a/Assets/Scripts/Games/Tambourine/Tambourine.cs +++ b/Assets/Scripts/Games/Tambourine/Tambourine.cs @@ -24,13 +24,13 @@ namespace HeavenStudio.Games.Loaders { function = delegate {var e = eventCaller.currentEntity; Tambourine.instance.MonkeyInput(e.beat, false); }, defaultLength = 0.5f, - priority = 1 + priority = 2 }, new GameAction("hit", "Hit") { function = delegate {var e = eventCaller.currentEntity; Tambourine.instance.MonkeyInput(e.beat, true); }, defaultLength = 0.5f, - priority = 1 + priority = 2 }, new GameAction("pass turn", "Pass Turn") {