а может кто нить подкоректировать вот это, чтобы определял профу маг/дд и соответсвтенно баф на выбор делал
Код:
//by mks
//Бот баффер Elven Saint, баффает за 5кк
const //баффы 3й профы
b1='2F 49 05 00 00 00 00 00 00 00 ';
b2='2F 4A 05 00 00 00 00 00 00 00 ';
b3='2F 17 05 00 00 00 00 00 00 00 ';
b4='2F 4B 05 00 00 00 00 00 00 00 ';
var
Target: string;
prof,x: integer;
timer1: TTimer;
procedure Init;
begin
timer1:=TTimer.Create(nil);
timer1.OnTimer:=@OnTimer;
timer1.enabled:=true;
timer1.interval:=2000;
end;
procedure OnTimer(Sender: TObject);
begin
case x of
1: begin
buf:=hstr(b1);
sendtoserver;
x:=x+1;
end;
2: begin
buf:=hstr(b2);
sendtoserver;
x:=x+1;
end;
3: begin
buf:=hstr(b3);
sendtoserver;
x:=x+1;
end;
4: begin
buf:=hstr(b4);
sendtoserver;
x:=0;
end;
end;
end;
procedure Free;
begin
timer1.Free;
end;
///////////////////////////////////////////////////////////////////
begin
if FromServer and (pck[1]=#$5E) and (x=0) then //подкорректил немного, что б бот не принимал трэйд когда кого-то уже баффает 06.08.07
begin
Target:=#$04+pck[2]+pck[3]+pck[4]+pck[5];
buf:=hstr('44 01 00 00 00');
sendtoserver; //если кидают трэйд, то принимать
end;
if fromclient and (pck[1]=#$44) then pck:=''; {клиент почему-то иногда автоматом отылает кэнсл трэйд, поэтому убиватю этот пакет}
if fromserver and (pck[1]=#$21) then
begin
if pck[14]+pck[15]+pck[16]=#$40#$4B#$4C then {если в трэйд положили 5кк}
begin
buf:=hstr('17 01 00 00 00');//подтвердить трэйд
prof:=1;
end;
if prof=0 then buf:=hstr('17 00 00 00 00');//отмена трэйда
sendtoserver;
end;
if FromServer and (pck[1]+pck[2]=#$22#$01) then
begin
buf:=target;
sendtoserver;
if prof=1 then
begin
x:=1;
prof:=0;
end;
end;
end.