tunepunk
That js code you posted is the same as lerp.
We should be able to eliminate the orbit by just having a speed toward the target instead of seperate xy velocities.
Var speed=0
Distance(sprite.x,Sprite.y,mouse.x,mouse.y) > (speed^2)/(2*100)
--- add 100*dt to speed
Else
--- subtract 100*dt from speed
Every tick
--- Sprite: move speed*dt pixels at angle angle(self.x,self.y,mouse.x,mouse.y)
That should be closer. A bit more work could be done on the slowing down bit. Like instead instead of just using 100 as the decceleration we could calculate the required deceleration based on the remaining distance and speed.