From ced59446a1dca092b5af1c1e2fb6e4f9d58ac349 Mon Sep 17 00:00:00 2001 From: ThePurpleAnon <100617766+ThePurpleAnon@users.noreply.github.com> Date: Thu, 1 Feb 2024 18:40:53 -0600 Subject: [PATCH] Upbeat blip length (#675) * Implementation actually implemented the slider, waiting on zeo's word for polish * Non-placeholder text ty zeo --- Assets/Scripts/Games/MrUpbeat/MrUpbeat.cs | 6 ++++-- Assets/Scripts/Games/MrUpbeat/UpbeatMan.cs | 8 +++++--- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/Assets/Scripts/Games/MrUpbeat/MrUpbeat.cs b/Assets/Scripts/Games/MrUpbeat/MrUpbeat.cs index e5dce774..2edc9cc6 100644 --- a/Assets/Scripts/Games/MrUpbeat/MrUpbeat.cs +++ b/Assets/Scripts/Games/MrUpbeat/MrUpbeat.cs @@ -77,7 +77,7 @@ namespace HeavenStudio.Games.Loaders { function = delegate { var e = eventCaller.currentEntity; - MrUpbeat.instance.BlipEvents(e["letter"], e["shouldGrow"], e["resetBlip"], e["shouldBlip"]); + MrUpbeat.instance.BlipEvents(e["letter"], e["shouldGrow"], e["resetBlip"], e["shouldBlip"], e["blipLength"]); }, defaultLength = 0.5f, parameters = new List() @@ -86,6 +86,7 @@ namespace HeavenStudio.Games.Loaders new Param("shouldGrow", true, "Grow Antenna", "Toggle if Mr. Upbeat's antennashould grow on every blip"), new Param("resetBlip", false, "Reset Antenna", "Toggle if Mr. Upbeat's antenna should reset"), new Param("shouldBlip", true, "Should Blip", "Toggle if Mr. Upbeat's antenna should blip every offbeat."), + new Param("blipLength", new EntityTypes.Integer(0, 4, 4), "Text Blip Requirement", "Set how many blips it will take for the text to appear on Mr. Upbeatā€™s antenna."), } }, new GameAction("fourBeatCountInOffbeat", "4 Beat Count-In") @@ -356,12 +357,13 @@ namespace HeavenStudio.Games } } - public void BlipEvents(string inputLetter, bool shouldGrow, bool resetBlip, bool shouldBlip) + public void BlipEvents(string inputLetter, bool shouldGrow, bool resetBlip, bool shouldBlip, int blipLength) { if (resetBlip) man.blipSize = 0; man.shouldGrow = shouldGrow; man.blipString = inputLetter; man.shouldBlip = shouldBlip; + man.blipLength = blipLength; } public static void Count(int number) diff --git a/Assets/Scripts/Games/MrUpbeat/UpbeatMan.cs b/Assets/Scripts/Games/MrUpbeat/UpbeatMan.cs index 97558de5..ae98bf75 100644 --- a/Assets/Scripts/Games/MrUpbeat/UpbeatMan.cs +++ b/Assets/Scripts/Games/MrUpbeat/UpbeatMan.cs @@ -19,6 +19,7 @@ namespace HeavenStudio.Games.Scripts_MrUpbeat public bool shouldGrow; public bool shouldBlip = true; public string blipString = "M"; + public int blipLength = 4; public bool canStep = false; // just disabled when you normally couldn't step, which is anything less than 2 beats before you would start stepping and any time after the Ding! public bool canStepFromAnim = true; // disabled when stepping, then reenabled in the animation events. you can step JUST BARELY before the animation ends in fever @@ -57,12 +58,13 @@ namespace HeavenStudio.Games.Scripts_MrUpbeat public void Blipping() { + int blipLengthReal = blipLength - 4; SoundByte.PlayOneShotGame("mrUpbeat/blip"); - blipAnim.Play("Blip" + (blipSize + 1), 0, 0); - blipText.gameObject.SetActive(blipSize >= 4); + blipAnim.Play("Blip" + (blipSize + 1 - blipLengthReal), 0, 0); + blipText.gameObject.SetActive(blipSize - blipLengthReal >= 4); blipText.text = blipString != "" ? blipString : ""; - if (shouldGrow && blipSize < 4) blipSize++; + if (shouldGrow && blipSize - blipLengthReal < 4) blipSize++; } public void Step(bool isInput = false)