Notice how the rotation along the Y axis is now 0.41644218564034 instead of 0.52359879016876. Is there any way I can still get a rotation of 0.52359879016876 on the Y axis no matter how much it is rotated around the X, or Z axis?
I suggest adding CFrame.Angles(0, math.rad(deg), 0) (deg is the degrees you want to rotate it with) to the part’s CFrame.
If you want to rotate it to rotate a model perspectively to a part you could use Model:SetPrimaryPartCFrame().
Now, to rotate the part along the world Y axis we would need to move the CFrame.Angles to a world space: