diff --git a/src/g_game.c b/src/g_game.c index d940cbb46..4c6ce067b 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -4520,9 +4520,7 @@ static void G_DoCompleted(void) // If the current gametype has no intermission screen set, then don't start it. Y_DetermineIntermissionType(); - if ((skipstats && !modeattacking) - || (modeattacking && (players[consoleplayer].pflags & PF_NOCONTEST)) - || (intertype == int_none)) + if (intertype == int_none) { G_UpdateVisited(); G_AfterIntermission(); diff --git a/src/y_inter.c b/src/y_inter.c index 70ae5e7fb..0d276928f 100644 --- a/src/y_inter.c +++ b/src/y_inter.c @@ -1589,7 +1589,11 @@ void Y_Ticker(void) void Y_DetermineIntermissionType(void) { // no intermission for GP events - if (grandprixinfo.gp == true && grandprixinfo.eventmode != GPEVENT_NONE) + if ((grandprixinfo.gp == true && grandprixinfo.eventmode != GPEVENT_NONE) + // or for failing in time attack mode + || (modeattacking && (players[consoleplayer].pflags & PF_NOCONTEST)) + // or for explicit requested skip (outside of modeattacking) + || (modeattacking == ATTACKING_NONE && skipstats != 0)) { intertype = int_none; return;