diff --git a/src/p_telept.c b/src/p_telept.c
index 3e135aee7a66e5e116fc6771e17538fe1b7a3592..e80dd04284778301e8210e45349be8d66a2e8a3d 100644
--- a/src/p_telept.c
+++ b/src/p_telept.c
@@ -125,8 +125,6 @@ boolean P_Teleport(mobj_t *thing, fixed_t x, fixed_t y, fixed_t z, angle_t angle
 	if (!P_TeleportMove(thing, x, y, z))
 		return false;
 
-	thing->angle = angle;
-
 	if (!dontstopmove)
 		thing->momx = thing->momy = thing->momz = 0;
 	else // Change speed to match direction
@@ -179,5 +177,7 @@ boolean P_Teleport(mobj_t *thing, fixed_t x, fixed_t y, fixed_t z, angle_t angle
 			P_FlashPal(thing->player, PAL_MIXUP, 10);
 	}
 
+	thing->angle = angle;
+
 	return true;
 }