From defd8850922c0d193e213a1827b8d6828ee81b95 Mon Sep 17 00:00:00 2001 From: toaster Date: Mon, 26 Jun 2023 20:54:43 +0100 Subject: [PATCH] GP Backup tidy (connected to ending gamestate) - Handle removing GP Backups when any game end sequence is started, not just the Podium (in case no Podium exists) - Guarantee removal in M_StartCup out-of-entries failure state --- src/g_game.c | 2 ++ src/menus/transient/cup-select.c | 3 ++- src/p_setup.c | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/g_game.c b/src/g_game.c index b2081eacd..b1f036edd 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -4651,6 +4651,8 @@ void G_EndGame(void) // Only do evaluation and credits in singleplayer contexts if (!netgame && grandprixinfo.gp == true) { + G_HandleSaveLevel(true); + if (nextmap == NEXTMAP_CEREMONY) // end game with ceremony { if (K_StartCeremony() == true) diff --git a/src/menus/transient/cup-select.c b/src/menus/transient/cup-select.c index f146cd74f..69e155592 100644 --- a/src/menus/transient/cup-select.c +++ b/src/menus/transient/cup-select.c @@ -155,7 +155,8 @@ static void M_StartCup(UINT8 entry) NULL, MM_NOTHING, NULL, NULL ); - G_HandleSaveLevel(true); + if (FIL_FileExists(gpbackup)) + remove(gpbackup); return; } diff --git a/src/p_setup.c b/src/p_setup.c index 2abe1fef7..e7c4e9fad 100644 --- a/src/p_setup.c +++ b/src/p_setup.c @@ -8358,7 +8358,7 @@ void P_PostLoadLevel(void) P_RunCachedActions(); - G_HandleSaveLevel(gamestate == GS_CEREMONY); + G_HandleSaveLevel(false); if (marathonmode & MA_INGAME) {