CompatLevel fixes

This commit is contained in:
Antonio Martinez 2025-09-23 03:18:14 -04:00
parent 3f5f9825a8
commit 595874f4e5
4 changed files with 14 additions and 5 deletions

View file

@ -6876,7 +6876,6 @@ static void Command_Staffsync(void)
demostarttime = I_GetTime();
staffbrief = mapheader->ghostBrief[staffsync_ghost];
G_DoPlayDemoEx("", (staffbrief->wad << 16) | staffbrief->lump);
staffsync_ghost++;
staffsync_done++;

View file

@ -42,7 +42,7 @@ Make sure this matches the actual number of states
#define INSTAWHIP_HOLD_DELAY (TICRATE*2)
// MUST be longer or equal to INSTAWHIP_CHARGETIME.
#define INSTAWHIP_TETHERBLOCK (TICRATE*4)
#define PUNISHWINDOW (10*TICRATE/10)
#define PUNISHWINDOW (G_CompatLevel(0x0010) ? 7*TICRATE/10 : 10*TICRATE/10)
#define BAIL_MAXCHARGE (84) // tics to bail when in painstate nad in air, on ground is half, if you touch this, also update Obj_BailChargeThink synced animation logic
#define BAIL_DROP (FRACUNIT) // How many rings it has to drop before stun starts

View file

@ -502,7 +502,7 @@ void K_ProcessTerrainEffect(mobj_t *mo)
{
UINT8 dmg = (terrain->damageType & 0xFF);
if (dmg & DMG_STUMBLE)
if (dmg & DMG_STUMBLE && !G_CompatLevel(0x0010))
{
if (player->mo->hitlag == 0 && (player->mo->momz >= 0) == (P_MobjFlip(player->mo) >= 0))
K_StumblePlayer(player);

View file

@ -5421,9 +5421,19 @@ static void P_EvaluateDamageType(player_t *player, sector_t *sector, boolean isT
P_DamageMobj(player->mo, NULL, NULL, 1, DMG_INSTAKILL);
break;
case SD_STUMBLE:
if (isTouching && player->mo->hitlag == 0 && (player->mo->momz >= 0) == (P_MobjFlip(player->mo) >= 0))
if (isTouching && G_CompatLevel(0x0010))
{
K_StumblePlayer(player);
player->pflags2 |= PF2_ALWAYSDAMAGED;
P_DamageMobj(player->mo, NULL, NULL, 1, DMG_STUMBLE);
player->pflags2 &= ~PF2_ALWAYSDAMAGED;
}
else
{
if (isTouching && player->mo->hitlag == 0 && (player->mo->momz >= 0) == (P_MobjFlip(player->mo) >= 0))
{
K_StumblePlayer(player);
}
}
break;