Скриптоспам
to Dyh9l: Оффтоп
delphi Код:
const
name = 'Lonny';
flood = '.....';
var
nik : string;
NickBase: TStringList; // - база ников
//проц-ра получения значения
function GetValue(ValName: string): string;
begin
result:=NickBase.Values[ValName];
end;
// запись переменной\значения
procedure SetValue(ValName: string; Value: string);
begin
NickBase.Values[ValName]:=Value;
end;
procedure Init;
begin
NickBase:=TStringList.create;
end;
procedure Free;
begin
NickBase.free;
end;
procedure pmattack;
begin
buf:=#$38;
WriteS(flood);
WriteD(2);
WriteS(Nik);
SendToServerEx(name);
end;
begin
if FromServer and (connectname=name) and (pck[1]=#$03) then begin
Nik:=ReadS(22);
if (getvalue(nik)<>'on') then begin
pmattack;
SendMsg(nik);
SetValue(Nik,'on');
end;
end;
end.
Вобщем ведется база ников, при приходе очередного CharInfo с ником который отсутствует в БД - ему отправляется пм с текстом flood, а ник заносится в базу в качестве имени переменной со значением on, для исключения последующего спама. Если разбирать конкретнее пакет CharInfo - то возможно слать по каким-либо определанным параметрам (есть\нет клана, раса, шмот, и прочее чего там приходит из статов). База обнуляется при перезапуске скрипта (вроде)
__________________
На фразы в аську типа "слух карочь 1)как точить 2)как раскачаться за 5 мин" - игнор. ИМХО идиотизм
Дай голодному рыбу - он будет один день сыт. Покажи ему, как удить рыбу - он пошлёт тебя и скажет, что у него есть более интересные занятия, чем забрасывать снасти в воду
David Kastrup @ de.comp.text.tex.
"Приобретенные навыки общения с маленькими детьми - сильно упрощают взаимопонимание на форумах..."
А вы знаете, что для качественной сварки - место шва нужно протереть спиртом?
Последний раз редактировалось Breadfan, 17.11.2010 в 16:04.
|