DEADSOFTWARE

config: save player teams
[d2df-sdl.git] / src / game / g_console.pas
index bbbd1c2024df8a367eff8f7beb22a575c427ba83..a6fa9c42e78673a7434f7cf500d22a601a5a5ee0 100644 (file)
@@ -1032,6 +1032,8 @@ begin
   AddCommand('p2_color', PlayerSettingsCVars);
   AddCommand('p1_model', PlayerSettingsCVars);
   AddCommand('p2_model', PlayerSettingsCVars);
+  AddCommand('p1_team', PlayerSettingsCVars);
+  AddCommand('p2_team', PlayerSettingsCVars);
 
   AddCommand('g_max_particles', GameCVars);
   AddCommand('g_max_shells', GameCVars);
@@ -1039,6 +1041,8 @@ begin
   AddCommand('g_max_corpses', GameCVars);
   AddCommand('g_gamemode', GameCVars);
   AddCommand('g_friendlyfire', GameCVars);
+  AddCommand('g_friendly_hit_trace', GameCVars);
+  AddCommand('g_friendly_hit_projectile', GameCVars);
   AddCommand('g_weaponstay', GameCVars);
   AddCommand('g_allow_exit', GameCVars);
   AddCommand('g_dm_keys', GameCVars);
@@ -1154,6 +1158,8 @@ begin
 
   WhitelistCommand('g_gamemode');
   WhitelistCommand('g_friendlyfire');
+  WhitelistCommand('g_friendly_hit_trace');
+  WhitelistCommand('g_friendly_hit_projectile');
   WhitelistCommand('g_weaponstay');
   WhitelistCommand('g_allow_exit');
   WhitelistCommand('g_dm_keys');
@@ -2082,6 +2088,14 @@ procedure g_Console_WriteConfig (filename: String);
     WriteLn(f, name, IfThen(LongBool(gsGameFlags and flag), 1, 0));
   end;
 
+  function FormatTeam(team: Byte): string;
+  begin
+    if team = TEAM_BLUE then
+      result := 'blue'
+    else
+      result := 'red';
+  end;
+
 begin
   AssignFile(f, filename);
   Rewrite(f);
@@ -2132,6 +2146,8 @@ begin
   WriteLn(f, 'g_warmup_time ', gsWarmupTime);
 
   WriteFlag('g_friendlyfire ', GAME_OPTION_TEAMDAMAGE);
+  WriteFlag('g_friendly_hit_trace ', GAME_OPTION_TEAMHITTRACE);
+  WriteFlag('g_friendly_hit_projectile ', GAME_OPTION_TEAMHITPROJECTILE);
   WriteFlag('g_allow_exit ', GAME_OPTION_ALLOWEXIT);
   WriteFlag('g_allow_monsters ', GAME_OPTION_MONSTERS);
   WriteFlag('g_dm_keys ', GAME_OPTION_DMKEYS);
@@ -2145,12 +2161,14 @@ begin
     WriteLn(f, 'p1_name ', QuoteStr(Name));
     WriteLn(f, 'p1_color ', Color.R, ' ', Color.G, ' ', Color.B);
     WriteLn(f, 'p1_model ', QuoteStr(Model));
+    WriteLn(f, 'p1_team ', FormatTeam(Team));
   end;
   with gPlayer2Settings do
   begin
     WriteLn(f, 'p2_name ', QuoteStr(Name));
     WriteLn(f, 'p2_color ', Color.R, ' ', Color.G, ' ', Color.B);
     WriteLn(f, 'p2_model ', QuoteStr(Model));
+    WriteLn(f, 'p2_team ', FormatTeam(Team));
   end;
 
   // all cvars