diff --git a/src/p_mobj.c b/src/p_mobj.c
index e3daf699652555d15c8c961b408a2eaaad9c371b..35ef31db11bbc4afb6ebec5063122e6f6b64604f 100644
--- a/src/p_mobj.c
+++ b/src/p_mobj.c
@@ -6695,6 +6695,10 @@ static boolean P_ShieldLook(mobj_t *thing, shieldtype_t shield)
 	}
 	P_SetThingPosition(thing);
 	P_CheckPosition(thing, thing->x, thing->y);
+
+	thing->pitch = thing->target->pitch;
+	thing->roll = thing->target->roll;
+	
 #undef NewMH
 #undef NewPH
 #undef OldMH
diff --git a/src/p_user.c b/src/p_user.c
index 67e63fa433e428f56ef9dbd5bf3835bb2fe2bd76..1c5e00bf9607fa26559be8f80e6eefb2bf0cce5d 100644
--- a/src/p_user.c
+++ b/src/p_user.c
@@ -11514,6 +11514,9 @@ void P_DoTailsOverlay(player_t *player, mobj_t *tails)
 		tails->flags2 |= MF2_SHADOW;
 	else
 		tails->flags2 &= ~MF2_SHADOW;
+	
+	tails->pitch = player->mo->pitch;
+	tails->roll = player->mo->roll;
 }
 
 // Metal Sonic's jet fume