Music starts after Sound Options completed

Currently plays _OCEAN for testing, but will be changed to play _GONER when Journey In Modulating Time's short loop is ready.
Explicitly restricts the basic title screen's music from playing, too.
This commit is contained in:
toaster 2023-12-08 13:08:06 +00:00
parent f09c0a4b6c
commit c82d24b4bc
3 changed files with 15 additions and 4 deletions

View file

@ -1770,7 +1770,7 @@ void F_TitleScreenTicker(boolean run)
{
if (finalecount == 0)
{
if (!Music_Playing("title"))
if (cache_gametrulystarted && !Music_Playing("title"))
{
// Now start the music
Music_Loop("title", looptitle);

View file

@ -582,9 +582,6 @@ void M_StartControlPanel(void)
// Are you ready for the First Boot Experience?
M_ResetOptions();
currentMenu = &MAIN_GonerDef;
currentMenu->lastOn = 0;
Music_Remap("menu_nocred", "_GONER");
Music_Play("menu_nocred");
}
else if (cv_currprofile.value == -1) // Only ask once per session.
{

View file

@ -5,6 +5,7 @@
#include "../m_cond.h"
#include "../r_skins.h"
#include "../s_sound.h"
#include "../music.h"
#include "../p_local.h" // P_AutoPause
#include "../st_stuff.h" // faceprefix
#include "../v_draw.hpp"
@ -391,6 +392,15 @@ void M_GonerRailroad(bool set)
S_StartSound(NULL, sfx_s3k63);
}
void M_GonerPlayMusic(void)
{
if (gamedata->gonerlevel <= GDGONER_SOUND || Music_Playing("menu"))
return;
Music_Remap("menu", "_OCEAN"); //"_GONER");
Music_Play("menu");
}
void M_GonerHidePassword(void)
{
if (currentMenu->menuitems[0].mvar2)
@ -402,6 +412,8 @@ void M_GonerHidePassword(void)
{.routine = M_QuitSRB2}, 0, 1};
S_StartSound(NULL, sfx_s3k5b);
M_GonerPlayMusic();
}
void M_GonerResetText(void)
@ -488,6 +500,8 @@ void M_GonerTick(void)
goner_levelworking--;
}
M_GonerPlayMusic();
lastseenlevel = gamedata->gonerlevel;
}