mirror of
https://github.com/RHeavenStudio/HeavenStudio.git
synced 2025-06-12 08:37:37 +02:00
Lots of tweaks, fixes and small additions + bop fixes and bop parity across almost all games with bops. (#331)
* Rhythm rally and cheer readers improvements * Autobop for fan club * Implemented new bop parity for fan club, rhythm rally and ssds * Air rally easing improvements * Fixed drumming practice stuff * Tap trial has been unjankified yet again * Cheer readers and catchy tune bops * More bop parity * MORE!!!! * That should be all of them except space dance and dj school --------- Co-authored-by: minenice55 <star.elementa@gmail.com>
This commit is contained in:
@ -19,12 +19,13 @@ namespace HeavenStudio.Games.Loaders
|
||||
{
|
||||
new GameAction("bop", "Bop")
|
||||
{
|
||||
function = delegate { var e = eventCaller.currentEntity; Lockstep.instance.Bop(e.beat, e["toggle"]); },
|
||||
function = delegate { var e = eventCaller.currentEntity; Lockstep.instance.Bop(e.beat, e.length, e["toggle"], e["toggle2"]); },
|
||||
resizable = true,
|
||||
parameters = new List<Param>()
|
||||
{
|
||||
new Param("toggle", false, "Reset Pose", "Resets to idle pose.")
|
||||
new Param("toggle", true, "Bop", "Should the stepswitchers bop?"),
|
||||
new Param("toggle2", false, "Bop (Auto)", "Should the stepswitchers auto bop?"),
|
||||
},
|
||||
defaultLength = 1f,
|
||||
},
|
||||
new GameAction("marching", "Stepping")
|
||||
{
|
||||
@ -115,6 +116,8 @@ namespace HeavenStudio.Games
|
||||
MissedOn = 2
|
||||
}
|
||||
bool offColorActive;
|
||||
bool goBop;
|
||||
public GameEvent bop = new GameEvent();
|
||||
|
||||
public static Lockstep instance;
|
||||
|
||||
@ -135,6 +138,15 @@ namespace HeavenStudio.Games
|
||||
var cond = Conductor.instance;
|
||||
if (cond.isPlaying && !cond.isPaused)
|
||||
{
|
||||
if (cond.ReportBeat(ref bop.lastReportedBeat, bop.startBeat % 1))
|
||||
{
|
||||
if (goBop)
|
||||
{
|
||||
stepswitcher0.DoScaledAnimationAsync("Bop", 0.5f);
|
||||
stepswitcher1.DoScaledAnimationAsync("Bop", 0.5f);
|
||||
stepswitcherP.DoScaledAnimationAsync("Bop", 0.5f);
|
||||
}
|
||||
}
|
||||
if (queuedInputs.Count > 0)
|
||||
{
|
||||
foreach (var input in queuedInputs)
|
||||
@ -160,21 +172,23 @@ namespace HeavenStudio.Games
|
||||
|
||||
}
|
||||
|
||||
public void Bop(float beat, bool reset)
|
||||
public void Bop(float beat, float length, bool shouldBop, bool autoBop)
|
||||
{
|
||||
if (reset)
|
||||
goBop = autoBop;
|
||||
if (shouldBop)
|
||||
{
|
||||
stepswitcher0.DoScaledAnimationAsync("BopReset", 0.5f);
|
||||
stepswitcher1.DoScaledAnimationAsync("BopReset", 0.5f);
|
||||
stepswitcherP.DoScaledAnimationAsync("BopReset", 0.5f);
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
stepswitcher0.DoScaledAnimationAsync("Bop", 0.5f);
|
||||
stepswitcher1.DoScaledAnimationAsync("Bop", 0.5f);
|
||||
stepswitcherP.DoScaledAnimationAsync("Bop", 0.5f);
|
||||
|
||||
for (int i = 0; i < length; i++)
|
||||
{
|
||||
BeatAction.New(instance.gameObject, new List<BeatAction.Action>()
|
||||
{
|
||||
new BeatAction.Action(beat + i, delegate
|
||||
{
|
||||
stepswitcher0.DoScaledAnimationAsync("Bop", 0.5f);
|
||||
stepswitcher1.DoScaledAnimationAsync("Bop", 0.5f);
|
||||
stepswitcherP.DoScaledAnimationAsync("Bop", 0.5f);
|
||||
})
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user