diff --git a/src/g_game.c b/src/g_game.c index 1a4389c67..d0d875464 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -3194,6 +3194,17 @@ void G_ExitLevel(void) UINT8 i; boolean doretry = false; + if (grandprixinfo.gp == true) + { + for (i = 0; i < MAXPLAYERS; i++) + { + if (playeringame[i] && !players[i].spectator) + { + K_PlayerFinishGrandPrix(&players[i]); + } + } + } + if (!G_GametypeUsesLives()) ; // never force a retry else if (specialstageinfo.valid == true || (gametyperules & GTR_BOSS)) @@ -3213,14 +3224,6 @@ void G_ExitLevel(void) } else if (grandprixinfo.gp == true && grandprixinfo.eventmode == GPEVENT_NONE) { - for (i = 0; i < MAXPLAYERS; i++) - { - if (playeringame[i] && !players[i].spectator) - { - K_PlayerFinishGrandPrix(&players[i]); - } - } - doretry = (grandprixinfo.wonround != true); }