Cпаринг 2,0

Модераторы: Britney, Alien, Alizee, MarkeR, Slade

Cпаринг 2,0

Сообщение Britney » 08-01, 10:07

Вот еще один макрос на спаринг
на нем я и качал, единственное уточнение, на последней версии стелса он глючит, так что надо скачать более старый стелс
*******************************************************************

Program Sparring;

const
EnemyID = $0274A59F; // id противника
PlayerType = $0191; // тип противника
War_X = 4012; // точка X для боя
War_Y = 211; // точка Y для боя
Heal_X = 4011; // точка X для хила
Heal_Y = 211; // точка Y для хила

var
ItemBox: Cardinal;
Item1, Item2, Item3: Integer;

////////////////////////////////////////////////
// Хил себя //
////////////////////////////////////////////////
procedure CheckHeal;
begin
UseObject(ItemBox);
If HP < MaxHP - 1 then
begin
attack($0274A59F);
UOSay(Chr(39)+'pc heal self');
AddToSystemJournal('хил');
Wait(8100);
UseObject(findType($097B, ground));
end;
end;
////////////////////////////////////////////////
// Проверка на жизнь //
////////////////////////////////////////////////
procedure CheckHealMin;
begin
UseObject(ItemBox);
If HP < MaxHP - 45 then
begin
attack($066B8DFA);
moveXY(Heal_X, Heal_Y, true, 0, true);
AddToSystemJournal('отбегаю');
end;
end;
/////////////////////////////////////////////////
// Проверяет наличие бинтов //
/////////////////////////////////////////////////
procedure CheckBint;
begin
attack($0274A59F);
UseObject(ItemBox);
If (FindType(Item1, Backpack) = 0) then
begin
moveXY(Heal_X, Heal_Y, true, 0, true);
AddToSystemJournal('отбегаю');
UseObject(ItemBox);
wait(1000)
UseObject(backpack);
Wait(1000);
FindType(Item1, ItemBox);
If finditem <> 0 then
begin
Grab(finditem, 100);
Wait(500);
end;
If (FindType(Item1, ItemBox) = 0) then
begin
AddToSystemJournal('Закончились бинты в сумке');
end;
end;
end;
/////////////////////////////////////////////////
// Проверяет наличие оружия //
/////////////////////////////////////////////////
procedure CheckDagger;
begin
UseObject(ItemBox);
attack($0274A59F);
If (FindType(Item2, self) = 0) then
begin
If (FindType(Item2, backpack) <> 0) then
begin
Equip (RhandLayer, finditem);
Wait(500);
end;
If (FindType(Item2, backpack) = 0) then
begin
UseObject(ItemBox);
Wait(500);
UseObject(backpack);
Wait(500);
FindType(Item2, ItemBox);
If finditem <> 0 then
begin
Grab(finditem, 1);
Wait(500);
end;
FindType(Item2, ItemBox);
If (FindType(Item2, ItemBox) = 0) then
begin
AddToSystemJournal('Закончилось оружие в сумке');
end;
end;
end;
end;
/////////////////////////////////////////////////
// Проверяет наличие щита //
/////////////////////////////////////////////////
procedure CheckShield;
begin
UseObject(ItemBox);
attack($0274A59F);
If (FindType(Item3, self) = 0) then
begin
If (FindType(Item3, backpack) <> 0) then
begin
Equip (LhandLayer, finditem);
Wait(500);
end;
If (FindType(Item3, backpack) = 0) then
begin
UseObject(ItemBox);
Wait(500);
UseObject(backpack);
Wait(500);
FindType(Item3, ItemBox);
If finditem <> 0 then
begin
AddToSystemJournal('Беру щит');
Grab(finditem, 1);
Wait(500);
end;
FindType(Item3, ItemBox);
If (FindType(Item3, ItemBox) = 0) then
begin
AddToSystemJournal('Закончились щиты в сумке');
end;
end;
end;
end;
/////////////////////////////////////////////////
// Поиск противника и атака //
/////////////////////////////////////////////////
procedure CheckOponent;
begin
UseObject(ItemBox);
attack($0274A59F);
If HP = MaxHP then
begin
if (GetType(EnemyID) = PlayerType) then
begin
wait(500)
moveXY(War_X, War_Y, true, 0, true);
AddToSystemJournal('атакую');
attack(EnemyID);
end;
end;
end;
/////////////////////////////////////////////////
// Остновная часть //
/////////////////////////////////////////////////
BEGIN
attack($0274A59F);
UOSay(Chr(39)+'resend');
AddToSystemJournal('ресенд');
Wait(8000);
UseObject(Backpack);
AddToSystemJournal('бекпак');
Wait(1000);
ItemBox := $5C4A8783;// ID сумки с итемами
Item1 := $0E21; // Бинты
Item2 := $0EC4;// Оружие (0EC4-skinning knife, 0F51-dagger, 0DF2- скиптр )
Item3 := $1B74; // Щит (1B74-metal kite shield, )
while not dead do
begin
If not(isDead(self)) then CheckHealMin;
If not(isDead(self)) then CheckBint;
If not(isDead(self)) then CheckDagger;
If not(isDead(self)) then CheckShield;
If not(isDead(self)) then CheckOponent;
If not(isDead(self)) then CheckHeal;
end;
END.
Аватара пользователя
Britney
-=Истинная Бландинка=-
 
Сообщения: 2308
Зарегистрирован: 26-04, 22:23
Откуда: Souls of Darkness

Вернуться в Макросы под Stealth

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0

cron