Remove ringboost only when taking non-stumble damage

This commit is contained in:
Antonio Martinez 2025-09-25 23:17:19 -04:00
parent b746b1a0e4
commit cfd8260762
2 changed files with 4 additions and 1 deletions

View file

@ -10462,7 +10462,7 @@ void K_KartPlayerThink(player_t *player, ticcmd_t *cmd)
player->tricklock = 0;
}
if (P_PlayerInPain(player) || player->respawn.state != RESPAWNST_NONE)
if ((P_PlayerInPain(player) && G_CompatLevel(0x0010)) || player->respawn.state != RESPAWNST_NONE)
{
player->ringboost = 0;
}

View file

@ -2862,6 +2862,8 @@ static boolean P_FlashingException(const player_t *player, const mobj_t *inflict
return true;
}
// P_DamageMobj for 0x0010 compat.
// I know this sucks ass, but this function is legitimately too complicated to add more behavior switches.
static boolean P_DamageMobjCompat(mobj_t *target, mobj_t *inflictor, mobj_t *source, INT32 damage, UINT8 damagetype)
{
player_t *player;
@ -4362,6 +4364,7 @@ boolean P_DamageMobj(mobj_t *target, mobj_t *inflictor, mobj_t *source, INT32 da
K_PopPlayerShield(player);
player->instashield = 15;
K_PlayPainSound(target, source);
player->ringboost = 0;
}
if (gametyperules & GTR_BUMPERS)