Are they connected to each other at all? and what’s your method of locomotion?
either way, you’re looking at either CFrame.new(Pos,Lookat) OR using trig
something like
V1 = InitiallookVector --this is defined when the turret is placed/loaded
V2 = (Turret.CFrame.p-Mouse.Hit.p).unit --returns a vector pointing to where the mouse is pointing, consider multiplying by vector 1,0,1 to cut Y axis from calculations
Angle = math.acos(V1:Dot(V2)) -- returns angle difference between the two vectors in Radians, apply locomotion method of choice