Code: Select all
Program Anatomy;
const
Enemy = $001B11A8;
tweapon = $1401;
tshield = $1B73;
ax = 1536;
ay = 1946;
bx = 1538;
by = 1946;
{$Include 'all.inc'}
procedure checkall;
begin
if (not dead) and (connected) then
begin
if (getquantity(findtype(tweapon,ground)) > 0) and (gettype(ObjAtLayer(RhandLayer)) <> gettype(finditem)) then
begin
addtosystemjournal('Weapon Change, осталось '+inttostr(findcount-1));
UnEquip(RHandLayer);
wait(500);
Equip(RhandLayer,finditem);
Wait(500);
end;
if (getquantity(findtype(tshield,ground)) > 0) and (gettype(ObjAtLayer(LhandLayer)) <> gettype(finditem)) then
begin
addtosystemjournal('Shield Change, осталось '+inttostr(findcount-1));
UnEquip(LHandLayer);
wait(500);
Equip(LhandLayer,finditem);
wait(500);
end;
end;
end;
procedure checkbandages;
begin
if (count($0E21) < 10) and (not dead) then
begin
MoveItem(FindType($0E21,ground),50,backpack,0,0,0);
wait(500);
end;
end;
procedure checkhp;
begin
if (HP < 25) then newMoveXY(bx,by,true,0,true);
if (HP > 25) then newMoveXY(ax,ay,true,0,true);
end;
Begin
SetARStatus(true);
moveThroughNPC := 1;
while true do
begin
SetWarMode(True);
while not Dead do
begin
Hungry(1,Ground);
checkhp;
checkall;
Attack(Enemy);
checkhp;
If TargetPresent Then CancelTarget;
UseSkill('Anatomy');
WaitTargetObject(Enemy);
Wait(1000);
checkbandages;
If TargetPresent Then CancelTarget;
if (count($0E21) > 0) then
begin
if (HP < MaxHP) then
begin
UseType($0E21,$FFFF);
WaitTargetSelf;
Wait(1000);
end;
end;
if (Count($0E20) > 0) then stack($0E20,$0000);
end;
end;
End.
Enemy = $001B11A8; - айди с кем воюем и на ком качаем анатомку
tweapon = $1401; - тип пушек для перезарядки
tshield = $1B73; - - тип щитов для перезарядки
ax = 1536; - координыты, где вместе стоим в спаринге
ay = 1946;
bx = 1538; - координаты через одну клетку, куда отбегать если хп опустится ниже 25 и не будем успевать отхиливаться.
by = 1946;
Жаренную рыбку рядом на пол и бинты тоже.
Щиты и оружие для перезарядки тоже рядом на пол.
Все остальное файты будут делать сами.
жду ваших комментариев