Instead of tying vape mode to music sync, make it (two) tune-specific properties.

Currently also affects Intermission (without nightcore), but it can be manually applied to other tracks as well
This commit is contained in:
toaster 2023-10-23 23:18:46 +01:00
parent bc8c044bb3
commit 0784acea49
2 changed files with 10 additions and 3 deletions

View file

@ -31,6 +31,8 @@ void Music_Init(void)
tune.resume_fade_in = 750;
tune.sync = true;
tune.credit = true;
tune.vapes = true;
tune.nightcoreable = true;
}
{
@ -75,6 +77,7 @@ void Music_Init(void)
tune.song = "racent";
tune.priority = 40;
tune.vapes = true;
}
{

View file

@ -62,6 +62,10 @@ public:
// resumed).
bool credit = false;
// This tune will vape in encoremode contexts.
bool vapes = false;
bool nightcoreable = false;
// Start playing this number of tics into the tune.
tic_t seek = 0;
@ -84,10 +88,10 @@ public:
float speed() const
{
// Sync is checked first because it's synced with the level context. Get it?
if (sync && encoremode && gamestate == GS_LEVEL)
// Apply to all tunes that support vape mode.
if (encoremode && vapes)
{
if (K_CheckBossIntro())
if (nightcoreable && K_CheckBossIntro())
{
// In Versus, the vape makes you think you can start a nightcore YT channel
return (1.f/encoremul);