Limit of 45 degrees before you can start transferring up the wall.

This commit is contained in:
toasterbabe 2017-01-23 01:39:12 +00:00
parent 19f31b958d
commit 5eb561297b

View file

@ -2185,6 +2185,7 @@ void P_XYMovement(mobj_t *mo)
if (oldslope && (P_MobjFlip(mo)*(predictedz - mo->z) > 0)) // Only for moving up (relative to gravity), otherwise there's a failed launch when going down slopes and hitting walls if (oldslope && (P_MobjFlip(mo)*(predictedz - mo->z) > 0)) // Only for moving up (relative to gravity), otherwise there's a failed launch when going down slopes and hitting walls
{ {
transferslope = ((mo->standingslope) ? mo->standingslope : oldslope); transferslope = ((mo->standingslope) ? mo->standingslope : oldslope);
if (((transferslope->zangle < ANGLE_180) ? transferslope->zangle : InvAngle(transferslope->zangle)) >= ANGLE_45) // Prevent some weird stuff going on on shallow slopes.
transfermomz = P_GetWallTransferMomZ(mo, transferslope); transfermomz = P_GetWallTransferMomZ(mo, transferslope);
} }
#endif #endif