From 47a711f45785f2014eca2dab926cff2204c4dd31 Mon Sep 17 00:00:00 2001
From: ThePurpleAnon <100617766+ThePurpleAnon@users.noreply.github.com>
Date: Sun, 21 Jan 2024 00:46:56 -0600
Subject: [PATCH] Finished boings/added short pun animations
self explanatory
---
Assets/Scripts/Games/Manzai/Manzai.cs | 91 +++++++++++++++++----------
1 file changed, 57 insertions(+), 34 deletions(-)
diff --git a/Assets/Scripts/Games/Manzai/Manzai.cs b/Assets/Scripts/Games/Manzai/Manzai.cs
index 64dd0e64f..8683b4f82 100644
--- a/Assets/Scripts/Games/Manzai/Manzai.cs
+++ b/Assets/Scripts/Games/Manzai/Manzai.cs
@@ -37,7 +37,7 @@ namespace HeavenStudio.Games.Loaders
function = delegate {
var e = eventCaller.currentEntity;
- Manzai.instance.DoPun(e.beat, e["boing"]); },
+ Manzai.instance.DoPun(e.beat, e["boing"], e["pun"]); },
defaultLength = 4,
parameters = new List()
@@ -222,7 +222,7 @@ namespace HeavenStudio.Games
}
}
- public void DoPun(double beat, int isBoing)
+ public void DoPun(double beat, int isBoing, int whichPun)
{
int punOrBoing = isBoing;
@@ -231,14 +231,14 @@ namespace HeavenStudio.Games
// punOrBoing = UnityEngine.Random.Range(0, 5) % 2;
//}
- if(punOrBoing == (int)Manzai.BoingType.Normal)
+ if (punOrBoing == (int)Manzai.BoingType.Normal)
{
- DoPunHai(beat);
+ DoPunHai(beat, whichPun);
}
- if(punOrBoing == (int)Manzai.BoingType.Boing)
+ if (punOrBoing == (int)Manzai.BoingType.Boing)
{
- DoPunBoing(beat);
+ DoPunBoing(beat, whichPun);
}
//Debug.Log(punOrBoing);
}
@@ -249,35 +249,49 @@ namespace HeavenStudio.Games
float pitch = isPitched ? Conductor.instance.songBpm/98 : 1;
var sounds = new List();
int boing = isBoing;
+ int length = boingLengths.GetValueOrDefault(punName);
+ int syllables = boing == 0 ? 9 : (length != 0 ? length : 4);
- Debug.Log(boingLengths[punName]);
+ Debug.Log(length);
- for (int i = 0; i < (boing == 1 ? 9 : (boingLengths[punName])); i++) {
+ for (int i = 0; i < syllables; i++) {
sounds.Add(new MultiSound.Sound($"manzai/{punName}{i + 1}", beat + (i * 0.25), pitch, offset: i == 0 ? 0.05 : 0));
- Debug.Log(punName + i);
}
- sounds.Add(new MultiSound.Sound("manzai/boing", boingLengths[punName] == 6 ? beat + 1.50 : beat + 1.25 , pitch));
+ if (isBoing == 1)
+ {
+ sounds.Add(new MultiSound.Sound("manzai/boing", syllables == 6 ? beat + 1.50 : beat + 1.25 , pitch));
+ }
MultiSound.Play(sounds.ToArray(), forcePlay: true);
}
- public void DoPunHai(double beat)
+ public void DoPunHai(double beat, int whichPun)
{
int bubbleAnimation = UnityEngine.Random.Range(0, 2);
+ var punName= Enum.GetName(typeof(Puns), whichPun);
ScheduleInput(beat, 2.5f, InputAction_BasicPress, bubbleAnimation == 0 ? HaiJustL : HaiJustR, HaiMiss, Nothing);
ScheduleInput(beat, 3.0f, InputAction_BasicPress, bubbleAnimation == 0 ? HaiJustR : HaiJustL, HaiMiss, Nothing);
- BeatAction.New(instance, new List()
+
+ if ((punName == "DenwariDenwa") || (punName == "IkugawaIkura") || (punName == "KusagaKusai") || (punName == "SarugaSaru"))
{
- new BeatAction.Action(beat + 0.0f, delegate { VultureAnim.DoScaledAnimationAsync("Talk", 0.5f); }),
-
- new BeatAction.Action(beat + 0.5f, delegate { VultureAnim.DoScaledAnimationAsync("Talk", 0.5f); }),
-
- new BeatAction.Action(beat + 1.0f, delegate { VultureAnim.DoScaledAnimationAsync("Talk", 0.5f); }),
-
- new BeatAction.Action(beat + 1.5f, delegate { VultureAnim.DoScaledAnimationAsync("Talk", 0.5f); }),
- });
+ BeatAction.New(instance, new List()
+ {
+ new BeatAction.Action(beat + 0.0f, delegate { VultureAnim.DoScaledAnimationAsync("Talk", 0.5f); }),
+ new BeatAction.Action(beat + 0.5f, delegate { VultureAnim.DoScaledAnimationAsync("Talk", 0.5f); }),
+ });
+ }
+ else
+ {
+ BeatAction.New(instance, new List()
+ {
+ new BeatAction.Action(beat + 0.0f, delegate { VultureAnim.DoScaledAnimationAsync("Talk", 0.5f); }),
+ new BeatAction.Action(beat + 0.5f, delegate { VultureAnim.DoScaledAnimationAsync("Talk", 0.5f); }),
+ new BeatAction.Action(beat + 1.0f, delegate { VultureAnim.DoScaledAnimationAsync("Talk", 0.5f); }),
+ new BeatAction.Action(beat + 1.5f, delegate { VultureAnim.DoScaledAnimationAsync("Talk", 0.5f); }),
+ });
+ }
}
public void HaiJustFull()
@@ -310,25 +324,34 @@ namespace HeavenStudio.Games
//VultureAnim.DoScaledAnimationAsync("Bop", 0.5f);
}
- public void DoPunBoing(double beat)
+ public void DoPunBoing(double beat, int whichPun)
{
int bubbleAnimation = UnityEngine.Random.Range(0, 2);
-
- //SoundByte.PlayOneShotGame("manzai/"+sfxDefs[1].sfx, pitch: Conductor.instance.songBpm/98);
+ var punName= Enum.GetName(typeof(Puns), whichPun);
ScheduleInput(beat, 2.5f, InputAction_BasicPress, BoingJust, BoingMiss, Nothing);
- BeatAction.New(instance, new List()
+
+ if ((punName == "DenwariDenwa") || (punName == "IkugawaIkura") || (punName == "KusagaKusai") || (punName == "SarugaSaru"))
{
- new BeatAction.Action(beat + 0.00f, delegate { VultureAnim.DoScaledAnimationAsync("Talk", 0.5f); }),
-
- new BeatAction.Action(beat + 0.50f, delegate { VultureAnim.DoScaledAnimationAsync("Talk", 0.5f); }),
-
- new BeatAction.Action(beat + 1.00f, delegate { VultureAnim.DoScaledAnimationAsync("Talk", 0.5f); }),
-
- new BeatAction.Action(beat + 1.25f, delegate { VultureAnim.DoScaledAnimationAsync("Boing", 0.5f); }),
-
- new BeatAction.Action(beat + 2.00f, delegate { RavenAnim.DoScaledAnimationAsync("Ready", 0.5f); }),
- });
+ BeatAction.New(instance, new List()
+ {
+ new BeatAction.Action(beat + 0.00f, delegate { VultureAnim.DoScaledAnimationAsync("Talk", 0.5f); }),
+ new BeatAction.Action(beat + 0.50f, delegate { VultureAnim.DoScaledAnimationAsync("Talk", 0.5f); }),
+ new BeatAction.Action(beat + 1.25f, delegate { VultureAnim.DoScaledAnimationAsync("Boing", 0.5f); }),
+ new BeatAction.Action(beat + 2.00f, delegate { RavenAnim.DoScaledAnimationAsync("Ready", 0.5f); }),
+ });
+ }
+ else
+ {
+ BeatAction.New(instance, new List()
+ {
+ new BeatAction.Action(beat + 0.00f, delegate { VultureAnim.DoScaledAnimationAsync("Talk", 0.5f); }),
+ new BeatAction.Action(beat + 0.50f, delegate { VultureAnim.DoScaledAnimationAsync("Talk", 0.5f); }),
+ new BeatAction.Action(beat + 1.00f, delegate { VultureAnim.DoScaledAnimationAsync("Talk", 0.5f); }),
+ new BeatAction.Action(beat + 1.25f, delegate { VultureAnim.DoScaledAnimationAsync("Boing", 0.5f); }),
+ new BeatAction.Action(beat + 2.00f, delegate { RavenAnim.DoScaledAnimationAsync("Ready", 0.5f); }),
+ });
+ }
}
public void BoingJust(PlayerActionEvent caller, float state)