I am trying to make my boat not just be able to fly on land and so far I have not had any luck.
That is what I tried but my boat no longer turned and spazzed out...
script.Parent.PrimaryPart = script.Parent.Bottom
ModelCFrame = script.Parent.PrimaryPart
while wait() do
local x = script.Parent.Bottom.CFrame.X
local z = script.Parent.Bottom.CFrame.Z
script.Parent:SetPrimaryPartCFrame(CFrame.new(x, -11.470724105835, z))
end
If you know how to fix this or of an easier way I would appreciate it!

6 comments
I would suggest instead removing the ability to elevate the boat, if you're going to just counteract it with another script.
make an inviible transparent block in the air that subtracts the boat's y pos on impact
@MezornoIV - I am not changing the position with my boat script I am using velocity, what would I do to stop that?
@DominusInfinitus - It is a model so how would I make it subtract from a CFrame?
well the reason for this is that you are also resetting the rotation matrix of the CFrame
@theking48989987 - how would I not reset it?