Да может я гдето накосячил в программе но в целом когда скилл доходит до нужного значения он упорно продолжает сливать ресы и не переходит к качу другого навыка.
Code: Select all
Program New;
var
rubanoktime:TDateTime;
procedure tailor_drop();
begin
if (findtype($0E34,backpack)<>0) then
repeat
moveitem(findtype($0E34,backpack),0,$5AD46CF1,0,0,0);
wait(1500);
until(findtype($0E34,backpack)=0);
end;
procedure izdelie_drop_tinker();
begin
if(findtype($0FA6,backpack)<>0)then //шахматы
repeat
moveitem(finditem,0,ground,2,0,0);
wait(1500);
until(findtype($0FA6,backpack)=0);
end;
procedure izdelie_drop_carp();
begin
if(findtype($27AE,backpack)<>0)then //нунчаки
repeat
moveitem(finditem,0,ground,2,0,0);
wait(1000);
until(findtype($27AE,backpack)=0);
end;
procedure tinker();
begin
repeat
rubanoktime:=now;
useobject(findtype($1EB9,backpack));
wait(2000);
if((InJournalBetweenTimes('System: Этот предмет поломан, отнесите его мастеру',rubanoktime,Now)<>-1))then
begin
drophere(finditem);
wait(3000);
ClearJournal;
if((count($1EB9)<1))then
exit;
useobject(findtype($1EB9,backpack));
wait(1000);
end;
waitgump('4006');
waitfortarget(5000);
targettoobject(findtypeex($1BDD,$0000 ,ground,false));
wait(1000);
repeat
waitgump('100');
wait(500);
izdelie_drop_tinker();
wait(1000);
if(InJournalBetweenTimes('недостаточно',rubanoktime,Now)<>-1)then
uosay('Дерево кончилось!!!');
until((InJournalBetweenTimes('Вы закончили',rubanoktime,Now)<>-1)or
(InJournalBetweenTimes('поломан',rubanoktime,Now)<>-1)or
(InJournalBetweenTimes('недостаточно',rubanoktime,Now)<>-1)or
(InJournalBetweenTimes('Какой',rubanoktime,Now)<>-1));
ClearJournal;
until(dead or(Getskillvalue('Tinkering')=103.8));
end;
procedure carpentry();
begin
repeat
rubanoktime:=now;
useobject(findtype($1032,backpack));
wait(2000);
if ((InJournalBetweenTimes('System: Этот предмет поломан, отнесите его мастеру',rubanoktime,Now)<>-1))then
begin
drophere(finditem);
wait(3000);
ClearJournal;
if((count($1032)<1))then
exit;
useobject(findtype($1032,backpack));
end;
waitgump('10158');
waitfortarget(5000);
targettoobject(findtypeex($1BDD,$01BF,ground,false));
wait(1000);
repeat
waitgump('100');
wait(500);
izdelie_drop_carp();
wait(1000);
if(InJournalBetweenTimes('недостаточно',rubanoktime,Now)<>-1)then
uosay('Дерево кончилось!!!');
until((InJournalBetweenTimes('Вы закончили',rubanoktime,Now)<>-1)or
(InJournalBetweenTimes('поломан',rubanoktime,Now)<>-1)or
(InJournalBetweenTimes('недостаточно',rubanoktime,Now)<>-1)or
(InJournalBetweenTimes('Какой',rubanoktime,Now)<>-1));
until(dead or (Getskillvalue('Carpentry')=103.5));
end;
procedure tailor();
begin
repeat
rubanoktime:=now;
useobject(findtype($0F9D,backpack));
wait(1000);
if ((InJournalBetweenTimes('System: Этот предмет поломан, отнесите его мастеру',rubanoktime,Now)<>-1))then
begin
drophere(finditem);
wait(3000);
ClearJournal;
if((count($0F9D)<1))then
exit;
useobject(findtype($0F9D,backpack));
end;
waitgump('3636');
waitfortarget(5000);
if (findtype($1766,$5AD46CF1)<>0) then
targettoobject(findtype($1766,$5AD46CF1));
if (findtype($1766,$5AD46CF1)=0) then
uosay('Ткань кончилась положите еще срочно!!!');
wait(1000);
repeat
waitgump('100');
wait(500);
tailor_drop();
if(InJournalBetweenTimes('недостаточно',rubanoktime,Now)<>-1)then
uosay('Ткань кончилась положите еще срочно!!!');
until((InJournalBetweenTimes('Вы закончили',rubanoktime,Now)<>-1)or
(InJournalBetweenTimes('поломан',rubanoktime,Now)<>-1)or
(InJournalBetweenTimes('недостаточно',rubanoktime,Now)<>-1)or
(InJournalBetweenTimes('Какой',rubanoktime,Now)<>-1));
wait(1000);
until(dead or(Getskillvalue('Tailoring')=112.1));
end;
begin
tailor();
carpentry();
tinker();
end.