diff --git a/Assets/Resources/Sfx/games/chargingChicken/SE_NTR_ROBOT_EN_BAKUHATU_PITCH100.wav b/Assets/Resources/Sfx/games/chargingChicken/SE_NTR_ROBOT_EN_BAKUHATU_PITCH100.wav new file mode 100644 index 000000000..8e9a3fc5e Binary files /dev/null and b/Assets/Resources/Sfx/games/chargingChicken/SE_NTR_ROBOT_EN_BAKUHATU_PITCH100.wav differ diff --git a/Assets/Resources/Sfx/games/chargingChicken/SE_NTR_ROBOT_EN_BAKUHATU_PITCH100.wav.meta b/Assets/Resources/Sfx/games/chargingChicken/SE_NTR_ROBOT_EN_BAKUHATU_PITCH100.wav.meta new file mode 100644 index 000000000..1e5e59067 --- /dev/null +++ b/Assets/Resources/Sfx/games/chargingChicken/SE_NTR_ROBOT_EN_BAKUHATU_PITCH100.wav.meta @@ -0,0 +1,22 @@ +fileFormatVersion: 2 +guid: e6cc053191752f346a618141f7dbf38b +AudioImporter: + externalObjects: {} + serializedVersion: 6 + defaultSettings: + loadType: 0 + sampleRateSetting: 0 + sampleRateOverride: 44100 + compressionFormat: 1 + quality: 1 + conversionMode: 0 + platformSettingOverrides: {} + forceToMono: 0 + normalize: 1 + preloadAudioData: 1 + loadInBackground: 0 + ambisonic: 0 + 3D: 1 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scripts/Games/ChargingChicken/ChargingChicken.cs b/Assets/Scripts/Games/ChargingChicken/ChargingChicken.cs index 8513adf41..6c59c806c 100644 --- a/Assets/Scripts/Games/ChargingChicken/ChargingChicken.cs +++ b/Assets/Scripts/Games/ChargingChicken/ChargingChicken.cs @@ -24,10 +24,11 @@ namespace HeavenStudio.Games.Loaders if (eventCaller.gameManager.minigameObj.TryGetComponent(out ChargingChicken instance)) { instance.ChargeUp(e.beat, e.length, 4 /*e["forceHold"]*/, e["drumbeat"], e["bubble"], e["endText"], e["textLength"], e["success"], e["fail"], e["destination"], e["customDestination"]); } - ChargingChicken.CountIn(e.beat); + ChargingChicken.CountIn(e.beat, e["cowbell"]); }, parameters = new List() { + new Param("cowbell", true, "Cue Sound", "Choose whether to play the cue sound for this charge."), new Param("drumbeat", ChargingChicken.DrumLoopList.Straight, "Drum Beat", "Choose which drum beat to play while filling."), new Param("bubble", false, "Countdown Bubble", "Choose whether the counting bubble will spawn for this input."), //ending text @@ -136,6 +137,16 @@ namespace HeavenStudio.Games.Loaders }), } }, + new GameAction("explodehaha", "Force Explosion") + { + function = delegate { + var e = eventCaller.currentEntity; + if (eventCaller.gameManager.minigameObj.TryGetComponent(out ChargingChicken instance)) { + instance.ExplodeButFunee(); + } + }, + defaultLength = 0.5f, + }, }, new List() { "ctr", "aim" }, "ctrChargingChicken", "en", @@ -640,8 +651,10 @@ namespace HeavenStudio.Games //chicken methods #region Chicken Methods - public static void CountIn(double beat) + public static void CountIn(double beat, bool enabled = true) { + if (!enabled) return; //i trust that you can figure out what this does lol + //cowbell count in MultiSound.Play(new MultiSound.Sound[] { @@ -1145,6 +1158,9 @@ namespace HeavenStudio.Games stone.journeyEnd = ((a.stoneNumber + 1) * platformDistanceConstant) + (platformDistanceConstant / 2); } + //boom + SoundByte.PlayOneShotGame("chargingChicken/SE_NTR_ROBOT_EN_BAKUHATU_PITCH100", pitch: SoundByte.GetPitchFromCents(UnityEngine.Random.Range(-150, 151), false), volume: 0.5f); + //erase text yardsTextIsEditable = false; yardsText.text = ""; @@ -1158,6 +1174,29 @@ namespace HeavenStudio.Games ChickenRespawn(Math.Min(length / 2, 3)); } + public void ExplodeButFunee() + { + if (currentIsland == null) currentIsland = nextIsland; + + //just in case + isInputting = false; + + //boom + SoundByte.PlayOneShotGame("chargingChicken/SE_NTR_ROBOT_EN_BAKUHATU_PITCH100", pitch: SoundByte.GetPitchFromCents(UnityEngine.Random.Range(-150, 151), false), volume: 0.5f); + + //erase text + yardsTextIsEditable = false; + yardsText.text = ""; + + //despawn the counting bubble + countBubble.SetActive(false); + + //burn animation + ChickenAnim.DoScaledAnimationAsync("Gone", 0.5f); + currentIsland.FakeChickenAnim.DoScaledAnimationAsync("Burn", 0.5f); + nextIsland.FakeChickenAnim.DoScaledAnimationAsync("Burn", 0.5f); + } + public void ChickenFall(bool fellTooFar) { if (!fellTooFar)