uses SysUtils,Classes;
procedure overi(p: pointer);
var
keycode,j,i,m,k:integer;
char2,char3:tl2char;
begin
while engine.status=lsonline do begin
Engine.WaitAction([laKey],keycode,i);
if KeyCode = $5A then begin
for j := 0 to CharList.count -1 do begin
Char2 := CharList.Items(j);
if not (char2.abnormalid=2048) and (User.DistTo(char2)<1000) and not (char2.ismember) and (char2.classid=115) and not (char2.clanid=user.clanid) and (char2.pvp) and not (char2.dead) and not (user.target.name=char2.name)
then
begin
Engine.Settarget(char2.name);break
end;
end;
end;
end;
end;
procedure Cardinali (p: pointer);
var
keycode,j,i,m,k:integer;
char2,char3:tl2char;
begin
while engine.status=lsonline do begin
Engine.WaitAction([laKey],keycode,i);
if KeyCode = $58 then begin
for j := 0 to CharList.count -1 do begin
Char2 := CharList.Items(j);
if not (char2.abnormalid=2048)and (User.DistTo(char2)<1000) and not (char2.ismember) and (char2.classid=97) and not (char2.clanid=user.clanid) and (char2.pvp) and not (char2.dead) and not (user.target.name=char2.name)
then
begin
Engine.Settarget(char2.name);break
end;
end;
end;
end;
end;
procedure SWS (p: pointer);
var
keycode,j,i,m,k:integer;
char2,char3:tl2char;
begin
while engine.status=lsonline do begin
Engine.WaitAction([laKey],keycode,i);
if KeyCode = $56 then begin
for j := 0 to CharList.count -1 do begin
Char2 := CharList.Items(j);
if not (char2.abnormalid=2048)and (User.DistTo(char2)<1000) and not (char2.ismember) and (char2.classid=100) and not (char2.clanid=user.clanid) and (char2.pvp) and not (char2.dead) and not (user.target.name=char2.name)
then
begin
Engine.Settarget(char2.name);break
end;
end;
end;
end;
end;
procedure zalivki (p: pointer);
var
keycode,j,i,m,k:integer;
char2,char3:tl2char;
begin
while engine.status=lsonline do begin
Engine.WaitAction([laKey],keycode,i);
if KeyCode = $43 then begin
for j := 0 to CharList.count -1 do begin
Char2 := CharList.Items(j);
if not (char2.abnormalid=2048)and (User.DistTo(char2)<1000) and not (char2.ismember) and (char2.classid=105) or (char2.classid=112) and not (char2.clanid=user.clanid) and (char2.pvp) and not (char2.dead) and (char2.target.ismember)
then
begin
Engine.Settarget(char2.name);break
end;
end;
end;
end;
end;
procedure antiback;
var
eu,char2:tl2char;
obj,obj1,cast:tl2effect;
i,j,g,pis,pis2:integer;
item: TL2Item;
function proxy : boolean;
begin
result:=false;
for i := 0 to CharList.count -1 do begin
Char2 := CharList.Items(i);
if (char2.cast.endtime > 0) and (User.DistTo(char2)<100) and (char2.cast.id=30) and not (char2.dead) and
(User.DistTo(char2)<100)
then begin
Engine.SetTarget(char2.name);
Engine.USeSkill(1396,true);
end;
end;
result:=true;
end;
begin
while engine.status = lsonline do begin
if proxy then delay(100);
Delay(100);
end;
end;
procedure holdtarget;
var
charT:tl2live;
obj:tl2effect;
begin
while engine.status = lsonline do begin
if (user.target.valid) then if not (User.Buffs.byID(18,obj)) and not (User.Buffs.ByID(28,obj)) then chart:=user.target;
if not user.target.valid then while not (User.Target.name = chart.name) do Engine.SetTarget(chart.name);
delay(100);
end;
end;
procedure tank;
var
eu,char2:tl2char;
obj,obj1,cast:tl2effect;
i,j,g,pis,pis2:integer;
function proxy : boolean;
begin
result:=false;
for i := 0 to CharList.count -1 do begin
Char2 := CharList.Items(i);
if (char2.cast.endtime>0)and not (char2.ismember) and (char2.cast.id=1506) and not (char2.dead) and
(User.DistTo(char2)<5200)
then begin
delay(500);
engine.say('BoE->>' + char2.name , 2 , User.name);break
end;
if (char2.cast.endtime>0)and not (char2.ismember) and (char2.cast.id=1428) and not (char2.dead) and
(User.DistTo(char2)<5200)
then begin
delay(500);
engine.say('mana pole->>' + char2.name , 2 , User.name);break
end;
if (char2.cast.endtime>0) and (char2.cast.id=1505) and not (char2.dead)
then begin
delay(500);
engine.say(' SUBLIME ' + char2.name ,2,user.name);
break
end;
if (char2.cast.endtime>0) and (char2.cast.id=789) then begin
delay(500);
engine.say('WILKU UZAET -> ' +char2.name,2,user.name);
delay(59000);
engine.say('wilka off' ,2 , user.name);break
end;
if (char2.cast.endtime>0) and (char2.cast.id=3282) and not (char2.dead)
then begin
engine.say('Maximum clarity ->' + char2.name , 2 , user.name);
delay(120000);
engine.say('max clarity -->> ' + char2.name , 2 ,user.name ) ;break
end;
end;
result:=true;
end;
begin
while engine.status = lsonline do begin
if proxy then delay(1);
Delay(1);
end;
end;
begin
script.newthread(@antiback);
script.newthread(@tank);
script.newthread(@holdtarget);
script.newthread(@zalivki);
script.newthread(@cardinali);
script.newthread(@overi);
script.newthread(@sws);
end.