Ending music and associated.

* Play the good or bad ending track, instead of perfect silence.
* Fade out the credits music over 5 seconds when the credits go to the evaluation (timed to have finished just before the "you unlocked this!" jingle).
This commit is contained in:
toaster 2019-11-15 15:58:25 +00:00
parent 0384cbb58a
commit 28c662b5a3

View file

@ -1385,6 +1385,8 @@ boolean F_CreditResponder(event_t *event)
void F_StartGameEvaluation(void) void F_StartGameEvaluation(void)
{ {
S_FadeOutStopMusic(5*MUSICRATE);
// Credits option in secrets menu // Credits option in secrets menu
if (cursaveslot == -1) if (cursaveslot == -1)
{ {
@ -1638,7 +1640,7 @@ void F_StartEnding(void)
gameaction = ga_nothing; gameaction = ga_nothing;
paused = false; paused = false;
CON_ToggleOff(); CON_ToggleOff();
S_StopMusic(); // todo: placeholder S_StopMusic();
S_StopSounds(); S_StopSounds();
finalecount = -10; // what? this totally isn't a hack. why are you asking? finalecount = -10; // what? this totally isn't a hack. why are you asking?
@ -1719,6 +1721,9 @@ void F_EndingTicker(void)
return; return;
} }
if (finalecount == -8)
S_ChangeMusicInternal((goodending ? "_endg" : "_endb"), false);
if (goodending && finalecount == INFLECTIONPOINT) // time to swap some assets if (goodending && finalecount == INFLECTIONPOINT) // time to swap some assets
{ {
endegrk[0] = W_CachePatchName("ENDEGRK2", PU_LEVEL); endegrk[0] = W_CachePatchName("ENDEGRK2", PU_LEVEL);