Показать сообщение отдельно
Старый 23.01.2009, 17:38   #4
Местный
 
Аватар для PanAm
 
Регистрация: 18.01.2008
Сообщений: 286
Сказал Спасибо: 24
Имеет 133 спасибок в 80 сообщенях
PanAm
По умолчанию

примерно так
delphi Код:
var   Timer : TTimer;   Counter : integer;   f : boolean; procedure Init; begin   Timer :=TTimer.Create(nil);   Timer.enabled :=false;         //таймер выключен   Timer.OnTimer :=@SendPck;      //адрес процедуры,                                  //которая будет выполнятся   Timer.interval :=500;          //Задержка в мс   f := false; end; procedure Free; begin   Timer.free; end; procedure SendPck(Sender: TObject); begin   if (Counter mod 2) = 0 then begin     buf:=hstr('7C B1 19 00 00');     SendToClient;   end else begin     buf:=hstr('65 DE 7D 22 10 00 00 00 00');     SendToServer;   end;   Dec(Counter);                //Уменьшаем счетчик   if Counter=0 then            //Проверяем     Timer.enabled :=false;     //и если надо выключаем end; var   S : string;   D1 : integer;   D2 : integer; begin   if FromClient and (pck[1]=#$49) then begin  //49=Say2     S :=ReadS(2);           //считываем текст сообщения     if S='START' then begin  //по START в чат включаем посылку       Counter := 20;       Timer.enabled :=true; //запускаем       f := true;       pck :='';             //не отправляем это на сервер     end   end;   if FromServer and (pck[1]=#$62) then begin     D1 := ReadD(2);     D2 := ReadD(6);     if (D1=1517) and (D2=0) and f then begin       Counter := 20;       Timer.enabled :=true//опять запускаем     end;   end; end.

Последний раз редактировалось PanAm, 28.01.2009 в 15:34.
PanAm вне форума   Ответить с цитированием
За это сообщение PanAm нажился 2 спасибками от: