Улучшил ckрипт на нeвидимость. Теперь ты видишь мобов, а они тебя-нет.
Работает не у всех. У меня работает
Код:
//Invisible Mode
var
pck48:string;
hidden,bi:boolean;
i,x,y,targetid:integer;
timer1:ttimer;
procedure Init;
begin
hidden:=false;
pck48:='';
randomize;
timer1:=TTimer.Create(nil);
timer1.OnTimer:=@OnTimer; //
timer1.enabled:=false; //
timer1.interval:=200;
end;
procedure Free; //Вызывается при выключении скрипта
begin
timer1.free;
end;
procedure OnTimer(Sender: TObject);
begin
bi:=false;
timer1.enabled:=false;
end;
procedure SendMsg(msg:string);
begin
buf:=#$4A;
WriteD(0);
WriteD(2);
WriteS('hLaPEx');
WriteS(msg);
SendToClient;
end;
begin
if FromServer then begin
case ord(pck[1]) of
$28:pck:=#$48;
$12:if bi=true then pck:=#$48;
$2A:if bi=true then pck:=#$48;
end;
end;
if FromServer then exit;
case ord(pck[1]) of
$04:targetid:=ReadD(2);
$1B:case ord(pck[2]) of
$05:begin
SendMsg('invisible_mode: Off');
pck:=#$30;
hidden:=false;
timer1.enabled:=true;
bi:=true;
end;
$06:begin
if pck48='' then exit;
SendMsg('invisible_mode: On');
hidden:=true;
pck:=pck48;
i:=2;
x:=ReadD(i);
y:=ReadD(i);
x:=x+1000+round(random*200)-100;
y:=y+1000+round(random*200)-100;
buf:=pck;
WriteD(x,2);
WriteD(y,6);
pck:=buf;
timer1.enabled:=true;
bi:=true;
end;
end;
$48:pck48:=pck;
$30:if hidden then pck:='';
end;
end.