The only way that I know to move a part is by for looping its position or cframe
1 | for i = 0 , 10 , 0.5 do |
2 | wait( 0.1 ) |
3 | part.Position = part.Position + Vector 3. new( 0 , 0 , i) |
4 | end |
is there another efficent way?
Instead of looping the position or its CFrame, you should consider using BodyPosition. You can set a specific position for the BodyPosition to go to, and it will go there smoothly. Read more about BodyPositions here.