diff --git a/src/p_user.c b/src/p_user.c
index da06510d37e5b5806aaa266bd417330e120b9f73..d9d92f3b2b83db9176dcaf912db18c186ed77397 100644
--- a/src/p_user.c
+++ b/src/p_user.c
@@ -1048,7 +1048,8 @@ void P_DoPlayerPain(player_t *player, mobj_t *source, mobj_t *inflictor)
 			fallbackspeed = FixedMul(4*FRACUNIT, player->mo->scale);
 		}
 
-		player->drawangle = ang + ANGLE_180;
+		if (player->pflags & PF_DIRECTIONCHAR)
+			player->drawangle = ang + ANGLE_180;
 		P_InstaThrust(player->mo, ang, fallbackspeed);
 	}