Why wont lookvector and bodyvelocity work?

I want to make it so that a truck moves in the direction a part is pointing

the problem is that the bodyvelocity making the truck move just wont make it move the right direction, as seen here https://gyazo.com/56a01b985cd6c85f1faa60f3c43c1cbf in the begginging it works perfectly fine. When it sets the bodyvelocity to the lookvector of the engine. Which is lookvector.unit x 100 and that is 100, 0, 0. But when it tries to do it later with the other part (which the lookvector.unit x 100 = -92, -0, -38) it just moves completely strange.

Here is the code:

Force.MaxForce = Vector3.new(90000, 90000, 90000) -- acceleration
Force.Velocity = Engine.CFrame.LookVector.unit * 100

while wait(0.1) do
    Current = nil
    Distance = 10
    for _, v in pairs(FollowFolder:GetChildren()) do
        if Engine.Position.Magnitude-v.Position.Magnitude < Distance then
            Current = v
            Distance = Engine.Position.Magnitude-v.Position.Magnitude
        end
    end
    if Current then
        LookVector = Current.CFrame.LookVector.unit * 100
        Force.Velocity = LookVector
        print(LookVector)
        O = Current.Orientation
        Gyro.CFrame = CFrame.Angles(math.rad(O.X), math.rad(O.Y-90), math.rad(O.Z))
    end
end

The bodygyro works completely fine so ignore that, but the bodyvelocty wont work. btw, current is the part that it tries to set the Force velocity too.

I hope you understood. If not just ask

Fixed it, it was just to use RightVector instead. So simple, and yet it took me 3 hours to solve. Until somebody randomly told me to use RightVector, lol