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->exiting == false && specialstageinfo.valid == true)
{
// markedfordeath is when player's die at -20 rings
HU_DoTitlecardCEcho(player, "NOT ENOUGH\\RINGS...", false);
}
player->markedfordeath = false;
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;
}

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)
{
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
// 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);
}
if (player->exiting)
if (player->exiting && type == DMG_DEATHPIT)
{
// If the player already finished the race, and
// they fall into a death pit afterward, their