FREE PLAY: Make a little more consistent

- Cooperative gametypes do not count as FREE PLAY
- Sealed Stars count as a Cooperative gametype
- Fix Battle Fullscreen having had inverted presence of FREE PLAY since bosses were added
This commit is contained in:
toaster 2023-03-26 22:07:44 +01:00
parent 57b1ad15a5
commit a0cdc6b71a
3 changed files with 12 additions and 2 deletions

View file

@ -4294,6 +4294,7 @@ static void K_drawBattleFullscreen(void)
} }
// FREE PLAY? // FREE PLAY?
if (K_Cooperative() == false)
{ {
UINT8 i; UINT8 i;
@ -4306,7 +4307,7 @@ static void K_drawBattleFullscreen(void)
break; break;
} }
if (i != MAXPLAYERS) if (i == MAXPLAYERS)
K_drawKartFreePlay(); K_drawKartFreePlay();
} }
} }
@ -5180,7 +5181,7 @@ void K_drawKartHUD(void)
V_DrawScaledPatch(BASEVIDWIDTH/2 - (SHORT(kp_yougotem->width)/2), 32, V_HUDTRANS, kp_yougotem); V_DrawScaledPatch(BASEVIDWIDTH/2 - (SHORT(kp_yougotem->width)/2), 32, V_HUDTRANS, kp_yougotem);
// Draw FREE PLAY. // Draw FREE PLAY.
if (islonesome) if (islonesome && K_Cooperative() == false)
K_drawKartFreePlay(); K_drawKartFreePlay();
if (r_splitscreen == 0 && (stplyr->pflags & PF_WRONGWAY) && ((leveltime / 8) & 1)) if (r_splitscreen == 0 && (stplyr->pflags & PF_WRONGWAY) && ((leveltime / 8) & 1))

View file

@ -11699,6 +11699,11 @@ boolean K_Cooperative(void)
return true; return true;
} }
if (specialstageinfo.valid)
{
return true;
}
return false; return false;
} }

View file

@ -628,6 +628,10 @@ static boolean M_NotFreePlay(player_t *player)
{ {
UINT8 i; UINT8 i;
// Rounds that permit Cooperative play can be played by yourself without being FREE PLAY.
if (K_Cooperative())
return true;
for (i = 0; i < MAXPLAYERS; i++) for (i = 0; i < MAXPLAYERS; i++)
{ {
if (playeringame[i] == false || players[i].spectator == true) if (playeringame[i] == false || players[i].spectator == true)