diff --git a/src/k_kart.c b/src/k_kart.c index 9e617774b..63946c09b 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -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; } diff --git a/src/p_inter.c b/src/p_inter.c index 9d0869509..2abf90491 100644 --- a/src/p_inter.c +++ b/src/p_inter.c @@ -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