Фильтр лута актуальный для PvPWaR'a
Для запуска скрипта введите /drop +
Для отключения /drop - .
Сейчас срипт фильтрует кристальные талики, но скрипт также фильтрует и другое.
//if not отвечает за то чтобы включить определенный фильтр. Тоесть если вы хотите фильтровать другой лут то должны убрать это // перед нужным лутом, а перед ненужным поставьте // .
var start, stop, name, from: string;
PID, le, startl, stopl, namel, grp, GID, froml: integer;
Flag, IFlag, Gflag: boolean;
procedure OnCreate;
begin
le := 23;
from := 'Скрипт';
froml := 19 - Length(from);
start := '+';
startl := length(start);
stop := '-';
stopl := length(stop);
name := 'drop';
namel := length(name);
flag := false;
end;
Procedure MsgInfo(msg: string);
begin
gSys.EnSendC(FormatPck('%hcdacca', ***91;$0A02, 02, 0, from + FStr(froml), Length(msg) + 2, 0, msg + #0***93;));
gSys.Sleep(15);
end;
BEGIN
if length(_gBuff) < 4 then exit;
PID := gInt(_gBuff, 3, 2);
if not (_gFromServ) and (PID = $0302) then
begin
if strcmp(copy(_gBuff, 5, namel), name) then
begin
if strcmp(copy(_gBuff, le, startl), start) then
begin
Flag := true;
MsgInfo('Фильтр дропа запущен');
end;
if strcmp(copy(_gBuff, le, stopl), stop) then
begin
Flag := false;
MsgInfo('Фильтр дропа остановлен');
end;
gBlockPacket;
end;
end;
if _gFromServ then
case PID of
$660D: begin
MsgInfo('Скрипт для фильтрации дропа');
MsgInfo('by Enigma (c)');
MsgInfo('');
MsgInfo('/drop + для запуска скрипта');
MsgInfo('/drop - для остановки скрита');
MsgInfo('~~~~~~~~~~~~~~~~');
end;
$1403: if Flag then
begin
grp := gInt(_gbuff, 5, 1); //получаем ID групы
GID := gInt(_gbuff, 6, 2); //получаем ID предмета
IFlag := false;
GFlag := false;
//if not ((grp = 20) and ((GID = 583) or (GID = 77) or (GID = 78))) then // Фарм ремней убийцы и стружки с пчи
//if not ((grp = 31) and ((GID = 333) or (GID = 334))) then //Фарм коробок бустеров
//if not (((grp = 9) or (grp = 8)) and ((GID = 1061) or (GID = 1088) or (GID = 1089))) then //Фарм ДДД бижи
if not ((grp=18) and (GID=105)) then //Фарм кристальной талики
//if not ((grp = 18) and ((GID = 20) or (GID = 22) or (GID = 23) or (GID = 25))) then //Фарм талик: невежи, покровы, тьма, хаос
gBlockPacket;
end;
end;
END.
Последний раз редактировалось Никочка; 08.09.2010 в 17:57.