спасибо что указал, буду изучать пакеты! я так понимаю из пакетов можно извлечь эту информацию о моем хп например, то есть перевести байты и увидеть число и указать, что если число будет меньше, надо послать определенный пакет?
//by 6yDDucT, modified NLObP//автоматическое использование НР пробирок// 1-Изменяем Leader='NLObP';// 2-в конце скрипта изменить кол-во ХП при котором начнется пьянка.// 3-бросаем и подбираем Heal Potion или выпиваемconst
Leader='NLObP';
var MyID:Word;
OID:String;
timerHP: TTimer;
//все сообщения ботов в чате патилидера//видны только намprocedure Say(msg:string);
begin//buf:=#$4A#0#0#0#0;
buf:=hstr('4A 00 00 00 00');
WriteD(2);
WriteS(ConnectName);
WriteS(msg);
SendToClientEx(Leader);
end;
procedure OnTimerHP(Sender: TObject);
begin
buf:=#$14+OID+#$00#$00#$00#$00;
SendToServerEx(Leader);
end;
//******************************************************************************// Вызывается при включении скрипта//******************************************************************************procedure Init;
begin
timerHP:=TTimer.Create(nil);
timerHP.OnTimer:=@OnTimerHP; //
timerHP.enabled:=false; //
timerHP.interval:=15000; //время отката леченияend;
//******************************************************************************// Вызывается при выключении скрипта//******************************************************************************procedure Free;
begin
timerHP.Free;
end;
//******************************************************************************// Вызывается при приходе каждого пакета, если скрипт включен//******************************************************************************beginif FromServer and(pck[1]=#$27)and(ReadD(12)=1061)thenbegin//1061 - idItem'a который мы хотим юзать, в данном случае Healing Potion
OID:=pck[8]+pck[9]+pck[10]+pck[11];
//Say('Ok');end;
if FromServer and(pck[1]=#$27)and(ReadD(12)=1060)thenbegin//1061 - idItem'a который мы хотим юзать, в данном случае Lesser Healing Potion
OID:=pck[8]+pck[9]+pck[10]+pck[11];
//Say('Ok');end;
if FromServer and(pck[1]=#$04)then MyID:=ReadD(18);
if FromServer and(pck[1]=#$0e)and(ReadD(2)=MyID)thenif ReadD(6)=4thenif(ReadD(14)<=1600)thenbegin//400 - кол-во ХП при котором начнется пьянка.
TimerHP.enabled:=true;
// buf:=#$14+OID+#$00#$00#$00#$00;// SendToServerEx(Leader);endelse TimerHP.enabled:=false;
end.