mirror of
https://github.com/RHeavenStudio/HeavenStudio.git
synced 2025-06-12 10:07:38 +02:00
Cadets' heads and bodies separated, "keep-up" no more
you have no use anymore keep-up
This commit is contained in:
@ -1,14 +1,15 @@
|
||||
//notes:
|
||||
// BEFORE NEW PROPS
|
||||
//1. minenice will also use this to test out randomly named parameters so coding has to rest until the new props update [DONE]
|
||||
//2. see fan club for separate prefabs (cadets) [DONE]
|
||||
//3. temporarily take sounds from rhre, wait until someone records the full code, including misses, or record it myself (unlikely) [IN PROGRESS]
|
||||
// - minenice will also use this to test out randomly named parameters so coding has to rest until the new props update [DONE]
|
||||
// - see fan club for separate prefabs (cadets) [DONE]
|
||||
// - temporarily take sounds from rhre, wait until someone records the full code, including misses, or record it myself (unlikely) [IN PROGRESS]
|
||||
// AFTER NEW PROPS
|
||||
//4. see space soccer, mr upbeat, tunnel for keep-the-beat codes
|
||||
//5. figure how to do custom bg changes when the upscaled textures are finished (see karate man, launch party once it releases)
|
||||
//6. will use a textbox without going through the visual options but i wonder how..?? (see first contact if ever textboxes are implemented in said minigame)
|
||||
// - testmod marching orders using speed
|
||||
// - see space soccer, mr upbeat, tunnel for keep-the-beat codes
|
||||
// - figure how to do custom bg changes when the upscaled textures are finished (see karate man, launch party once it releases)
|
||||
// - will use a textbox without going through the visual options but i wonder how..?? (see first contact if ever textboxes are implemented in said minigame)
|
||||
// AFTER FEATURE COMPLETION
|
||||
//7. delete all notes once the minigame is considered feature-complete
|
||||
// - delete all notes once the minigame is considered feature-complete
|
||||
|
||||
using HeavenStudio.Util;
|
||||
using System;
|
||||
@ -30,7 +31,12 @@ namespace HeavenStudio.Games.Loaders
|
||||
resizable = true
|
||||
},
|
||||
|
||||
//new GameAction("marching", delegate { MarchingOrders.instance.CadetsMarch(eventCaller.currentEntity.beat); }, 4f, true),
|
||||
new GameAction("marching", "Cadets March")
|
||||
{
|
||||
function = delegate { var e = eventCaller.currentEntity; MarchingOrders.instance.CadetsMarch(e.beat, e.length); },
|
||||
defaultLength = 4f,
|
||||
resizable = true
|
||||
},
|
||||
|
||||
new GameAction("attention", "Attention...")
|
||||
{
|
||||
@ -49,7 +55,8 @@ namespace HeavenStudio.Games.Loaders
|
||||
new GameAction("halt", "Halt!")
|
||||
{
|
||||
function = delegate { var e = eventCaller.currentEntity; MarchingOrders.instance.SargeHalt(e.beat); },
|
||||
defaultLength = 2f
|
||||
defaultLength = 2f,
|
||||
inactiveFunction = delegate { var e = eventCaller.currentEntity; MarchingOrders.HaltSound(e.beat);}
|
||||
},
|
||||
|
||||
//new GameAction("face turn", delegate {}, 4f, false, parameters: new List<Param>()
|
||||
@ -79,6 +86,7 @@ namespace HeavenStudio.Games
|
||||
|
||||
public GameEvent bop = new GameEvent();
|
||||
public GameEvent noBop = new GameEvent();
|
||||
public GameEvent marching = new GameEvent();
|
||||
|
||||
public static MarchingOrders instance;
|
||||
|
||||
@ -115,6 +123,17 @@ namespace HeavenStudio.Games
|
||||
}
|
||||
}
|
||||
|
||||
if (cond.ReportBeat(ref marching.lastReportedBeat, bop.startBeat % 1))
|
||||
{
|
||||
if (cond.songPositionInBeats >= marching.startBeat && cond.songPositionInBeats < marching.startBeat + marching.length)
|
||||
{
|
||||
Jukebox.PlayOneShotGame("marchingOrders/step1");
|
||||
Cadet1.DoScaledAnimationAsync("MarchL", 0.5f);
|
||||
Cadet2.DoScaledAnimationAsync("MarchL", 0.5f);
|
||||
Cadet3.DoScaledAnimationAsync("MarchL", 0.5f);
|
||||
}
|
||||
}
|
||||
|
||||
if (PlayerInput.Pressed() && !IsExpectingInputNow())
|
||||
{
|
||||
Jukebox.PlayOneShot("miss");
|
||||
@ -128,9 +147,10 @@ namespace HeavenStudio.Games
|
||||
bop.startBeat = beat;
|
||||
}
|
||||
|
||||
public void CadetsMarch(float beat)
|
||||
public void CadetsMarch(float beat, float length)
|
||||
{
|
||||
|
||||
marching.length = length;
|
||||
marching.startBeat = beat;
|
||||
}
|
||||
|
||||
public void SargeAttention(float beat)
|
||||
@ -169,11 +189,15 @@ namespace HeavenStudio.Games
|
||||
MultiSound.Play(new MultiSound.Sound[] {
|
||||
new MultiSound.Sound("marchingOrders/halt1", beat),
|
||||
new MultiSound.Sound("marchingOrders/halt2", beat + 1f),
|
||||
new MultiSound.Sound("marchingOrders/step1", beat + 1f),
|
||||
}, forcePlay:true);
|
||||
|
||||
BeatAction.New(Player, new List<BeatAction.Action>()
|
||||
{
|
||||
new BeatAction.Action(beat, delegate { Sarge.DoScaledAnimationAsync("Talk", 0.5f);}),
|
||||
new BeatAction.Action(beat + 1f, delegate { Cadet1.DoScaledAnimationAsync("Halt", 0.5f);}),
|
||||
new BeatAction.Action(beat + 1f, delegate { Cadet2.DoScaledAnimationAsync("Halt", 0.5f);}),
|
||||
new BeatAction.Action(beat + 1f, delegate { Cadet3.DoScaledAnimationAsync("Halt", 0.5f);}),
|
||||
});
|
||||
}
|
||||
|
||||
@ -192,6 +216,14 @@ namespace HeavenStudio.Games
|
||||
new MultiSound.Sound("marchingOrders/march1", beat),
|
||||
new MultiSound.Sound("marchingOrders/march2", beat + 1f),
|
||||
}, forcePlay:true);
|
||||
}
|
||||
|
||||
public static void HaltSound(float beat)
|
||||
{
|
||||
MultiSound.Play(new MultiSound.Sound[] {
|
||||
new MultiSound.Sound("marchingOrders/halt1", beat),
|
||||
new MultiSound.Sound("marchingOrders/halt2", beat + 1f),
|
||||
}, forcePlay:true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -34,7 +34,8 @@ namespace HeavenStudio.Games.Loaders
|
||||
new GameAction("keep-up", "")
|
||||
{
|
||||
defaultLength = 4f,
|
||||
resizable = true
|
||||
resizable = true,
|
||||
hidden = true
|
||||
},
|
||||
});
|
||||
}
|
||||
|
Reference in New Issue
Block a user