hedgewars/uFLTypes.pas
branchqmlfrontend
changeset 11434 23912c93935a
parent 11433 bca9afcc3a72
child 11437 6e641b5453f9
--- a/hedgewars/uFLTypes.pas	Sat Nov 28 00:18:04 2015 +0300
+++ b/hedgewars/uFLTypes.pas	Mon Nov 30 23:25:18 2015 +0300
@@ -1,15 +1,20 @@
 unit uFLTypes;
 interface
 
+const
+    MAXARGS = 32;
+
 type
-    TMessageType = (mtPreview, mtAddPlayingTeam, mtRemovePlayingTeam, mtAddTeam, mtRemoveTeam
-                    , mtTeamColor, mtNetData, mtConnected, mtDisconnected, mtAddLobbyClient
+    TMessageType = (mtRenderingPreview, mtPreview, mtAddPlayingTeam, mtRemovePlayingTeam, mtAddTeam, mtRemoveTeam
+                    , mtTeamColor, mtNetData, mtFlibEvent, mtConnected, mtDisconnected, mtAddLobbyClient
                     , mtRemoveLobbyClient, mtLobbyChatLine, mtAddRoomClient
                     , mtRemoveRoomClient, mtRoomChatLine, mtAddRoom, mtUpdateRoom
                     , mtRemoveRoom, mtError, mtWarning, mtMoveToLobby, mtMoveToRoom
                     , mtNickname, mtSeed, mtTheme, mtScript, mtFeatureSize, mtMapGen
                     , mtMap, mtMazeSize, mtTemplate);
 
+    TFLIBEvent = (flibGameFinished);
+
     TIPCMessage = record
                    str: shortstring;
                    len: Longword;
@@ -86,6 +91,26 @@
         end;
     PAmmo = ^TAmmo;
 
+    PGameConfig = ^TGameConfig;
+    TGameConfig = record
+            seed: shortstring;
+            theme: shortstring;
+            script: shortstring;
+            map: shortstring;
+            scheme: TScheme;
+            ammo: TAmmo;
+            mapgen: LongInt;
+            featureSize: LongInt;
+            mazesize: LongInt;
+            template: LongInt;
+            gameType: TGameType;
+            teams: array[0..7] of TTeam;
+            arguments: array[0..Pred(MAXARGS)] of shortstring;
+            argv: array[0..Pred(MAXARGS)] of PChar;
+            argumentsNumber: Longword;
+            nextConfig: PGameConfig;
+            end;
+
 implementation
 
 end.