From 32ea795639b965551c27b1961d6fbcaf8325bf5d Mon Sep 17 00:00:00 2001 From: AJ Martinez Date: Mon, 13 Feb 2023 15:31:39 -0700 Subject: [PATCH] Fault rework cleanup for merge --- src/d_player.h | 2 +- src/k_respawn.c | 2 +- src/p_mobj.c | 6 +++--- src/p_spec.c | 2 +- src/p_user.c | 9 ++++++--- 5 files changed, 12 insertions(+), 9 deletions(-) diff --git a/src/d_player.h b/src/d_player.h index d15dc1d98..c0e3a361a 100644 --- a/src/d_player.h +++ b/src/d_player.h @@ -581,7 +581,7 @@ struct player_t tic_t ebrakefor; // Ebrake timer, used for visuals. - UINT16 faulttimer; // Used for misc FAULT visuals + UINT16 faultflash; // Used for misc FAULT visuals UINT32 roundscore; // battle score this round UINT8 emeralds; diff --git a/src/k_respawn.c b/src/k_respawn.c index 4f3ab1020..98661ad35 100644 --- a/src/k_respawn.c +++ b/src/k_respawn.c @@ -279,7 +279,7 @@ void K_DoIngameRespawn(player_t *player) player->respawn.init = true; player->respawn.airtimer = player->airtime; - player->respawn.truedeath = player->pflags & PF_FAULT; + player->respawn.truedeath = !!(player->pflags & PF_FAULT); } /*-------------------------------------------------- diff --git a/src/p_mobj.c b/src/p_mobj.c index 51024300b..e5b125bb8 100644 --- a/src/p_mobj.c +++ b/src/p_mobj.c @@ -9805,15 +9805,15 @@ void P_MobjThinker(mobj_t *mobj) mobj->eflags |= MFE_PAUSED; mobj->hitlag--; - if (mobj->type == MT_PLAYER && mobj->player->faulttimer > 0) + if (mobj->player != NULL && mobj->player->faultflash > 0) { ClearFakePlayerSkin(mobj->player); - if (mobj->player->faulttimer & 1) + if (mobj->player->faultflash & 1) mobj->renderflags |= RF_DONTDRAW; else mobj->renderflags &= ~RF_DONTDRAW; - mobj->player->faulttimer--; + mobj->player->faultflash--; } if (mobj->type == MT_DROPTARGET && mobj->reactiontime > 0 && mobj->hitlag == 2) diff --git a/src/p_spec.c b/src/p_spec.c index 05e81e549..c52b57e2f 100644 --- a/src/p_spec.c +++ b/src/p_spec.c @@ -1918,7 +1918,7 @@ static void K_HandleLapIncrement(player_t *player) player->hyudorotimer = UINT16_MAX; player->speed = 0; K_StripItems(player); - player->faulttimer = TICRATE/3; + player->faultflash = TICRATE/3; ClearFakePlayerSkin(player); S_StartSound(player->mo, sfx_s3k8a); P_MoveOrigin(player->mo, player->mo->old_x, player->mo->old_y, player->mo->z); diff --git a/src/p_user.c b/src/p_user.c index e37167386..eade004f2 100644 --- a/src/p_user.c +++ b/src/p_user.c @@ -4208,9 +4208,12 @@ void P_PlayerThink(player_t *player) { if (!(--player->nocontrol)) { - player->pflags &= ~PF_FAULT; - player->mo->renderflags &= ~RF_DONTDRAW; - player->mo->flags &= ~MF_NOCLIPTHING; + if (player->pflags & PF_FAULT) + { + player->pflags &= ~PF_FAULT; + player->mo->renderflags &= ~RF_DONTDRAW; + player->mo->flags &= ~MF_NOCLIPTHING; + } } } else