hedgewars/uFLGameConfig.pas
branchqmlfrontend
changeset 10888 a04e04aaf599
parent 10819 57e21f7621b0
child 10892 83a99e2f8b00
equal deleted inserted replaced
10886:99273b7afbff 10888:a04e04aaf599
    12 procedure setSeed(seed: PChar); cdecl;
    12 procedure setSeed(seed: PChar); cdecl;
    13 function  getSeed: PChar; cdecl;
    13 function  getSeed: PChar; cdecl;
    14 procedure setTheme(themeName: PChar); cdecl;
    14 procedure setTheme(themeName: PChar); cdecl;
    15 procedure setScript(scriptName: PChar); cdecl;
    15 procedure setScript(scriptName: PChar); cdecl;
    16 procedure setScheme(schemeName: PChar); cdecl;
    16 procedure setScheme(schemeName: PChar); cdecl;
       
    17 procedure setAmmo(ammoName: PChar); cdecl;
    17 
    18 
    18 procedure tryAddTeam(teamName: PChar); cdecl;
    19 procedure tryAddTeam(teamName: PChar); cdecl;
    19 procedure tryRemoveTeam(teamName: PChar); cdecl;
    20 procedure tryRemoveTeam(teamName: PChar); cdecl;
    20 procedure changeTeamColor(teamName: PChar; dir: LongInt); cdecl;
    21 procedure changeTeamColor(teamName: PChar; dir: LongInt); cdecl;
    21 
    22 
    22 implementation
    23 implementation
    23 uses uFLIPC, hwengine, uFLUtils, uFLTeams, uFLData, uFLSChemes;
    24 uses uFLIPC, hwengine, uFLUtils, uFLTeams, uFLData, uFLSChemes, uFLAmmo;
    24 
    25 
    25 var guiCallbackPointer: pointer;
    26 var guiCallbackPointer: pointer;
    26     guiCallbackFunction: TGUICallback;
    27     guiCallbackFunction: TGUICallback;
    27 
    28 
    28 const
    29 const
    33     TGameConfig = record
    34     TGameConfig = record
    34             seed: shortstring;
    35             seed: shortstring;
    35             theme: shortstring;
    36             theme: shortstring;
    36             script: shortstring;
    37             script: shortstring;
    37             scheme: TScheme;
    38             scheme: TScheme;
       
    39             ammo: ansistring;
    38             mapgen: Longint;
    40             mapgen: Longint;
    39             gameType: TGameType;
    41             gameType: TGameType;
    40             teams: array[0..7] of TTeam;
    42             teams: array[0..7] of TTeam;
    41             arguments: array[0..Pred(MAXARGS)] of shortstring;
    43             arguments: array[0..Pred(MAXARGS)] of shortstring;
    42             argv: array[0..Pred(MAXARGS)] of PChar;
    44             argv: array[0..Pred(MAXARGS)] of PChar;
   334 
   336 
   335     if scheme <> nil then
   337     if scheme <> nil then
   336         currentConfig.scheme:= scheme^
   338         currentConfig.scheme:= scheme^
   337 end;
   339 end;
   338 
   340 
       
   341 procedure setAmmo(ammoName: PChar); cdecl;
       
   342 var ammo: PAmmo;
       
   343 begin
       
   344     ammo:= ammoByName(ammoName);
       
   345 
       
   346     if ammo <> nil then
       
   347         currentConfig.ammo:= ammo^.ammoStr
       
   348 end;
       
   349 
   339 end.
   350 end.