From 79f2d616fc7e54c8073e0c68a489853f61c7abc8 Mon Sep 17 00:00:00 2001 From: toasterbabe <rollerorbital@gmail.com> Date: Mon, 27 Mar 2017 14:37:40 +0100 Subject: [PATCH] Modified melee/twinspin springboost. --- src/p_map.c | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/src/p_map.c b/src/p_map.c index 7e6add39c1..04858b5df4 100644 --- a/src/p_map.c +++ b/src/p_map.c @@ -130,19 +130,13 @@ boolean P_DoSpring(mobj_t *spring, mobj_t *object) return false; } -#ifdef ESLOPE - object->standingslope = NULL; // Okay, now we can't return - no launching off at silly angles for you. -#endif - if (object->player && ((object->player->charability == CA_TWINSPIN && object->player->panim == PA_ABILITY) || (object->player->charability2 == CA2_MELEE && object->player->panim == PA_ABILITY2))) { S_StartSound(object, sfx_s3k8b); -#define scalefactor ((4*FRACUNIT)/3) - horizspeed = FixedMul(horizspeed, scalefactor); - vertispeed = FixedMul(vertispeed, FixedSqrt(scalefactor)); -#undef scalefactor + horizspeed = FixedMul(horizspeed, (4*FRACUNIT)/3); + vertispeed = FixedMul(vertispeed, (6*FRACUNIT)/5); // aprox square root of above } object->eflags |= MFE_SPRUNG; // apply this flag asap! @@ -239,6 +233,11 @@ boolean P_DoSpring(mobj_t *spring, mobj_t *object) else P_SetPlayerMobjState(object, S_PLAY_FALL); } + +#ifdef ESLOPE + object->standingslope = NULL; // Okay, now we know it's not going to be relevant - no launching off at silly angles for you. +#endif + return true; } -- GitLab