Вот моя версия, она отличается тем что при зажатии, если далеко находиться, то начинает резко двигаться, и затем при приближении медленее. Значит есть координаты игрока:
PlrX#
PlrY#
Далее есть координаты точки:
TrgX#
TrgY#
Затем при нажатии на мышь точка цели меняется:
If MouseDown(1)
TrgX=MouseX()
TrgY=MouseY()
EndIf
И далее в цикле тоже:
PlrX=PlrX+((TrgX-PlrX)*.01)
PlrY=PlrY+((TrgY-PlrY)*.01)
И отрисовываешь картинку игрока в точках PlrX,PlrY.
Вот и всё =)