хочу спросить на счет скрипта который на 1й странице, в общем когда выполняю скрипт, и бью скилом все нормально, безупречно отрабатывает, когда 2й раз бью скилом посылается пакет последний в таймере, то есть 1, 2 не посылаются. только тот который активируется и последний
Оффтоп
'delphi' Код:
const
name = 'Deffol';
var
Timer:TTimer;
TimerStep:integer;
procedure Init;
begin
TimerStep:=1;
Timer:=TTimer.Create(nil);
Timer.OnTimer:=@OnTimer;
Timer.enabled:=false;
Timer.interval:=400;
end;
procedure Free;
begin
Timer.free;
end;
procedure OnTimer(Sender: TObject);
begin
case TimerStep of
1:
begin
buf:=HStr('CF 57 6C 5C 03'); //Удар зверя III
SendToServerEx(name);
Inc(TimerStep);
end;
2:
begin
buf:=HStr('CF 57 6C 51 03'); //Бросок зверя I
SendToServerEx(name);
Inc(TimerStep);
end;
3:
begin
buf:=HStr('CF 57 6C 39 08'); //Чудовищный шрам III
SendToServerEx(name);
Timer.interval:=500;
Timer.enabled:=false;
end;
end;
end;
begin
if FromClient and (pck[1]=#$CF) and (ReadH(4)=875) and (ConnectName=name) then
Timer.enabled:=true;
end.
не могу понять в чем причина, думаю в том, что я таймер не правильно выключаю
//Breadfan: попробуй так: Оффтоп
delphi Код:
procedure OnTimer(Sender: TObject);
begin
case TimerStep of
3:
begin
buf:=HStr('CF 57 6C 39 08'); //Чудовищный шрам III
SendToServerEx(name);
Timer.interval:=500;
Timer.enabled:=false;
Inc(TimerStep);
end;
2:
begin
buf:=HStr('CF 57 6C 51 03'); //Бросок зверя I
SendToServerEx(name);
Inc(TimerStep);
end;
1:
begin
buf:=HStr('CF 57 6C 5C 03'); //Удар зверя III
SendToServerEx(name);
Inc(TimerStep);
end;
end;
If (TimerStep=4) then TimerStep:=1;
end;
Добавлено через 13 часов 52 минуты
пасиб
а ничего, что я вернул степ на первое место после последнего пакета, вот так:
'delphi' Код:
buf:=HStr('CF 57 6C 39 08'); //Чудовищный шрам III
SendToServerEx(Connectname);
Step:=1;
и еще я заметил, что таймер который обозначен в процедур инит, работает на весь скрипт, не смотря на то, что у меня внутри таймера еще один интервал обозначен, сначала думал показалось потом проверил и правда так
Добавлено через 13 минут
даже точней, первый раз работает первый интервал, в след раз всегда работает только последний интервал, а я хочу, чтоб таймер включался через допустим 200, а пакеты посылались через 500