From e00d6821859bef7d6d6d0c3b2c1970d8163bae20 Mon Sep 17 00:00:00 2001
From: RedEnchilada <redenchilada@derpymail.com>
Date: Mon, 25 May 2015 13:25:23 -0500
Subject: [PATCH] Fix issue with objects getting stuck IN floors

---
 src/p_mobj.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/p_mobj.c b/src/p_mobj.c
index e44279347e..7d48ca60c6 100644
--- a/src/p_mobj.c
+++ b/src/p_mobj.c
@@ -2278,8 +2278,10 @@ static boolean P_ZMovement(mobj_t *mo)
 			mo->z = mo->floorz;
 
 #ifdef ESLOPE
-		P_TryMove(mo, mo->x, mo->y, true); // Sets mo->standingslope correctly
-		if (mo->standingslope) {
+		P_CheckPosition(mo, mo->x, mo->y); // Sets mo->standingslope correctly
+		if ((mo->eflags & MFE_VERTICALFLIP) ? tmceilingslope : tmfloorslope) {
+			mo->standingslope = (mo->eflags & MFE_VERTICALFLIP) ? tmceilingslope : tmfloorslope;
+
 			// Reverse quantizing might could use its own function later
 			mo->standingslope->zangle = ANGLE_MAX-mo->standingslope->zangle;
 			P_QuantizeMomentumToSlope(&mom, mo->standingslope);
-- 
GitLab