Here is the Rootpart which im doing the cframe.lookat with. Its facing front so the plane should be facing to the part but its not and idk why.
Here is the code:
Changing the orientation of a part inside a model directly will not apply to the rest of the model. You should be using Model:PivotTo() which takes a CFrame to reposition the model. Alternatively if the part inside a model is welded to the rest of the model then changing the CFrame of that part will also apply to all welded parts (assuming you are using a WeldConstraint and not a Weld).
I’m not sure what that does, I wasn’t even aware that CFrame.Y was a thing but what I would do is make sure that the Y component of the two vectors you pass to CFrame.lookAt() are equal so there is no rotation along those axes. You can replace replace targetPosition with Vector3.new(targetPosition.X, planePosition.Y, targetPosition.Z)