From 08a4fc8382d80c0e76df24090ae4c497b5b7f4d3 Mon Sep 17 00:00:00 2001 From: toasterbabe Date: Sun, 30 Oct 2016 14:01:56 +0000 Subject: [PATCH] Tweaks to the way the force whoosh is handled so it stays centered AND doesn't allow an infinitesimal jump. --- src/p_mobj.c | 1 + src/p_user.c | 6 +----- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/src/p_mobj.c b/src/p_mobj.c index 2965fb7cc..10ebe9c5c 100644 --- a/src/p_mobj.c +++ b/src/p_mobj.c @@ -6824,6 +6824,7 @@ void P_MobjThinker(mobj_t *mobj) whoosh->height = 38*whoosh->scale; whoosh->fuse = 10; whoosh->flags |= MF_NOCLIPHEIGHT; + whoosh->momz = mobj->target->momz; // Stay reasonably centered for a few frames mobj->target->player->pflags &= ~PF_SHIELDABILITY; // prevent eternal whoosh } case MT_FLAMEAURA_ORB: diff --git a/src/p_user.c b/src/p_user.c index d34309855..f5e813274 100644 --- a/src/p_user.c +++ b/src/p_user.c @@ -6992,11 +6992,7 @@ static void P_MovePlayer(player_t *player) if ((player->powers[pw_shield] & ~(SH_FORCEHP|SH_STACK)) == SH_FORCE) { player->pflags |= PF_THOKKED|PF_SHIELDABILITY; - player->mo->momz = // would intentionally carry to post-endif line as multiple-assignment -#if 1 // almost imperceptible hop for the purposes of aligning with the aura for as long as possible - -4*P_GetMobjGravity(player->mo); -#endif - player->mo->momx = player->mo->momy = 0; + player->mo->momx = player->mo->momy = player->mo->momz = 0; S_StartSound(player->mo, sfx_ngskid); } else