Цитата:
Сообщение от supernewbie
вообщем дело не в пакетах... он просто не врубает таймер, скорее всего проверка не робит твоя...
|
Ну да, в пакете которым ты пытаешься выкинуть итем не хватает Z координаты и по этому он никогда не сработает, но ты прав - дело не в пакетах, дело в руках.
delphi Код:
Var
PckIn: Boolean = False;
TimerPck: TTimer;
procedure Init;
begin
TimerPck:=TTimer.Create(nil);
TimerPck.OnTimer:=@OnTimerPck;
TimerPck.Enabled:=False;
TimerPck.interval:=5000;
end;
procedure OnTimerPck(Sender: TObject);
begin
SendMsg2('Karog', 'сработал таймер');
if not PckIn then
begin
SendMsg2('Karog', 'вместо этого потом будем посылать пакет на выкинуть итем');
end;
TimerPck.Enabled := False;
PckIn := False;
end;
procedure Free;
begin
TimerPck.Free;
end;
procedure SendMsg2(MyName, msg:string);
begin
buf:=#$4A;
WriteD(0);
WriteD(10);
WriteS('');
WriteS(msg);
SendToClientEx(MyName);
end;
begin
if FromServer and (ConnectName='Karog') then
begin
if (pck[1]=#$62) and (ReadD(6)=1) then
begin
if (ReadD(14)=1461) then
begin
SendMsg2('Karog', 'получен кристал А');
if not TimerPck.Enabled then TimerPck.Enabled := True;
end;
if (ReadD(14)=2131) and (TimerPck.Enabled) then
begin
SendMsg2('Karog', 'получен gem');
PckIn := True;
end;
end;
end;
end.
Что пишет в гм-чате?