Battle: darken map for players who die during Overtime

This commit is contained in:
James R 2024-01-21 22:26:08 -08:00
parent 6b27a656e8
commit 311cf5ceea
2 changed files with 17 additions and 9 deletions

View file

@ -8921,19 +8921,22 @@ void K_KartPlayerThink(player_t *player, ticcmd_t *cmd)
P_DamageMobj(player->mo, NULL, NULL, 1, DMG_TIMEOVER); P_DamageMobj(player->mo, NULL, NULL, 1, DMG_TIMEOVER);
} }
if (leveltime < player->darkness_end) if (!player->exiting && !(player->pflags & PF_ELIMINATED))
{ {
if (leveltime > player->darkness_end - DARKNESS_FADE_TIME) if (leveltime < player->darkness_end)
{ {
player->darkness_start = leveltime - (player->darkness_end - leveltime); if (leveltime > player->darkness_end - DARKNESS_FADE_TIME)
{
player->darkness_start = leveltime - (player->darkness_end - leveltime);
}
}
else
{
player->darkness_start = leveltime;
} }
}
else
{
player->darkness_start = leveltime;
}
player->darkness_end = leveltime + (2 * DARKNESS_FADE_TIME); player->darkness_end = leveltime + (2 * DARKNESS_FADE_TIME);
}
} }
} }

View file

@ -1799,6 +1799,11 @@ void P_KillMobj(mobj_t *target, mobj_t *inflictor, mobj_t *source, UINT8 damaget
if (battleovertime.enabled >= 10*TICRATE) // Overtime Barrier is armed if (battleovertime.enabled >= 10*TICRATE) // Overtime Barrier is armed
{ {
target->player->pflags |= PF_ELIMINATED; target->player->pflags |= PF_ELIMINATED;
if (target->player->darkness_end < leveltime)
{
target->player->darkness_start = leveltime;
}
target->player->darkness_end = INFTICS;
} }
K_CheckBumpers(); K_CheckBumpers();