- do not stop the music in the cross-game level-end handler.

Some maps require that it continues playing here.
This commit is contained in:
Christoph Oelckers 2020-09-27 20:42:55 +02:00
parent 9ab29f5975
commit 47c1c22ff7
3 changed files with 4 additions and 2 deletions

View file

@ -167,6 +167,7 @@ void GameInterface::LevelCompleted(MapRecord *map, int skill)
{
JobDesc job = { Create<DBloodSummaryScreen>() };
sndStartSample(268, 128, -1, false, CHANF_UI);
Mus_Stop();
RunScreenJob(&job, 1, [=](bool)
{
soundEngine->StopAllChannels();

View file

@ -163,7 +163,6 @@ static void GameTicker()
case ga_completed:
FX_StopAllSounds();
FX_SetReverb(0);
Mus_Stop();
if (g_nextmap == currentLevel)
{
// if the same level is restarted, skip any progression stuff like summary screens or cutscenes.

View file

@ -47,6 +47,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#include "core/menu/menu.h"
#include "d_net.h"
#include "automap.h"
#include "raze_music.h"
BEGIN_PS_NS
@ -221,7 +222,8 @@ void GameInterface::NewGame(MapRecord *map, int skill)
void GameInterface::LevelCompleted(MapRecord *map, int skill)
{
if (currentLevel->levelNumber == 0) gameaction = ga_mainmenu;
Mus_Stop();
if (currentLevel->levelNumber == 0) gameaction = ga_mainmenu;
else Intermission(currentLevel, map);
}