diff --git a/src/hardware/hw_main.c b/src/hardware/hw_main.c
index 7afef4d5167ab81ed227cd96fabed5a850698b80..4c033043d6ded80b620d3e0884c83b85c26a841b 100644
--- a/src/hardware/hw_main.c
+++ b/src/hardware/hw_main.c
@@ -5108,9 +5108,9 @@ static void HWR_ProjectSprite(mobj_t *thing)
 		// choose a different rotation based on player view
 		ang = R_PointToAngle (thing->x, thing->y) - thing->angle;
 
-		if ((ang < ANGLE_180) && (sprframe->rotate & SRF_RIGHT)) // See from right
+		if ((sprframe->rotate & SRF_RIGHT) && (ang < ANGLE_180)) // See from right
 			rot = 6; // F7 slot
-		else if ((ang >= ANGLE_180) && (sprframe->rotate & SRF_LEFT)) // See from left
+		else if ((sprframe->rotate & SRF_LEFT) && (ang >= ANGLE_180)) // See from left
 			rot = 2; // F3 slot
 		else // Normal behaviour
 			rot = (ang+ANGLE_202h)>>29;
diff --git a/src/r_things.c b/src/r_things.c
index a836aa88b9995f5106a49c10b98f44b4c968e1ea..6c26620fe9f542761f19b1c31a6274f2773019d1 100644
--- a/src/r_things.c
+++ b/src/r_things.c
@@ -1193,9 +1193,9 @@ static void R_ProjectSprite(mobj_t *thing)
 		// choose a different rotation based on player view
 		ang = R_PointToAngle (thing->x, thing->y) - thing->angle;
 
-		if ((ang < ANGLE_180) && (sprframe->rotate & SRF_RIGHT)) // See from right
+		if ((sprframe->rotate & SRF_RIGHT) && (ang < ANGLE_180)) // See from right
 			rot = 6; // F7 slot
-		else if ((ang >= ANGLE_180) && (sprframe->rotate & SRF_LEFT)) // See from left
+		else if ((sprframe->rotate & SRF_LEFT) && (ang >= ANGLE_180)) // See from left
 			rot = 2; // F3 slot
 		else // Normal behaviour
 			rot = (ang+ANGLE_202h)>>29;