hedgewars/uIO.pas
branchqmlfrontend
changeset 10606 8e95911cb86b
parent 10515 7705784902e1
parent 10562 3388822b3914
child 10748 dc587913987c
equal deleted inserted replaced
10519:af019fa70080 10606:8e95911cb86b
   284 begin
   284 begin
   285 tmpflag:= true;
   285 tmpflag:= true;
   286 
   286 
   287 while (headcmd <> nil)
   287 while (headcmd <> nil)
   288     and (tmpflag or (headcmd^.cmd = '#')) // '#' is the only cmd which can be sent within same tick after 'N'
   288     and (tmpflag or (headcmd^.cmd = '#')) // '#' is the only cmd which can be sent within same tick after 'N'
   289     and ((GameTicks = hiTicks shl 16 + headcmd^.loTime)
   289     and ((GameTicks = LongWord(hiTicks shl 16 + headcmd^.loTime))
   290         or (headcmd^.cmd = 's') // for these commands time is not specified
   290         or (headcmd^.cmd = 's') // for these commands time is not specified
   291         or (headcmd^.cmd = 'h') // seems the hedgewars protocol does not allow remote synced commands
   291         or (headcmd^.cmd = 'h') // seems the hedgewars protocol does not allow remote synced commands
   292         or (headcmd^.cmd = '#') // must be synced for saves to work
   292         or (headcmd^.cmd = '#') // must be synced for saves to work
   293         or (headcmd^.cmd = 'b')
   293         or (headcmd^.cmd = 'b')
   294         or (headcmd^.cmd = 'F')
   294         or (headcmd^.cmd = 'F')
   360         end;
   360         end;
   361     RemoveCmd
   361     RemoveCmd
   362     end;
   362     end;
   363 
   363 
   364 if (headcmd <> nil) and tmpflag and (not CurrentTeam^.hasGone) then
   364 if (headcmd <> nil) and tmpflag and (not CurrentTeam^.hasGone) then
   365     TryDo(GameTicks < hiTicks shl 16 + headcmd^.loTime,
   365     TryDo(GameTicks < LongWord(hiTicks shl 16) + headcmd^.loTime,
   366             'oops, queue error. in buffer: ' + headcmd^.cmd +
   366             'oops, queue error. in buffer: ' + headcmd^.cmd +
   367             ' (' + IntToStr(GameTicks) + ' > ' +
   367             ' (' + IntToStr(GameTicks) + ' > ' +
   368             IntToStr(hiTicks shl 16 + headcmd^.loTime) + ')',
   368             IntToStr(hiTicks shl 16 + headcmd^.loTime) + ')',
   369             true);
   369             true);
   370 
   370