diff --git a/src/p_map.c b/src/p_map.c
index 628268bffa9d2902d7a5b8c3cac701a52750fff7..4cc591330e8ba52ea722a834d9f64e6732483d42 100644
--- a/src/p_map.c
+++ b/src/p_map.c
@@ -1943,6 +1943,19 @@ static boolean PIT_CheckLine(line_t *ld)
 
 	// this line is out of the if so upper and lower textures can be hit by a splat
 	blockingline = ld;
+
+#ifdef HAVE_BLUA
+	{
+		UINT8 shouldCollide = LUAh_MobjLineCollide(tmthing, blockingline); // checks hook for thing's type
+		if (P_MobjWasRemoved(tmthing))
+			return true; // one of them was removed???
+		if (shouldCollide == 1)
+			return false; // force collide
+		else if (shouldCollide == 2)
+			return true; // force no collide
+	}
+#endif
+
 	if (!ld->backsector) // one sided line
 	{
 		if (P_PointOnLineSide(tmthing->x, tmthing->y, ld))
@@ -1987,18 +2000,7 @@ static boolean PIT_CheckLine(line_t *ld)
 
 	if (lowfloor < tmdropoffz)
 		tmdropoffz = lowfloor;
-
-#ifdef HAVE_BLUA
-	{
-		UINT8 shouldCollide = LUAh_MobjLineCollide(tmthing, ld); // checks hook for thing's type
-		if (P_MobjWasRemoved(tmthing))
-			return true; // one of them was removed???
-		if (shouldCollide == 1)
-			return false; // force collide
-		else if (shouldCollide == 2)
-			return true; // force no collide
-	}
-#endif
+	
 	return true;
 }