Ты сделал все с точность до наоборот 
 
По форм клик только сохраняем координаты:
	Код:
	click_x:=Mouse.CursorPos.X;
click_y:=Mouse.CursorPos.Y;
 
 
На таймер вешай:
	Код:
	dx:=0;if cx>x then dx:=1;if cx<x then dx:=-1;
dy:=0;if cy>y then dy:=1;if cy<y then dy:=-1;
 
 
+
	Код:
	hero.Left:=hero.Left+dx;
hero.Top:=hero.Top+dy;