diff --git a/src/lua_maplib.c b/src/lua_maplib.c
index e769a00dc0fee2a4fab9e383d9b0da2579963b28..7635ded1c16eda895fa2910fe7f08ffe01be73cf 100644
--- a/src/lua_maplib.c
+++ b/src/lua_maplib.c
@@ -1344,7 +1344,7 @@ static int slope_set(lua_State *L)
 	}
 	case slope_zangle: // zangle
 		slope->zangle = luaL_checkangle(L, 3);
-		slope->zdelta = FINETANGENT(slope->zangle);
+		slope->zdelta = FINETANGENT(slope->zangle>>ANGLETOFINESHIFT);
 		P_CalculateSlopeNormal(slope);
 		break;
 	case slope_xydirection: // xydirection