Have you been bored running at Hot Springs to all those dorfs to make the Tateossian Jewelery quest? Here you go - it automates the running and clicking on NPC.
var obj: TL2NPC; obj21: TL2Effect;
i:Integer;
begin
for i:=1 to 1000 do
begin
while true do begin
if User.Dead then begin
Engine.gohome;
delay(500);
end;
Engine.MoveTo(147976, -55256, -2712);
delay(300);
engine.settarget(31275);
delay(500);
engine.dlgOPen();
delay(500);
engine.dlgsel(1);
delay(500);
engine.dlgsel(11);
delay(500);
Engine.MoveTo(145976, -112696, -2384);
Engine.MoveTo(148920, -112568, -2080);
Engine.MoveTo(149176, -112472, -2048);
Engine.MoveTo(149528, -112680, -2048);
engine.SetTarget(31521);
delay(500);
engine.dlgOpen;
delay(500);
engine.dlgsel(1);
delay(500);
engine.dlgsel(1);
delay(500);
engine.dlgsel(1);
delay(500);
engine.dlgOpen;
delay(500);
engine.dlgsel(1);
delay(500);
engine.dlgsel(2);
delay(500);
engine.dlgsel(1);
delay(500);
//Äćĺđĺěč - Áĺîëčí řŕă 2
Engine.MoveTo(149100, -112430, -2072);
Engine.MoveTo(148169, -112663, -2164);
Engine.MoveTo(147539, -113265, -2115);
Engine.SetTarget(31547);
delay(500);
Engine.DlgOpen;
delay(500);
Engine.DlgSel(2);
delay(500);
Engine.DlgSel(2);
delay(500);
engine.dlgsel(1);
delay(500);
// Áĺîëčí - Ďóëčí řŕă3
Engine.MoveTo(147768,-113400,-2112);
Engine.MoveTo(147928,-113384,-2120);
Engine.MoveTo(148280,-113368,-2112);
Engine.MoveTo(150168,-114136,-1936);
Engine.MoveTo(150984,-115000,-1648);
Engine.MoveTo(152312,-115016,-1584);
Engine.MoveTo(154216,-114984,-1552);
Engine.MoveTo(156504,-115368,-1808);
Engine.MoveTo(157192,-115592,-1888);
Engine.MoveTo(157496,-115800,-1904);
Engine.MoveTo(157624,-115496,-1904);
delay(500);
Engine.SetTarget(31543);
delay(500);
Engine.DlgOpen;
delay(500);
Engine.DlgSel(2);
delay(500);
Engine.DlgSel(1);
delay(500);
engine.dlgsel(1);
delay(500);
Engine.MoveTo(157592,-115272,-1904);
Engine.MoveTo(157624,-114952,-1904);
Engine.MoveTo(157416,-114104,-1872);
Engine.MoveTo(157048,-113848,-1784);
Engine.MoveTo(156664,-113512,-1776);
Engine.MoveTo(156424,-112632,-1792);
Engine.MoveTo(156168,-112056,-1912);
Engine.MoveTo(156152,-111912,-1960);
Engine.MoveTo(156280,-111816,-2152);
Engine.MoveTo(156328,-111464,-2440);
Engine.MoveTo(156328,-111256,-2552);
Engine.MoveTo(156360,-111064,-2576);
Engine.MoveTo(156680,-110584,-2608);
Engine.MoveTo(156744,-110328,-2672);
Engine.MoveTo(156904,-109720,-2664);
Engine.MoveTo(157192,-109368,-2672);
Engine.MoveTo(157128,-109192,-2656);
Engine.MoveTo(157176,-109144,-2648);
Engine.MoveTo(157112,-108568,-2672);
Engine.MoveTo(156616,-107864,-2640);
Engine.MoveTo(156024,-106792,-2704);
Engine.CancelTarget;
Engine.MoveTo(155928,-106120,-2736);
Engine.MoveTo(155928,-105992,-2728);
Engine.MoveTo(155672,-105752,-2752);
delay(500);
Engine.SetTarget(31544);
delay(500);
Engine.DlgOpen;
delay(500);
Engine.DlgSel(2);
delay(500);
Engine.DlgSel(1);
delay(500);
engine.dlgsel(1);
delay(500);
Engine.MoveTo(155560,-105448,-2752);
Engine.MoveTo(155176,-105016,-2752);
Engine.MoveTo(153832,-103000,-2976);
Engine.MoveTo(153560,-102360,-2848);
Engine.MoveTo(153096,-101896,-2752);
Engine.MoveTo(152680,-101592,-2888);
Engine.MoveTo(152040,-101384,-2896);
Engine.MoveTo(149256,-101128,-2872);
Engine.MoveTo(148696,-101048,-2912);
Engine.MoveTo(148280,-101080,-2968);
Engine.MoveTo(146584,-101288,-3096);
Engine.MoveTo(146120,-101896,-2912);
Engine.MoveTo(145960,-102120,-2944);
Engine.MoveTo(145880,-102360,-3136);
Engine.MoveTo(145672,-102616,-3424);
Engine.MoveTo(145080,-102920,-3536);
Engine.MoveTo(144328,-103048,-3552);
Engine.MoveTo(142568,-104568,-3616);
Engine.MoveTo(141656,-105448,-3616);
Engine.MoveTo(141080,-105656,-3616);
Engine.MoveTo(140776,-105512,-3632);
delay(500);
Engine.SetTarget(31545);
delay(500);
Engine.DlgOpen;
delay(500);
Engine.DlgSel(2);
delay(500);
Engine.DlgSel(1);
delay(500);
engine.dlgsel(1);
delay(500);
Engine.MoveTo(140776,-105832,-3624);
Engine.MoveTo(140824,-106760,-3632);
Engine.MoveTo(141624,-107944,-3568);
Engine.MoveTo(141800,-108472,-3584);
Engine.MoveTo(141704,-108840,-3584);
Engine.MoveTo(141672,-109240,-3584);
Engine.MoveTo(141640,-109368,-3584);
delay(500);
Engine.SetTarget(31546);
delay(500);
Engine.DlgOpen;
delay(500);
Engine.DlgSel(2);
delay(500);
Engine.DlgSel(1);
delay(500);
Engine.DlgSel(1);
/
delay(500);
Engine.DlgOpen;
delay(500);
Engine.DlgSel(2);
delay(500);
Engine.DlgSel(2);
delay(500);
engine.dlgsel(1);
delay(500);
Engine.MoveTo(141800,-109144,-3584);
Engine.MoveTo(141720,-108344,-3584);
Engine.MoveTo(141704,-108104,-3568);
Engine.MoveTo(141144,-106104,-3632);
Engine.MoveTo(140696,-105496,-3632);
delay(500);
Engine.SetTarget(31545);
delay(500);
Engine.DlgOpen;
delay(500);
Engine.DlgSel(2);
delay(500);
Engine.DlgSel(2);
delay(500);
engine.dlgsel(1);
delay(500);
Engine.MoveTo(140664,-105784,-3608);
Engine.MoveTo(140760,-106152,-3632);
Engine.MoveTo(141176,-106584,-3616);
Engine.MoveTo(141360,-106686,-3584);
Engine.MoveTo(142957,-107570,-3456);
Engine.MoveTo(144920,-108648,-3456);
Engine.MoveTo(146408,-108952,-3240);
Engine.MoveTo(148136,-108856,-2760);
Engine.MoveTo(149272,-108984,-2512);
Engine.MoveTo(149832,-110728,-2272);
//*Engine.MoveTo(152360,-111400,-2488);
Engine.MoveTo(150910,-112375,-2256);
Engine.MoveTo(154232,-109832,-2704);
Engine.MoveTo(155016,-107352,-2656);
Engine.MoveTo(155592,-105720,-2752);
delay(500);
Engine.SetTarget(31544);
delay(500);
Engine.DlgOpen;
delay(500);
Engine.DlgSel(2);
delay(500);
Engine.DlgSel(2);
delay(500);
engine.dlgsel(1);
delay(500);
Engine.MoveTo(155432,-106200,-2752);
Engine.MoveTo(155224,-106984,-2672);
Engine.MoveTo(155154,-107529,-2632);
Engine.MoveTo(152851,-110992,-2568);
Engine.MoveTo(150728,-112648,-2208);
Engine.MoveTo(150296,-113960,-1968);
Engine.MoveTo(150904,-114984,-1640);
Engine.MoveTo(154040,-114984,-1552);
Engine.MoveTo(156984,-115384,-1888);
Engine.MoveTo(157624,-115368,-1904);
delay(500);
Engine.SetTarget(31543);
delay(500);
Engine.DlgOpen;
delay(500);
Engine.DlgSel(2);
delay(500);
Engine.DlgSel(2);
delay(500);
engine.dlgsel(1);
delay(500);
Engine.MoveTo(157048,-115272,-1888);
Engine.MoveTo(156952,-115320,-1888);
Engine.MoveTo(155064,-115112,-1584);
Engine.MoveTo(152008,-114920,-1584);
Engine.MoveTo(149976,-114264,-1952);
Engine.MoveTo(149864,-113336,-2080);
Engine.MoveTo(149848,-112856,-2072);
Engine.MoveTo(149528,-112664,-2064);
Engine.MoveTo(149256,-112504,-2064);
Engine.MoveTo(148696,-112616,-2144);
Engine.MoveTo(147928,-113272,-2144);
Engine.MoveTo(147880,-113320,-2120);
Engine.MoveTo(147736,-113304,-2112);
Engine.MoveTo(147528,-113304,-2112);
delay(500);
Engine.SetTarget(31547);
delay(500);
Engine.DlgOpen;
delay(500);
Engine.DlgSel(2);
delay(500);
Engine.DlgSel(1);
delay(500);
engine.dlgsel(1);
delay(500);
Engine.MoveTo(147816,-113288,-2112);
Engine.MoveTo(148232,-113128,-2128);
Engine.MoveTo(149160,-112520,-2064);
Engine.MoveTo(149416,-112520,-2064);
Engine.MoveTo(149528,-112680,-2064);
delay(500);
Engine.SetTarget(31521);
delay(500);
Engine.DlgOpen;
delay(500);
Engine.DlgSel(1);
delay(500);
Engine.DlgSel(1);
delay(500);
Engine.DlgSel(1);
delay(500);
Engine.DlgOpen;
delay(500);
Engine.DlgSel(1);
delay(500);
Engine.DlgSel(2);
delay(500);
engine.dlgsel(1);
delay(500);
Engine.UseItem(736);
Delay (25000);
if user.inrange(145264, -57680, -2960,250,150) then begin
Engine.MoveTo(146104, -58104, -2960);
Engine.MoveTo(146392, -57544, -2944);
end;
if user.inrange(147232, -58480, -2960,250,150) then begin
Engine.MoveTo(146120, -58072, -2960);
Engine.MoveTo(146408, -57544, -2944);
end;
if user.inrange(144752, -56752, -2960,250,150) then begin
Engine.MoveTo(145880, -57944, -2960);
Engine.MoveTo(146120, -58072, -2960);
Engine.MoveTo(146392, -57544, -2944);
end;
if user.inrange(145696, -57696, -2960,250,150) then begin
Engine.MoveTo(146152, -58024, -2960);
Engine.MoveTo(146392, -57544, -2944);
end;
if user.inrange(147664, -56464, -2768,250,150) then begin
Engine.MoveTo(147720, -58344, -2960);
Engine.MoveTo(146040, -58200, -2960);
Engine.MoveTo(146392, -57544, -2944);
end;
if user.inrange(145392, -56960, -2960,250,150) then begin
Engine.MoveTo(145784, -57800, -2960);
Engine.MoveTo(146168, -58008, -2960);
Engine.MoveTo(146408, -57544, -2944);
end;
if user.inrange(147680, -56928, -2768,250,150) then begin
Engine.MoveTo(147688, -58424, -2960);
Engine.MoveTo(146104, -58104, -2960);
Engine.MoveTo(146392, -57544, -2944);
end;
if user.inrange(150400, -56752, -2960,250,150) then begin
Engine.MoveTo(149720, -57816, -2960);
Engine.MoveTo(148120, -58360, -2960);
Engine.MoveTo(146584, -58232, -2960);
Engine.MoveTo(146168, -57976, -2960);
Engine.MoveTo(146392, -57544, -2944);
end;
if user.inrange(146832, -55904, -2768,250,150) then begin
Engine.MoveTo(145336, -57000, -2960);
Engine.MoveTo(146040, -58200, -2960);
Engine.MoveTo(146408, -57544, -2944);
end;
if user.inrange(144496, -55088, -2960,250,150) then begin
Engine.MoveTo(144776, -55448, -2960);
Engine.MoveTo(145368, -57592, -2960);
Engine.MoveTo(146120, -58024, -2960);
Engine.MoveTo(146408, -57544, -2944);
end;
if user.inrange(150704, -55744, -2960,250,150) then begin
Engine.MoveTo(150248, -56952, -2960);
Engine.MoveTo(149656, -57896, -2960);
Engine.MoveTo(147240, -58376, -2960);
Engine.MoveTo(146120, -58056, -2960);
Engine.MoveTo(146392, -57544, -2944);
end;
if user.inrange(144944, -55392, -2960,250,150) then begin
Engine.MoveTo(145144, -57224, -2960);
Engine.MoveTo(146168, -58040, -2960);
Engine.MoveTo(146408, -57544, -2944);
end;
if user.inrange(148560, -55904, -2768,250,150) then begin
Engine.MoveTo(147848, -56232, -2768);
Engine.MoveTo(146600, -56184, -2768);
Engine.MoveTo(145288, -57016, -2960);
Engine.MoveTo(145912, -57960, -2960);
Engine.MoveTo(146120, -58088, -2960);
Engine.MoveTo(146392, -57544, -2944);
end;
if user.inrange(147680, -56928, -2768,250,150) then begin
Engine.MoveTo(147720, -58440, -2960);
Engine.MoveTo(146456, -58216, -2960);
Engine.MoveTo(146152, -58056, -2960);
Engine.MoveTo(146392, -57544, -2944);
end;
if user.inrange(144960, -56224, -2960,250,150) then begin
Engine.MoveTo(145672, -57816, -2960);
Engine.MoveTo(146104, -58056, -2960);
Engine.MoveTo(146392, -57560, -2944);
end;
if user.inrange(148288, -58304, -2960,250,150) then begin
Engine.MoveTo(146728, -58312, -2960);
Engine.MoveTo(146152, -58024, -2960);
Engine.MoveTo(146392, -57528, -2944);
end;
if user.inrange(146272, -58176, -2976, 250, 150) then begin
Engine.MoveTo(146152, -58088, -2960);
Engine.MoveTo(146408, -57544, -2944);
end;
if user.inrange(149120, -58064, -2976, 250, 150) then begin
Engine.MoveTo(146584, -58232, -2960);
Engine.MoveTo(146152, -58008, -2960);
Engine.MoveTo(146392, -57528, -2944);
end;
if user.inrange(149088, -56256, -2776, 250, 150) then begin
Engine.MoveTo(148024, -56328, -2768);
Engine.MoveTo(147736, -57208, -2768);
Engine.MoveTo(147672, -58312, -2960);
Engine.MoveTo(146072, -58152, -2960);
Engine.MoveTo(146392, -57544, -2944);
end;
if user.inrange(146368, -56256, -2776, 250, 150) then begin
Engine.MoveTo(145336, -56968, -2960);
Engine.MoveTo(145832, -57864, -2960);
Engine.MoveTo(146120, -58024, -2960);
Engine.MoveTo(146408, -57544, -2944);
end;
if user.inrange(149872, -57424, -2976, 250, 150) then begin
Engine.MoveTo(149320, -58008, -2960);
Engine.MoveTo(147496, -58392, -2960);
Engine.MoveTo(146120, -58072, -2960);
Engine.MoveTo(146392, -57528, -2944);
end;
Engine.SetTarget(31267);
Delay(1000);
Engine.DlgOpen;
Delay(1000);
Engine.DlgSel(4);
Delay(1000);
engine.dlgsel(1);
delay(1000);
Engine.MoveTo(146072, -58200, -2960);
Engine.MoveTo(148584, -58120, -2960);
Engine.MoveTo(149208, -57896, -2960);
Engine.MoveTo(149112, -57672, -2952);
Engine.MoveTo(149320, -57480, -2952);
Engine.SetTarget(31584);
Delay(1000);
Engine.DlgOpen;
Delay(1000);
Engine.DlgSel(1);
Delay(1000);
Engine.DlgSel(2);
Delay(1000);
engine.dlgsel(1);
delay(1000);
Engine.MoveTo(149192,-57544,-2968);
Engine.MoveTo(149160,-57688,-2968);
Engine.MoveTo(149160,-58008,-2976);
Engine.MoveTo(147928,-58248,-2976);
Engine.MoveTo(147736,-58008,-2976);
Engine.MoveTo(147752,-55800,-2744);
Engine.MoveTo(147880,-55320,-2728);
end;
end;
end.
Provided by: Paule