Page 1 of 1

SC For Abyss

Posted: 16.02.2017 15:19
by Akad3m1k
Доброго времени суток, вчера почитал гайд по скриптингу))
Встал вопрос о прокачке хилинга на абисе, вот что из этого вышло:

Смысл такой - одеваем орку, это дает нам +5 хп, юзаем бинт на себя и одеваем любую другую шапку.
Healing

Code: Select all

Program healingsb;
var helm,hat : Cardinal; //орка и шапка, для переодевания  cardinal = id
bint : word; //бинт              word = type
begin
helm:= $4177905C;
hat:= $41904D66;
bint:= $0E21;
repeat
//если какой то нехороший человек 
//подойдет и будет пытаться тебя убить
if (HP < 100) then 
begin
uosay('Guards');
wait (500)
uosay('Guards');
wait (500)
uosay('Guards');
end;
useobject(helm);
wait(200)
Useobject(FindType(bint,backpack));
WaitForTarget(100);
if targetpresent then
   begin
   TargetToObject(self);
   end;
wait(2900)
useobject(hat);
Until Dead;
end.
Прикрутить бы ему еще мытье бинтов, вообще изи хилинг))

Re: SC For Abyss

Posted: 16.02.2017 16:29
by GeeZeR
Так прикрути, кровавые бинты будут вроде с тем же типом, но цвет другой. Цвет и тип узнай у чара в бэкпаке во вкладке World или командой .info или ,info в клиенте из под стелса.

Code: Select all

If FindTypeEx(bint, $<цвет>, backpack, true) > 0 then begin
	UseType(bint, $<цвет>);
	WaitForTarget(5000);
	WaitTargetType($<тут тип ведра для мытья>); // или WaitTargetGround если ведро не в бэкпаке, а рядом на земле.
end;
как-то так.

Re: SC For Abyss

Posted: 17.02.2017 11:18
by Akad3m1k
GeeZeR wrote:Так прикрути, кровавые бинты будут вроде с тем же типом, но цвет другой. Цвет и тип узнай у чара в бэкпаке во вкладке World или командой .info или ,info в клиенте из под стелса.

Code: Select all

If FindTypeEx(bint, $<цвет>, backpack, true) > 0 then begin
	UseType(bint, $<цвет>);
	WaitForTarget(5000);
	WaitTargetType($<тут тип ведра для мытья>); // или WaitTargetGround если ведро не в бэкпаке, а рядом на земле.
end;
как-то так.
А как можно сделать что бы он мыл не в ведре, а в море ?

Re: SC For Abyss

Posted: 17.02.2017 14:29
by GeeZeR
Короче сначала выясни тип и цвет норм бинтов и с кровью, если тип один задай только цвет (BloodyBintColor, NormalBintColor). Подойдёшь к морю запусти, он тебе выдаст таргет - кликни на тайл моря. Должно работать.

Code: Select all

Program healingsb;
var helm,hat : Cardinal; //орка и шапка, для переодевания  cardinal = id
X, Y, Z, Tile, bint, BloodyBintColor, NormalBintColor : word; //бинт              word = type
begin
helm:= $4177905C;
hat:= $41904D66;
bint:= $0E21;

// Цвета нормального и кровавого винтов
BloodyBintColor := 
NormalBintColor := 

// задаёт координаты и тип тайла моря
	ClientPrintEx(0, 70, 0, 'Кликни на тайл моря');
	ClientRequestObjectTarget;
	repeat
		if ClientTargetResponsePresent then begin
			Tile := ClientTargetResponse.Tile;
			X:=ClientTargetResponse.X;
			Y:=ClientTargetResponse.Y;
			Z:=ClientTargetResponse.Z;
		end;
		wait(500);
	until Tile > 0;

repeat
//если какой то нехороший человек
//подойдет и будет пытаться тебя убить
if (HP < 100) then begin
uosay('Guards');
wait (500);
uosay('Guards');
wait (500);
uosay('Guards');
end;
useobject(helm);
wait(200);
// Useobject(FindType(bint,backpack)); // это может не срабатывать, если будут бинты с разными цветами одного типа. Лучше просто юзать бинты по типу с указанием цвета.
UseType(bint, NormalBintColor);
WaitForTarget(100);
if targetpresent then begin
   TargetToObject(self);
end;
wait(2900);
useobject(hat);

//Моет бинты
If FindTypeEx(bint, BloodyBintColor, backpack, true) > 0 then begin
   UseType(bint, BloodyBintColor);
   WaitForTarget(5000);
   WaitTargetTile(Tile, X, Y, Z);
end;
Until Dead;
end.

Re: SC For Abyss

Posted: 18.02.2017 14:42
by Akad3m1k
Спасибо, проблема просто в том, что я не могу зайти в игру через стелс.
Шард абис. там чет клиент новый какой то, и пишет проблем коммуникейшн )