diff --git a/src/r_plane.c b/src/r_plane.c
index 355260a11ecdd29b7db7188e57a3ce447c3511fd..3ea04659581ed27120aa3736936fdd53f21f8dda 100644
--- a/src/r_plane.c
+++ b/src/r_plane.c
@@ -742,10 +742,10 @@ void R_SetSlopePlane(pslope_t *slope, fixed_t xpos, fixed_t ypos, fixed_t zpos,
 	n->x = sin(ang);
 	n->z = -cos(ang);
 
-	plangle >>= ANGLETOFINESHIFT;
-	temp = P_GetSlopeZAt(slope, xpos + FINESINE(plangle), ypos + FINECOSINE(plangle));
+	ang = ANG2RAD(plangle);
+	temp = P_GetSlopeZAt(slope, xpos + FloatToFixed(sin(ang)), ypos + FloatToFixed(cos(ang)));
 	m->y = FixedToFloat(temp - height);
-	temp = P_GetSlopeZAt(slope, xpos + FINECOSINE(plangle), ypos - FINESINE(plangle));
+	temp = P_GetSlopeZAt(slope, xpos + FloatToFixed(cos(ang)), ypos - FloatToFixed(sin(ang)));
 	n->y = FixedToFloat(temp - height);
 }