From 5eb561297b5a9a629250b7a24b708fb7f8c99e11 Mon Sep 17 00:00:00 2001
From: toasterbabe <rollerorbital@gmail.com>
Date: Mon, 23 Jan 2017 01:39:12 +0000
Subject: [PATCH] Limit of 45 degrees before you can start transferring up the
 wall.

---
 src/p_mobj.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/p_mobj.c b/src/p_mobj.c
index a819883ada..21a74767bf 100644
--- a/src/p_mobj.c
+++ b/src/p_mobj.c
@@ -2185,7 +2185,8 @@ 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
 			{
 				transferslope = ((mo->standingslope) ? mo->standingslope : oldslope);
-				transfermomz = P_GetWallTransferMomZ(mo, transferslope);
+				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);
 			}
 #endif
 
-- 
GitLab