diff --git a/src/p_slopes.c b/src/p_slopes.c index a9706eb9..c516fa97 100644 --- a/src/p_slopes.c +++ b/src/p_slopes.c @@ -790,10 +790,6 @@ void P_SlopeLaunch(mobj_t *mo) { if (!(mo->standingslope->flags & SL_NOPHYSICS)) // If there's physics, time for launching. { -#ifdef GROWNEVERMISSES - const fixed_t xyscale = mapheaderinfo[gamemap-1]->mobj_scale + (mapheaderinfo[gamemap-1]->mobj_scale - mo->scale); - const fixed_t zscale = mapheaderinfo[gamemap-1]->mobj_scale + (mapheaderinfo[gamemap-1]->mobj_scale - mo->scale); -#endif // Double the pre-rotation Z, then halve the post-rotation Z. This reduces the // vertical launch given from slopes while increasing the horizontal launch // given. Good for SRB2's gravity and horizontal speeds. @@ -804,9 +800,13 @@ void P_SlopeLaunch(mobj_t *mo) P_QuantizeMomentumToSlope(&slopemom, mo->standingslope); #ifdef GROWNEVERMISSES - mo->momx = FixedMul(slopemom.x, xyscale); - mo->momy = FixedMul(slopemom.y, xyscale); - mo->momz = FixedMul(slopemom.z, zscale); + { + const fixed_t xyscale = mapheaderinfo[gamemap-1]->mobj_scale + (mapheaderinfo[gamemap-1]->mobj_scale - mo->scale); + const fixed_t zscale = mapheaderinfo[gamemap-1]->mobj_scale + (mapheaderinfo[gamemap-1]->mobj_scale - mo->scale); + mo->momx = FixedMul(slopemom.x, xyscale); + mo->momy = FixedMul(slopemom.y, xyscale); + mo->momz = FixedMul(slopemom.z, zscale); + } #else mo->momx = slopemom.x; mo->momy = slopemom.y;