Merge branch 'negative-20-sealed-exit' into 'master'

Fixes for Sealed Star death at -20 rings

Closes #673

See merge request KartKrew/Kart!1479
This commit is contained in:
Sal 2023-09-11 22:11:56 +00:00
commit 4a1e396cc3
2 changed files with 12 additions and 3 deletions

View file

@ -4213,9 +4213,15 @@ static void K_HandleTumbleBounce(player_t *player)
if (player->markedfordeath) if (player->markedfordeath)
{ {
if (player->exiting == false && specialstageinfo.valid == true)
{
// markedfordeath is when player's die at -20 rings
HU_DoTitlecardCEcho(player, "NOT ENOUGH\\RINGS...", false);
}
player->markedfordeath = false; player->markedfordeath = false;
P_StartQuakeFromMobj(5, 32 * player->mo->scale, 512 * player->mo->scale, player->mo); P_StartQuakeFromMobj(5, 32 * player->mo->scale, 512 * player->mo->scale, player->mo);
P_KillMobj(player->mo, NULL, NULL, DMG_INSTAKILL); P_DamageMobj(player->mo, NULL, NULL, 1, DMG_INSTAKILL);
return; return;
} }

View file

@ -2071,7 +2071,10 @@ static boolean P_KillPlayer(player_t *player, mobj_t *inflictor, mobj_t *source,
if (player->exiting == false && specialstageinfo.valid == true) if (player->exiting == false && specialstageinfo.valid == true)
{ {
HU_DoTitlecardCEcho(player, "FALL OUT!", false); if (type == DMG_DEATHPIT)
{
HU_DoTitlecardCEcho(player, "FALL OUT!", false);
}
// This must be done before the condition to set // This must be done before the condition to set
// destscale = 1, so any special stage death // destscale = 1, so any special stage death
@ -2079,7 +2082,7 @@ static boolean P_KillPlayer(player_t *player, mobj_t *inflictor, mobj_t *source,
P_DoPlayerExit(player, PF_NOCONTEST); P_DoPlayerExit(player, PF_NOCONTEST);
} }
if (player->exiting) if (player->exiting && type == DMG_DEATHPIT)
{ {
// If the player already finished the race, and // If the player already finished the race, and
// they fall into a death pit afterward, their // they fall into a death pit afterward, their