Re: Попишу скрипты за еду.
Posted: 20.03.2017 12:16
В скрипте не находит реагенты в ReloadBag
Альтернативный клиент Ultima Online
https://stealth.od.ua/forum/
Code: Select all
sub plavka_rudi()
var t=uo.Timer()
uo.print('Укажите где лежит руда')
uo.addobject('gde')
while uo.Targeting()
wait(500)
wend
while uo.findtype('0x19B9',-1,'gde')
uo.moveitem('finditem', 1, 'backpack')
while not uo.findtype('0x19B9',-1,'backpack')
wend
while uo.findtype('0x19B9',-1,'backpack')
uo.useobject('finditem')
wend
if t+100 < uo.Timer() then
uo.waittargettype('0x0F51')
uo.useskill('Arms Lore')
t=uo.Timer()
endif
wend
end sub
Code: Select all
Program OreSmell;
const
sumka = $4000225B; // Сумка где лежит руда
dagger = $0F52; // dagger type
_Forge = $0FB1;
ingots = $1BF2;
ore = $19B9;
var
forge:Cardinal;
procedure ArmsLor(item:Word);
begin
if FindType(item,backpack) > 0 then
begin
UseSkill('Arms Lore');
WaitForTarget(5000);
if TargetPresent then TargetToObject(FindItem);
Wait(555);
end;
end;
procedure DropIngots(ingi:Word);
begin
if (FindType(ingi,backpack) > 0) and (FindQuantity >=10) then
begin
MoveItem(FindItem,FindQuantity,sumka,0,0,0);
Wait(555);
end;
end;
begin
UseObject(sumka);
Wait(555);
AddToSystemJournal('Search Forge');
FindDistance:=4;
FindVertical:=20;
if(FindType(_Forge,ground) > 0) then
begin
forge:=FindItem;
AddToSystemJournal('Forge found');
end
else
begin
AddToSystemJournal('Forge not found !!!');
halt;
end;
while(FindType(ore,sumka)>0) do
begin
MoveItem(FindItem,1,backpack,0,0,0);
Wait(555);
UseObject(FindItem);
WaitForTarget(5000);
if TargetPresent then TargetToObject(forge);
Wait(555);
ArmsLor(dagger);
DropIngots(ingots);
end;
end.
Code: Select all
program arms;
{$Include 'all.inc'}
var
i: integer;
const
meditlvl = 50; // Если мана ниже этого числа, медитируем. (Цена заклинания + 1)
sbook= $5A4E16CE; // ID Ерч-буки
buttonnum = '113'; // ID кнопки в ерч буке.
procedure castmyspell;
begin
CancelMenu;CancelMenu;CancelMenu;CancelMenu;
if TargetPresent then CancelTarget;
WaitTargetObject(findtype($0E34,backpack));
UseSkill('Inscription');
WaitGump(buttonnum);
WaitForTarget(1000);
TargetToObject(sbook);
wait(5000);
end;
procedure medit;
begin
while (mana < maxmana) do
begin
useskill('meditation');
wait(2000);
end;
end;
procedure dosomethingawful;
begin
useobject(backpack);
wait(500);
FindTypeEx($0E34,$ffff,backpack,False);
AddToSystemJournal('Осталось '+IntToStr(FindFullQuantity)+' скроллов.');
Hungry(2,backpack);
end;
Begin
dosomethingawful;
i:=0;
while (true) do
begin
i:=i+1;
if (mana > meditlvl) then begin castmyspell; end;
if (mana < meditlvl) then begin medit; end;
if i>10 then begin dosomethingawful; i:=0 end;
wait(500);
end;
end.