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