Bug Fixes + Small Additions (#412)

* lotta stuffs

* dj school bug fixed
* dog ninja overhauled AGAIN. you can start a cue outside of the game now (something i planned months ago lol)
* also two objects will not overlap when they're the same but when they're not the same they will overlap
* commiting cause im gonna try half-recoding meat grinder
* also im trying to fix mrupbeat's beeping cuz oh my god how is this not fixed yet

* meat grinder finished + tap trial bug fixed + mute dog ninja

MUTE DOG NINJA ONLY WHEN INACTIVE ‼️

* last minute stuff + mr upbeat

i will be reworking mr upbeat in another branch but i wanna not bloat this pr any further so bleehhhh :P

* dj school final bug fix
This commit is contained in:
AstrlJelly
2023-05-07 00:45:44 -04:00
committed by GitHub
parent 8b63cce876
commit 36afef6f9e
13 changed files with 491 additions and 469 deletions

View File

@ -56,9 +56,9 @@ namespace HeavenStudio.Games.Loaders
},
new GameAction("dj voice lines", "DJ Yellow Banter")
{
function = delegate { DJSchool.instance.VoiceLines(eventCaller.currentEntity.beat, eventCaller.currentEntity["type"]); },
function = delegate { DJSchool.VoiceLines(eventCaller.currentEntity.beat, eventCaller.currentEntity["type"]); },
defaultLength = 2f,
inactiveFunction = delegate { DJSchool.WarnDJVoiceLines(eventCaller.currentEntity.beat, eventCaller.currentEntity["type"]); },
inactiveFunction = delegate { DJSchool.VoiceLines(eventCaller.currentEntity.beat, eventCaller.currentEntity["type"]); },
parameters = new List<Param>()
{
new Param("type", DJSchool.DJVoiceLines.CheckItOut, "Voice Lines", "The voice line to play"),
@ -343,34 +343,23 @@ namespace HeavenStudio.Games
{
if (djYellowHolding) return;
string[] sounds = new string[] { };
switch (type)
{
case 0:
sounds = new string[] { "djSchool/breakCmon1", "djSchool/breakCmon2", "djSchool/ooh" };
break;
case 1:
sounds = new string[] { "djSchool/breakCmonAlt1", "djSchool/breakCmonAlt2", "djSchool/oohAlt" };
break;
case 2:
sounds = new string[] { "djSchool/breakCmonLoud1", "djSchool/breakCmonLoud2", "djSchool/oohLoud" };
break;
}
string[] sounds = type switch {
0 => new string[] { "djSchool/breakCmon1", "djSchool/breakCmon2", "djSchool/ooh" },
1 => new string[] { "djSchool/breakCmonAlt1", "djSchool/breakCmonAlt2", "djSchool/oohAlt" },
2 => new string[] { "djSchool/breakCmonLoud1", "djSchool/breakCmonLoud2", "djSchool/oohLoud" },
};
if (doSound)
{
var sound = new MultiSound.Sound[]
{
new MultiSound.Sound(sounds[0], beat),
new MultiSound.Sound(sounds[1], beat + 1f, offset: 0.030f),
new MultiSound.Sound("", beat + 2f)
};
List<MultiSound.Sound> sound = new List<MultiSound.Sound>()
{
new MultiSound.Sound(sounds[0], beat),
new MultiSound.Sound(sounds[1], beat + 1f, offset: 0.030f),
};
if (ooh)
sound[2] = new MultiSound.Sound(sounds[2], beat + 2f);
if (ooh) sound.Add(new MultiSound.Sound(sounds[2], beat + 2f));
MultiSound.Play(sound);
MultiSound.Play(sound.ToArray());
}
@ -415,24 +404,21 @@ namespace HeavenStudio.Games
ScheduleInput(beat, 2f, InputType.STANDARD_DOWN, student.OnHitHold, student.OnMissHold, student.OnEmpty);
}
public void AndStop(float beat, bool ooh, bool doSound = true)
{
if (djYellowHolding) return;
if (doSound)
{
var sound = new MultiSound.Sound[]
List<MultiSound.Sound> sound = new List<MultiSound.Sound>()
{
new MultiSound.Sound("djSchool/andStop1", beat),
new MultiSound.Sound("djSchool/andStop2", beat + .5f, offset: 0.1200f),
new MultiSound.Sound("", beat + 1.5f)
new MultiSound.Sound("djSchool/andStop1", beat),
new MultiSound.Sound("djSchool/andStop2", beat + .5f, offset: 0.1200f),
};
if (ooh)
sound[2] = new MultiSound.Sound("djSchool/oohAlt", beat + 1.5f);
if (ooh) sound.Add(new MultiSound.Sound("djSchool/oohAlt", beat + 1.5f));
MultiSound.Play(sound);
MultiSound.Play(sound.ToArray());
}
@ -553,7 +539,7 @@ namespace HeavenStudio.Games
{
Student.soundFX = toggle;
}
public void VoiceLines(float beat, int type)
public static void VoiceLines(float beat, int type)
{
string[] sounds;
var sound = new MultiSound.Sound[] { };
@ -568,7 +554,7 @@ namespace HeavenStudio.Games
new MultiSound.Sound(sounds[2], beat + .5f),
};
MultiSound.Play(sound);
MultiSound.Play(sound, forcePlay: true);
break;
case 1:
@ -579,7 +565,7 @@ namespace HeavenStudio.Games
new MultiSound.Sound(sounds[1], beat + .5f),
};
MultiSound.Play(sound);
MultiSound.Play(sound, forcePlay: true);
break;
case 2:
@ -590,7 +576,7 @@ namespace HeavenStudio.Games
new MultiSound.Sound(sounds[1], beat + .5f),
};
MultiSound.Play(sound);
MultiSound.Play(sound, forcePlay: true);
break;
case 3:
@ -602,11 +588,11 @@ namespace HeavenStudio.Games
new MultiSound.Sound(sounds[2], beat + 1f),
};
MultiSound.Play(sound);
MultiSound.Play(sound, forcePlay: true);
break;
case 4:
Jukebox.PlayOneShotGame("djSchool/yay");
Jukebox.PlayOneShotGame("djSchool/yay", forcePlay: true);
break;
}
}
@ -614,110 +600,37 @@ namespace HeavenStudio.Games
#region Inactive Game Commands
public static void WarnBreakCmon(float beat, int type, bool ooh)
{
string[] sounds = new string[] { };
switch (type)
{
case 0:
sounds = new string[] { "djSchool/breakCmon1", "djSchool/breakCmon2", "djSchool/ooh" };
break;
case 1:
sounds = new string[] { "djSchool/breakCmonAlt1", "djSchool/breakCmonAlt2", "djSchool/oohAlt" };
break;
case 2:
sounds = new string[] { "djSchool/breakCmonLoud1", "djSchool/breakCmonLoud2", "djSchool/oohLoud" };
break;
}
var sound = new MultiSound.Sound[]
{
new MultiSound.Sound(sounds[0], beat),
new MultiSound.Sound(sounds[1], beat + 1f, offset: 0.030f),
new MultiSound.Sound("", beat + 2f)
string[] sounds = type switch {
0 => new string[] { "djSchool/breakCmon1", "djSchool/breakCmon2", "djSchool/ooh" },
1 => new string[] { "djSchool/breakCmonAlt1", "djSchool/breakCmonAlt2", "djSchool/oohAlt" },
2 => new string[] { "djSchool/breakCmonLoud1", "djSchool/breakCmonLoud2", "djSchool/oohLoud" },
};
if (ooh)
sound[2] = new MultiSound.Sound(sounds[2], beat + 2f);
List<MultiSound.Sound> sound = new List<MultiSound.Sound>()
{
new MultiSound.Sound(sounds[0], beat),
new MultiSound.Sound(sounds[1], beat + 1f, offset: 0.030f),
};
MultiSound.Play(sound, forcePlay: true);
if (ooh) sound.Add(new MultiSound.Sound(sounds[2], beat + 2f));
MultiSound.Play(sound.ToArray(), forcePlay: true);
wantBreak = beat;
}
public static void WarnAndStop(float beat, bool ooh)
{
var sound = new MultiSound.Sound[]
List<MultiSound.Sound> sound = new List<MultiSound.Sound>()
{
new MultiSound.Sound("djSchool/andStop1", beat),
new MultiSound.Sound("djSchool/andStop2", beat + .5f, offset: 0.1200f),
new MultiSound.Sound("", beat + 1.5f)
};
if (ooh)
sound[2] = new MultiSound.Sound("djSchool/oohAlt", beat + 1.5f);
if (ooh) sound.Add(new MultiSound.Sound("djSchool/oohAlt", beat + 1.5f));
MultiSound.Play(sound, forcePlay: true);
MultiSound.Play(sound.ToArray(), forcePlay: true);
wantAndStop = beat;
}
public static void WarnDJVoiceLines(float beat, int type)
{
string[] sounds;
var sound = new MultiSound.Sound[] { };
switch (type)
{
case 0:
sounds = new string[] { "djSchool/checkItOut1", "djSchool/checkItOut2", "djSchool/checkItOut3" };
sound = new MultiSound.Sound[]
{
new MultiSound.Sound(sounds[0], beat),
new MultiSound.Sound(sounds[1], beat + .25f),
new MultiSound.Sound(sounds[2], beat + .5f),
};
break;
case 1:
sounds = new string[] { "djSchool/letsGo1", "djSchool/letsGo2" };
sound = new MultiSound.Sound[]
{
new MultiSound.Sound(sounds[0], beat),
new MultiSound.Sound(sounds[1], beat + .5f),
};
break;
case 2:
sounds = new string[] { "djSchool/ohYeah1", "djSchool/ohYeah2" };
sound = new MultiSound.Sound[]
{
new MultiSound.Sound(sounds[0], beat),
new MultiSound.Sound(sounds[1], beat + .5f),
};
break;
case 3:
sounds = new string[] { "djSchool/ohYeahAlt1", "djSchool/ohYeahAlt2", "djSchool/ohYeahAlt3" };
sound = new MultiSound.Sound[]
{
new MultiSound.Sound(sounds[0], beat),
new MultiSound.Sound(sounds[1], beat + .5f),
new MultiSound.Sound(sounds[2], beat + 1f),
};
break;
case 4:
Jukebox.PlayOneShotGame("djSchool/yay");
break;
}
MultiSound.Play(sound, forcePlay: true);
wantDJVoiceLines = beat;
}
#endregion
}
}