hedgewars/uIO.pas
changeset 1351 aa7aefec5c1b
parent 1066 1f1b3686a2b0
child 1352 405ad07cf875
--- a/hedgewars/uIO.pas	Mon Oct 13 18:37:59 2008 +0000
+++ b/hedgewars/uIO.pas	Mon Oct 13 19:04:27 2008 +0000
@@ -37,7 +37,7 @@
 var hiTicks: Word = 0;
 
 implementation
-uses uConsole, uConsts, uWorld, uMisc, uLand, uChat;
+uses uConsole, uConsts, uWorld, uMisc, uLand, uChat, uTeams;
 const isPonged: boolean = false;
 
 type PCmd = ^TCmd;
@@ -64,7 +64,7 @@
 FillChar(Result^, sizeof(TCmd), 0);
 Result^.Time:= Time;
 Result^.str:= str;
-dec(Result^.len, 2); // cut timestamp
+if Result^.cmd <> 'F' then dec(Result^.len, 2); // cut timestamp
 if headcmd = nil then
    begin
    headcmd:= Result;
@@ -216,7 +216,10 @@
 begin
 tmpflag:= true;
 
-while (headcmd <> nil) and ((GameTicks = headcmd^.Time) or (headcmd^.cmd = 's')) do
+while (headcmd <> nil)
+	and ((GameTicks = headcmd^.Time)
+		or (headcmd^.cmd = 's')
+		or (headcmd^.cmd = 'F')) do
 	begin
 	case headcmd^.cmd of
 		'+': ; // do nothing - it's just empty packet
@@ -239,6 +242,7 @@
 			AddChatString(s);
 			WriteLnToConsole(s)
 			end;
+		'F': TeamGone(copy(headcmd^.str, 2, Pred(headcmd^.len)));
 		'N': begin
 			tmpflag:= false;
 			{$IFDEF DEBUGFILE}AddFileLog('got cmd "N": time '+inttostr(headcmd^.Time)){$ENDIF}