Code: Select all
Program BlackSmithy;
 
{$Include 'all.inc'}
 
var
TimeStart : TDateTime;
k :integer;
Item : Cardinal;
 
const
Mainbag1 = $549DC9FA;     //сумка с добычей
Mainbag2 = $549DC9FA;     //сумка с добычей
Ingots = $1BF2;       // руда
ItemType = $1415;     // куем пузо 1415, Gorget 1413, Arms 1410, Legs 1411   
ItemCost = 25;        // вес
ForgeObj = $401965B5; // тут указываем серийник плавильни
HammerType = $13E3;   // молот
TongsType = $0FBB;    // плавка
 
  
 
 
 
 
procedure ArmsLore;
begin
    CancelTarget; //на всякий случай уберем таргет
    WaitTargetType($0E85);
    UseSkill('Arms Lore'); //используем скилл
    wait (5000);
end;
 
 
procedure Resmelt;
begin
findtype(ItemType,backpack);
while FindCount() > 0 do
begin
Clearjournal();
   checksave;
   CheckTargetError(2,2);
     if targetpresent then canceltarget;
     k:=0;
     TimeStart:=Now;
     Item:=FindType(ItemType,Backpack);
     WaitTargetObject(Item)
      repeat
       UseObject(FindType(TongsType,Backpack));
       k := k + 1;
        wait(2000);
       until (InJournalBetweenTimes('What do you wish to smelt into ingots?|has to be', TimeStart, Now)<>-1) or (k > 7);
         WaitTargetObject(ForgeObj);
              repeat
               wait(100);
               k := k + 1;
              until (InJournalBetweenTimes('You turned|ailed|That cannot be melted down!', TimeStart, Now)<>-1) or (k > 300);
              findtype(ItemType,backpack);
    clearjournal;
end;
findtype(ItemType,backpack);
end;
 
 
 
 
Begin
SetARStatus(true);
Hungry(1,backpack);
while (not Dead) do
   begin
        Hungry(1,-1);
        CancelTarget; //на всякий случай уберем таргет
        WaitTargetType($0E85);
        UseSkill('Arms Lore'); //используем скилл
        wait (4000);
        ClearJournal;
        CancelMenu;
        k:=0;
        TimeStart:=Now;
        UseObject(FindType(HammerType,Backpack));
        findtype(Ingots,backpack);
        WaitTargetObject(finditem);
        wait(500)
        WaitMenu('What would you like to make?', 'Armors');
        wait(500)
        WaitMenu('What kind of armor?', 'Platemail');
        wait(500)
        WaitMenu('What would you like to make?', 'Platemail');
            repeat
                wait(100);  
                k := k + 1;
                wait(500);
            until (InJournalBetweenTimes('stop|pack|finished', TimeStart, Now)<>-1) or (k > 300);
        wait(100);
       // if (InJournal('Success: hernya.') > -1) or (InJournal('Success: Perfect.') > -1) then 
              //          begin  
               //             ClearJournal;
               //             Findtype(ItemType,backpack);
                //            wait(100);
                //            MoveItem(finditem, 0, Mainbag1, 0, 0, 0);
                //            wait(100);
                //        end;
       // if InJournal('Success')<>-1 then
        //    begin
        //        wait(500);
        //        Findtype(ItemType,backpack);
        //        wait(100);
         //       MoveItem(finditem, 0, Mainbag2, 0, 0, 0);
         //       wait(100);
          //  end;                                     
        Resmelt;
        ArmsLore;
        ClearJournal;         
   end;
End.
