Game End cleanup

- Remove specific gamestate, drawer, etc
- Just add an extra fade straight into G_EndGame
This commit is contained in:
toaster 2023-06-20 23:22:17 +01:00
parent 43044ec032
commit c89048def7
9 changed files with 8 additions and 75 deletions

View file

@ -476,10 +476,6 @@ static void D_Display(void)
HU_Drawer();
break;
case GS_GAMEEND:
F_GameEndDrawer();
break;
case GS_EVALUATION:
F_GameEvaluationDrawer();
HU_Erase();

View file

@ -3365,14 +3365,6 @@ void readwipes(MYFILE *f)
else if (fastcmp(pword, "FINAL"))
wipeoffset = wipe_evaluation_final;
}
else if (fastncmp(word, "GAMEEND_", 8))
{
pword = word + 8;
if (fastcmp(pword, "TOBLACK"))
wipeoffset = wipe_gameend_toblack;
else if (fastcmp(pword, "FINAL"))
wipeoffset = wipe_gameend_final;
}
else if (fastncmp(word, "CEREMONY_", 9))
{
pword = word + 9;

View file

@ -6835,7 +6835,6 @@ struct int_const_s const INT_CONST[] = {
{"GS_MENU",GS_MENU},
{"GS_CREDITS",GS_CREDITS},
{"GS_EVALUATION",GS_EVALUATION},
{"GS_GAMEEND",GS_GAMEEND},
{"GS_INTRO",GS_INTRO},
{"GS_ENDING",GS_ENDING},
{"GS_CUTSCENE",GS_CUTSCENE},

View file

@ -904,7 +904,7 @@ void F_StartGameEvaluation(void)
// Credits option in extras menu
if (cursaveslot == -1)
{
S_FadeOutStopMusic(2*MUSICRATE);
S_FadeOutStopMusic(MUSICRATE/2);
F_StartGameEnd();
return;
}
@ -1625,44 +1625,16 @@ void F_EndingDrawer(void)
// ==========
void F_StartGameEnd(void)
{
G_SetGamestate(GS_GAMEEND);
// Early fadeout to let the sound finish playing
F_WipeStartScreen();
V_DrawFill(0, 0, BASEVIDWIDTH, BASEVIDHEIGHT, 31);
F_WipeEndScreen();
F_RunWipe(wipe_level_toblack, wipedefs[wipe_level_toblack], false, "FADEMAP0", false, false);
gameaction = ga_nothing;
paused = false;
CON_ToggleOff();
S_StopSounds();
// In case menus are still up?!!
M_ClearMenus(true);
timetonext = TICRATE;
nextmap = NEXTMAP_TITLE;
G_EndGame();
}
//
// F_GameEndDrawer
//
void F_GameEndDrawer(void)
{
// this function does nothing
}
//
// F_GameEndTicker
//
void F_GameEndTicker(void)
{
if (timetonext > 0)
{
timetonext--;
}
else
{
nextmap = NEXTMAP_TITLE;
G_EndGame();
}
}
// ==============
// TITLE SCREEN
// ==============

View file

@ -33,7 +33,6 @@ boolean F_CutsceneResponder(event_t *ev);
boolean F_CreditResponder(event_t *ev);
// Called by main loop.
void F_GameEndTicker(void);
void F_IntroTicker(void);
void F_TitleScreenTicker(boolean run);
void F_CutsceneTicker(void);
@ -41,7 +40,6 @@ void F_TitleDemoTicker(void);
void F_TextPromptTicker(void);
// Called by main loop.
void F_GameEndDrawer(void);
void F_IntroDrawer(void);
void F_TitleScreenDrawer(void);
void F_SkyScroll(INT32 scrollxspeed, INT32 scrollyspeed, const char *patchname);
@ -173,7 +171,6 @@ enum
wipe_menu_toblack,
wipe_credits_toblack,
wipe_evaluation_toblack,
wipe_gameend_toblack,
wipe_ceremony_toblack,
wipe_intro_toblack,
wipe_ending_toblack,
@ -192,7 +189,6 @@ enum
wipe_menu_final,
wipe_credits_final,
wipe_evaluation_final,
wipe_gameend_final,
wipe_ceremony_final,
wipe_intro_final,
wipe_ending_final,

View file

@ -63,7 +63,6 @@ UINT8 wipedefs[NUMWIPEDEFS] = {
1, // wipe_menu_toblack
99, // wipe_credits_toblack
0, // wipe_evaluation_toblack
0, // wipe_gameend_toblack
0, // wipe_ceremony_toblack
UINT8_MAX, // wipe_intro_toblack (hardcoded)
99, // wipe_ending_toblack (hardcoded)
@ -80,7 +79,6 @@ UINT8 wipedefs[NUMWIPEDEFS] = {
1, // wipe_menu_final
99, // wipe_credits_final
0, // wipe_evaluation_final
0, // wipe_gameend_final
0, // wipe_ceremony_final
99, // wipe_intro_final (hardcoded)
99, // wipe_ending_final (hardcoded)
@ -98,7 +96,6 @@ static boolean g_wipedef_toblack[NUMWIPEDEFS] = {
true, // wipe_menu_toblack
true, // wipe_credits_toblack
true, // wipe_evaluation_toblack
true, // wipe_gameend_toblack
true, // wipe_ceremony_toblack
true, // wipe_intro_toblack (hardcoded)
true, // wipe_ending_toblack (hardcoded)
@ -115,7 +112,6 @@ static boolean g_wipedef_toblack[NUMWIPEDEFS] = {
true, // wipe_menu_final
true, // wipe_credits_final
true, // wipe_evaluation_final
true, // wipe_gameend_final
true, // wipe_ceremony_final
true, // wipe_intro_final (hardcoded)
true, // wipe_ending_final (hardcoded)
@ -133,7 +129,6 @@ static boolean g_wipedef_toinvert[NUMWIPEDEFS] = {
false, // wipe_menu_toblack
false, // wipe_credits_toblack
false, // wipe_evaluation_toblack
false, // wipe_gameend_toblack
false, // wipe_ceremony_toblack
false, // wipe_intro_toblack (hardcoded)
false, // wipe_ending_toblack (hardcoded)
@ -150,7 +145,6 @@ static boolean g_wipedef_toinvert[NUMWIPEDEFS] = {
false, // wipe_menu_final
false, // wipe_credits_final
false, // wipe_evaluation_final
false, // wipe_gameend_final
false, // wipe_ceremony_final
false, // wipe_intro_final (hardcoded)
false, // wipe_ending_final (hardcoded)
@ -168,7 +162,6 @@ static boolean g_wipedef_towhite[NUMWIPEDEFS] = {
false, // wipe_menu_toblack
false, // wipe_credits_toblack
false, // wipe_evaluation_toblack
false, // wipe_gameend_toblack
false, // wipe_ceremony_toblack
false, // wipe_intro_toblack (hardcoded)
false, // wipe_ending_toblack (hardcoded)
@ -185,7 +178,6 @@ static boolean g_wipedef_towhite[NUMWIPEDEFS] = {
false, // wipe_menu_final
false, // wipe_credits_final
false, // wipe_evaluation_final
false, // wipe_gameend_final
false, // wipe_ceremony_final
false, // wipe_intro_final (hardcoded)
false, // wipe_ending_final (hardcoded)
@ -203,7 +195,6 @@ static boolean g_wipedef_crossfade[NUMWIPEDEFS] = {
false, // wipe_menu_toblack
false, // wipe_credits_toblack
false, // wipe_evaluation_toblack
false, // wipe_gameend_toblack
false, // wipe_ceremony_toblack
false, // wipe_intro_toblack (hardcoded)
false, // wipe_ending_toblack (hardcoded)
@ -220,7 +211,6 @@ static boolean g_wipedef_crossfade[NUMWIPEDEFS] = {
true, // wipe_menu_final
true, // wipe_credits_final
true, // wipe_evaluation_final
true, // wipe_gameend_final
true, // wipe_ceremony_final
true, // wipe_intro_final (hardcoded)
true, // wipe_ending_final (hardcoded)

View file

@ -1832,11 +1832,6 @@ boolean G_Responder(event_t *ev)
{
return true;
}
// Demo End
else if (gamestate == GS_GAMEEND)
{
return true;
}
else if (gamestate == GS_INTERMISSION || gamestate == GS_VOTING || gamestate == GS_EVALUATION)
{
if (HU_Responder(ev))
@ -2344,11 +2339,6 @@ void G_Ticker(boolean run)
HU_Ticker();
break;
case GS_GAMEEND:
if (run)
F_GameEndTicker();
break;
case GS_EVALUATION:
if (run)
F_GameEvaluationTicker();

View file

@ -35,7 +35,6 @@ typedef enum
GS_CREDITS, // credit sequence
GS_EVALUATION, // Evaluation at the end of a game.
GS_GAMEEND, // game end sequence - "did you get all those chaos emeralds?"
GS_CEREMONY, // RR: Podium sequence
// Hardcoded fades or other fading methods

View file

@ -209,7 +209,6 @@ static boolean M_GamestateCanOpenMenu(void)
{
case GS_INTRO:
case GS_CUTSCENE:
case GS_GAMEEND:
case GS_CREDITS:
case GS_EVALUATION:
case GS_CEREMONY: