Improved behaviour for skipping second half of intermission in offline games

Instead of tying it directly to the number of players, instead base it on whether the points are important to keep track of.
- Match Race or Time Attack
- No next map override, since points will persist to that one
- No maps queued, so points aren't relevant
    - OR maps are queued but you haven't started them yet, so the points will be discarded
This commit is contained in:
toaster 2023-07-26 15:51:39 +01:00
parent 23f479f365
commit 8553581d80

View file

@ -1786,9 +1786,22 @@ void Y_StartIntermission(void)
// Prevent a weird bug
timer = 1;
}
else if (nump < 2 && !netgame)
else if (
( // Match Race or Time Attack
netgame == false
&& grandprixinfo.gp == false
)
&& (
modeattacking != ATTACKING_NONE // Definitely never another map
|| ( // Any level sequence?
roundqueue.size == 0 // No maps queued, points aren't relevant
|| roundqueue.position == 0 // OR points from this round will be discarded
)
)
)
{
// No PWR/global score, skip it
// (the above is influenced by G_GetNextMap)
timer /= 2;
}
else