Ребята, все равно приходится перезаходить чтоб сработал скрипт, от как часы:
1) логин + пароль.
2) перс1
3)система+выход
4)логин+пароль
5)перс1
6)системы+выход и срипт сработал, соединение осталось.
( в после третего клиент отправляет на сервер пакет инвентарлит, а после 6 сервер клиенту пакет leaveworld).
хелп плиз!
чтоб завести 20 окон надо ввести 40 раз логи + пароль((((((
PHP код:
const
nik='май';
var
ctfid,k: integer;
procedure Init; //Вызывается при включении скрипта
begin
end;
procedure OnTimer01(Sender: TObject);
begin
end;
procedure Free; //Вызывается при выключении скрипта
begin
k:=0;
end;
procedure OnConnect(WithClient: Boolean); //Вызывается при установке соединения
begin
end;
procedure OnDisonnect(WithClient: Boolean); //Вызывается при потере соединения
begin
end;
procedure NetPing;
begin
buf:=#$A8;
WriteD(ReadD(2));
WriteD(5);
WriteD(6144);
SendToServerEx(nik);
end;
procedure offclient;
begin
pck:='';
NoCloseServerAfterClientDisconnect;
NoCloseClientAfterServerDisconnect;
buf:=#$84;
SendToClientEx(nik);
end;
begin
if (connectname=nik) and (fromclient) and (pck[1]=#$00) then offclient;
if (connectname=nik) and (fromserver) and (pck[1]=#$D3) then NetPing;
//Cancel Augment
if k=1 then
begin
buf:=hstr('C6 BF 07 00 00 01 00 00 00');
WriteD(ctfid);
SendToServerEx(nik); k:=0;
end;
if Fromserver and (ConnectName=nik) and (pck[1]= HStr('F3')) then //56 0D 00 00 00 00 00 00 00 00 (Social No)
begin
ctfid:=readd(102);
k:=1;
end;
end.
Добавлено через 4 минуты
а вот и крипт на ловлю лс по нажатию 2 соц действий.
расшифровка:
1)подходиш к гному
2) включаеш скрипт
3)вручную как обычно вставляеш лс в пуху( если лс уже стоит, то предварительно надо снять, потом включить скрипт)
4) вручную снимаеш лс
5) соц действие "приветствие" вставка лс
6) сой действие "победа" вынимает лс.
PHP код:
const
nik='Lspyxa';
var
WeaponID, LsID, GemID, GemCount, zero: integer;
procedure Init; //Вызывается при включении скрипта
begin
end;
procedure OnTimer01(Sender: TObject);
begin
end;
procedure Free; //Вызывается при выключении скрипта
begin
end;
procedure OnConnect(WithClient: Boolean); //Вызывается при установке соединения
begin
end;
procedure OnDisonnect(WithClient: Boolean); //Вызывается при потере соединения
begin
end;
//основная часть скрипта
//вызывается при приходе каждого пакета если скрипт включен
begin
if FromClient and (pck[1]=#$D0) then
begin
WeaponID:=ReadD(4);
LsID:=ReadD(8);
GemID:=ReadD(12);
GemCount:=ReadD(16);
zero:=ReadD(20);
end;
//Cancel Augment
if FromClient and (pck = HStr('56 0D 00 00 00 00 00 00 00 00 ')) then //56 0D 00 00 00 00 00 00 00 00 (Social No)
begin
buf:=hstr('FE 52 00 ');//окно удаления арГ
SendToClient;
delay(300);
pck:='';
buf:=hstr('23 30 00 30 00 00 00 ');
SendToServer;
Buf:=#$D0#$42#$00;
WriteD(WeaponID);
SendToServer;
Buf:=#$D0#$43#$00;
WriteD(WeaponID);
SendToServer;
end;
//Augment
if FromClient and (pck = HStr('56 0C 00 00 00 00 00 00 00 00 ')) then //56 0C 00 00 00 00 00 00 00 00 (Social Yes)
begin
buf:=hstr('FE 51 00 ');//окно Арг
SendToClient;
delay(300);
pck:='';
buf:=hstr('23 30 00 30 00 00 00 ');
SendToServer;
Buf:=#$D0#$26#$00;
WriteD(WeaponID);
SendToServer;
delay(50);
Buf:=#$D0#$27#$00;
WriteD(WeaponID);
WriteD(LsID);
SendToServer;
delay(50);
Buf:=#$D0#$28#$00;
WriteD(WeaponID);
WriteD(LsID);
WriteD(GemID);
WriteD(GemCount);
WriteD(zero);
SendToServer;
delay(50);
Buf:=#$D0#$41#$00;
WriteD(WeaponID);
WriteD(LsID);
WriteD(GemID);
WriteD(GemCount);
WriteD(zero);
SendToServer;
end;
end.