From 5e92177262806cf720e623376676be1f90e93820 Mon Sep 17 00:00:00 2001 From: AJ Martinez Date: Thu, 16 Nov 2023 14:42:15 -0700 Subject: [PATCH] Try to keep death frames on-screen --- src/p_inter.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/p_inter.c b/src/p_inter.c index 43b5f2ab8..e4cdec7dd 100644 --- a/src/p_inter.c +++ b/src/p_inter.c @@ -1889,18 +1889,22 @@ void P_KillMobj(mobj_t *target, mobj_t *inflictor, mobj_t *source, UINT8 damaget } else { - flingAngle = target->angle + ANGLE_180; + flingAngle = target->angle; if (P_RandomByte(PR_ITEM_RINGS) & 1) { - flingAngle -= ANGLE_45; + flingAngle -= ANGLE_45/2; } else { - flingAngle += ANGLE_45; + flingAngle += ANGLE_45/2; } } + // On -20 ring deaths, you're guaranteed to be hitting the ground from Tumble, + // so make sure that this draws at the correct angle. + target->rollangle = 0; + P_InstaThrust(target, flingAngle, 14 * target->scale); P_SetObjectMomZ(target, 14*FRACUNIT, false);