ребят! такая тема есть) помогите сделать скрипт на хб. играю на одном серве, скок читал как писать скрипты чет я так и не догнал хотя пробывал, кароч такая просьба помогите сделать скрипт чтоб перс после смерти сам бафался и бежал к споту фармить и закупал сосок в альт б. сервер теон пвп! хроники хф, до обновы был скрипт мне скидывали но я его не пробывал, после обновы попробывал он не фурычит уже. могу скинуть старый скрипт, но мне кажется там бредятина какая то! точки респа хеин стоят. хотя когда перс погибает то встает в локе глудине в пустоше, вот мне надо чтоб он вставал после смерти бафался через альт б если мало сосок закупался и бежал к кристалу и от кристала тп делал на хб бежать к споту. спот на хб находится хз как обьяснять))) там круг в центре типо башни стоит) мобы тайный наблюдатель тайный стражник и разведчик ) скидываю старый скрипт каторый мне давали мб кто посмотрить его!
Код:
var Figth_Flag:boolean; Npc: TL2Npc;
Obj: TL2Buff;
IdBuff: integer;
Buff:TL2Buff;
obj2: TL2Effect;
i: integer;
Item,Item2,quest1,shots : TL2Item;
L2Skill: TL2Skill;
procedure hein;
begin
if User.inrange(110912,219584,-3664, 450) then begin
Engine.MoveTo(110912,219584,-3664);
Engine.MoveTo(111154,219735,-3675);
Engine.MoveTo(111176,219395,-3546);
Engine.MoveTo(111387,219387,-3544);
end;
if User.inrange(111888,219584,-3664, 450) then begin
Engine.MoveTo(111888,219584,-3664);
Engine.MoveTo(111617,219703,-3674);
Engine.MoveTo(111591,219371,-3544);
Engine.MoveTo(111387,219387,-3544);
end;
if User.inrange(112064,219792,-3664, 450) then begin
Engine.MoveTo(112064,219792,-3664);
Engine.MoveTo(111665,219800,-3675);
Engine.MoveTo(111580,219329,-3544);
Engine.MoveTo(111387,219387,-3544);
end;
if User.inrange(107808,217856,-3672, 450) then begin
Engine.MoveTo(107808,217856,-3672);
Engine.MoveTo(107769,217524,-3673);
Engine.MoveTo(109387,217509,-3747);
Engine.MoveTo(110037,217257,-3747);
Engine.MoveTo(110072,219029,-3477);
Engine.MoveTo(111202,219130,-3541);
Engine.MoveTo(111387,219387,-3544);
end;
if User.inrange(110896,220768,-3664, 450) then begin
Engine.MoveTo(110896,220768,-3664);
Engine.MoveTo(111191,219621,-3663);
Engine.MoveTo(111190,219303,-3544);
Engine.MoveTo(111387,219387,-3544);
end;
if User.inrange(110768,219824,-3664, 450) then begin
Engine.MoveTo(110768,219824,-3664);
Engine.MoveTo(111163,219763,-3671);
Engine.MoveTo(111199,219319,-3544);
Engine.MoveTo(111387,219387,-3544);
end;
if User.inrange(112112,220576,-3664, 450) then begin
Engine.MoveTo(112112,220576,-3664);
Engine.MoveTo(111600,219666,-3669);
Engine.MoveTo(111586,219305,-3544);
Engine.MoveTo(111387,219387,-3544);
end;
if User.inrange(110688,220576,-3664, 450) then begin
Engine.MoveTo(110688,220576,-3664);
Engine.MoveTo(111183,219655,-3669);
Engine.MoveTo(111201,219292,-3544);
Engine.MoveTo(111387,219387,-3544);
end;
if User.inrange(108032,218048,-3672, 450) then begin
Engine.MoveTo(108032,218048,-3672);
Engine.MoveTo(107862,218003,-3673);
Engine.MoveTo(107840,217532,-3673);
Engine.MoveTo(109383,217465,-3747);
Engine.MoveTo(110036,217280,-3747);
Engine.MoveTo(110096,219040,-3478);
Engine.MoveTo(111086,219100,-3541);
Engine.MoveTo(111387,219387,-3544);
end;
if User.inrange(107568,218256,-3672, 450) then begin
Engine.MoveTo(107568,218256,-3672);
Engine.MoveTo(107542,217872,-3673);
Engine.MoveTo(107840,217532,-3673);
Engine.MoveTo(109383,217465,-3747);
Engine.MoveTo(110036,217280,-3747);
Engine.MoveTo(110096,219040,-3478);
Engine.MoveTo(111086,219100,-3541);
Engine.MoveTo(111387,219387,-3544);
end;
if User.inrange(107552,218000,-3672, 450) then begin
Engine.MoveTo(107552,218000,-3672);
Engine.MoveTo(107862,218003,-3673);
Engine.MoveTo(107840,217532,-3673);
Engine.MoveTo(109383,217465,-3747);
Engine.MoveTo(110036,217280,-3747);
Engine.MoveTo(110096,219040,-3478);
Engine.MoveTo(111086,219100,-3541);
Engine.MoveTo(111387,219387,-3544);
end;
if User.inrange(111856,220752,-3664, 450) then begin
Engine.MoveTo(111856,220752,-3664);
Engine.MoveTo(111573,219730,-3675);
Engine.MoveTo(111589,219342,-3544);
Engine.MoveTo(111387,219387,-3544);
end;
end;
procedure sent;
begin
if inventory.User.ByID(57, Item) and (Item.count > 2000000000) then
begin
for i:=1 to Trunc(Item.count/4000000000) do
begin
Engine.SendMail('dvp', 'TEMA PISMA', 'TEXT PISMA',[57, 4000000000]);
if ((Item.Count/1000000)-(i*4000))<(1500+4000) then Break;
Delay(random(15000)+20000);
end;
end;
end;
procedure zakup;
begin
if (not Inventory.User.ByID(22108,Item)) or (Item.Count < 6) then begin // докуп мп
Engine.FaceControl(0, False);
Engine.BypassToServer('_bbshome', True) ;
delay(100);
Engine.BypassToServer('_bbspage:30', True) ;
delay(100);
Engine.BypassToServer('_bbspage:30-2', True) ;
delay(100);
Engine.BypassToServer('_bbsmultisell:90162;_bbspage:30-2', True) ;
delay(100);
Engine.NPCExchange(22108, 7);
Engine.FaceControl(0, true);
end;
delay(1600);
if (not Inventory.User.ByID(728,Item)) or (Item.Count < 100) then begin // докуп мп
Engine.FaceControl(0, False);
Engine.BypassToServer('_bbshome', True) ;
delay(100);
Engine.BypassToServer('_bbspage:30', True) ;
delay(100);
Engine.BypassToServer('_bbspage:30-2', True) ;
delay(100);
Engine.BypassToServer('_bbsmultisell:90165;_bbspage:30-2', True) ;
delay(100);
Engine.NPCExchange(728, 200);
delay(100);
Engine.FaceControl(0, true);
end;
end;
procedure buffs;
begin
Engine.SetTarget(31222);
Engine.DlgOpen;
delay(1000);
Engine.DlgSel('Получить Баф.');
delay(1000);
Engine.ByPassToServer('02 Player 11', true);
delay(1000);
end;
procedure Sled;
begin
Engine.SetTarget(32484);
delay(1000);
Engine.DlgOpen;
delay(1000);
Engine.DlgSel(2);
delay(1000);
Engine.DlgSel(2);
resp;
end;
procedure resp;
begin
if User.InRange(111464, 219992, -3648,5500) then begin
sent;
delay(3333);
zakup;
delay(3333);
hein;
delay(3333);
buffs;
delay(3333);
run1;
delay(3333);
run2;
end;
if User.InRange(-16232, 210040, -3648,3300) then begin
engine.useitem(7128);
end;
end;
procedure run1;
begin
Engine.MoveTo(111384, 219272, -3528);
Engine.MoveTo(111448, 219208, -3536);
Engine.MoveTo(111560, 219256, -3536);
Engine.MoveTo(111576, 219416, -3536);
Engine.MoveTo(111608, 219688, -3664);
Engine.MoveTo(112024, 219608, -3648);
engine.settarget(32318);
engine.dlgopen;
delay(333);
engine.dlgsel(1);
delay(9999);
end;
procedure run2;
begin
Engine.MoveTo(-12472, 236504, -3264);
Engine.MoveTo(-13112, 236664, -3280);
Engine.MoveTo(-14680, 237336, -3344);
Engine.MoveTo(-16056, 237864, -3344);
Engine.MoveTo(-16712, 238200, -3328);
Engine.MoveTo(-17304, 238776, -3312);
Engine.MoveTo(-17944, 239512, -3344);
Engine.MoveTo(-18184, 241000, -3360);
Engine.MoveTo(-18376, 241416, -3328);
Engine.MoveTo(-18728, 242104, -3328);
Engine.MoveTo(-19528, 242600, -3360);
Engine.MoveTo(-20664, 242712, -3248);
Engine.MoveTo(-21784, 242952, -3120);
Engine.MoveTo(-22360, 243304, -3056);
Engine.FaceControl(0, true);
end;
procedure toVillage;
begin
Delay(100);
if (User.hp=0) then begin
Delay(700);
Engine.FaceControl(0, false);
Engine.GoHome;
Delay(9900);
resp;
end;
end;
begin
repeat
toVillage;
delay(2222);
resp;
delay(2222);
zakup;
until Engine.Status = lsOffline;
Delay(5000);
end.