Any idea on how to create a flying enemy?

i need to make a flying enemy. the mob has a humanoid and right now it just uses .position to fly but i want a proper fly script.

right not the script is crappy:
local body = script.Parent

local decor = body.Parent:WaitForChild(“decor”)

local origin = body.Position

local targetPos = game.ReplicatedStorage.values.torso.Value

local distance = (script.Parent.Position - targetPos).Magnitude

while true do

body.Position = origin-(origin-targetPos).Unit*0.8

decor.Position = origin-(origin-targetPos).Unit*0.8

wait()

end

You maybe can change his Humanoid HipHeight that aproximatively replicate a flying simulation.
Other than that, you can also use a “Body Position” and “Body Gyro” that may help you to do a flying character.

i need actual flying not just visual effects(no animations)