public OptionsForm() { InitializeComponent(); options = VTankOptions.ReadOptions(); SetValues(); SetChangeMade(false); }
public static VTankOptions ReadOptions() { bool doCommit = false; VTankOptions options = new VTankOptions(); KeysConverter kc = new KeysConverter(); VideoOptions defaultVideo = getDefaultVideoOptions(); AudioOptions defaultAudio = getDefaultAudioOptions(); GamePlayOptions defaultGame = getDefaultGamePlayOptions(); KeyBindings defaultKeys = getDefaultKeyBindings(); string filename = GetConfigFilePath(); if (!File.Exists(filename)) { doCommit = true; } Xmlconfig config = new Xmlconfig(filename, true); try { if (config.Settings.Name == "configuration") { // Old configuration file. Port to new configuration type. config.NewXml("xml"); doCommit = true; ConvertFromLegacyConfig(config, filename); } } catch (Exception) { MessageBox.Show("Warning: Your old configuration settings have been lost due to an unforeseen error.", "Old configuration settings lost!", MessageBoxButtons.OK, MessageBoxIcon.Error); } // Configure options. // Format: options.Key = Get(config, "Key", "DefaultValue"); options.ServerAddress = Get(config, "ServerAddress", "glacier2a.cis.vtc.edu"); options.ServerPort = Get(config, "ServerPort", "4063"); options.DefaultAccount = Get(config, "DefaultAccount"); options.MapsFolder = Get(config, "MapsFolder", "maps"); options.videoOptions.Resolution = Get(config, "options/video/Resolution", defaultVideo.Resolution); options.videoOptions.Windowed = Get(config, "options/video/Windowed", defaultVideo.Windowed); options.videoOptions.TextureQuality = Get(config, "options/video/TextureQuality", defaultVideo.TextureQuality); options.videoOptions.AntiAliasing = Get(config, "options/video/AntiAliasing", defaultVideo.AntiAliasing); options.videoOptions.ShadingEnabled = Get(config, "options/video/ShadingEnabled", defaultVideo.ShadingEnabled); options.audioOptions.ambientSound.Volume = Get(config, "options/audio/ambientSound/Volume", defaultAudio.ambientSound.Volume); options.audioOptions.ambientSound.Muted = Get(config, "options/audio/ambientSound/Muted", defaultAudio.ambientSound.Muted); options.audioOptions.backgroundSound.Volume = Get(config, "options/audio/backgroundSound/Volume", defaultAudio.backgroundSound.Volume); options.audioOptions.backgroundSound.Muted = Get(config, "options/audio/backgroundSound/Muted", defaultAudio.backgroundSound.Muted); options.gamePlayOptions.ShowNames = Get(config, "options/gameplay/ShowNames", defaultGame.ShowNames); options.gamePlayOptions.ProfanityFilter = Get(config, "options/gameplay/ProfanityFilter", defaultGame.ProfanityFilter); options.gamePlayOptions.InterfacePlugin = Get(config, "options/gameplay/InterfacePlugin", defaultGame.InterfacePlugin); options.keyBindings.Forward = (Keys)kc.ConvertFromString(Get(config, "options/keybindings/Forward", defaultKeys.Forward.ToString())); options.keyBindings.Backward = (Keys)kc.ConvertFromString(Get(config, "options/keybindings/Backward", defaultKeys.Backward.ToString())); options.keyBindings.RotateLeft = (Keys)kc.ConvertFromString(Get(config, "options/keybindings/RotateLeft", defaultKeys.RotateLeft.ToString())); options.keyBindings.RotateRight = (Keys)kc.ConvertFromString(Get(config, "options/keybindings/RotateRight", defaultKeys.RotateRight.ToString())); //options.keyBindings.FirePrimary = (Keys)kc.ConvertFromString(Get(config, "options/keybindings/FirePrimary", "")); //options.keyBindings.FireSecondary = (Keys)kc.ConvertFromString(Get(config, "options/keybindings/FireSecondary", "")); options.keyBindings.Menu = (Keys)kc.ConvertFromString(Get(config, "options/keybindings/Menu", defaultKeys.Menu.ToString())); options.keyBindings.Minimap = (Keys)kc.ConvertFromString(Get(config, "options/keybindings/Minimap", defaultKeys.Minimap.ToString())); options.keyBindings.Score = (Keys)kc.ConvertFromString(Get(config, "options/keybindings/Score", defaultKeys.Score.ToString())); options.keyBindings.Camera = (Keys)kc.ConvertFromString(Get(config, "options/keybindings/Camera", defaultKeys.Camera.ToString())); options.keyBindings.Pointer = Get(config, "options/keybindings/Pointer", defaultKeys.Pointer); if (doCommit) { WriteOptions(options); } return(options); }
public static void WriteOptions(VTankOptions options) { KeysConverter kc = new KeysConverter(); string filename = GetConfigFilePath(); Xmlconfig config = new Xmlconfig(); config.Settings["ServerAddress"].Value = options.ServerAddress; config.Settings["ServerPort"].Value = options.ServerPort; config.Settings["DefaultAccount"].Value = options.DefaultAccount; config.Settings["MapsFolder"].Value = options.MapsFolder; config.Settings["options/video/Resolution"].Value = options.videoOptions.Resolution; config.Settings["options/video/Windowed"].Value = options.videoOptions.Windowed; config.Settings["options/video/TextureQuality"].Value = options.videoOptions.TextureQuality; config.Settings["options/video/AntiAliasing"].Value = options.videoOptions.AntiAliasing; config.Settings["options/video/ShadingEnabled"].Value = options.videoOptions.ShadingEnabled; config.Settings["options/audio/ambientSound/Volume"].Value = options.audioOptions.ambientSound.Volume; config.Settings["options/audio/ambientSound/Muted"].Value = options.audioOptions.ambientSound.Muted; config.Settings["options/audio/backgroundSound/Volume"].Value = options.audioOptions.backgroundSound.Volume; config.Settings["options/audio/backgroundSound/Muted"].Value = options.audioOptions.backgroundSound.Muted; config.Settings["options/gameplay/ShowNames"].Value = options.gamePlayOptions.ShowNames; config.Settings["options/gameplay/ProfanityFilter"].Value = options.gamePlayOptions.ProfanityFilter; config.Settings["options/gameplay/InterfacePlugin"].Value = options.gamePlayOptions.InterfacePlugin; config.Settings["options/keybindings/Forward"].Value = kc.ConvertToString(options.keyBindings.Forward); config.Settings["options/keybindings/Backward"].Value = kc.ConvertToString(options.keyBindings.Backward); config.Settings["options/keybindings/RotateLeft"].Value = kc.ConvertToString(options.keyBindings.RotateLeft); config.Settings["options/keybindings/RotateRight"].Value = kc.ConvertToString(options.keyBindings.RotateRight); //config.Settings["options/keybindings/FirePrimary"].Value = kc.ConvertToString(options.keyBindings.FirePrimary); //config.Settings["options/keybindings/FireSecondary"].Value = kc.ConvertToString(options.keyBindings.FireSecondary); config.Settings["options/keybindings/Menu"].Value = kc.ConvertToString(options.keyBindings.Menu); config.Settings["options/keybindings/Minimap"].Value = kc.ConvertToString(options.keyBindings.Minimap); config.Settings["options/keybindings/Score"].Value = kc.ConvertToString(options.keyBindings.Score); config.Settings["options/keybindings/Camera"].Value = kc.ConvertToString(options.keyBindings.Camera); config.Settings["options/keybindings/Pointer"].Value = options.keyBindings.Pointer; /*if (!System.IO.File.Exists(filename)) * { * System.IO.FileStream stream = System.IO.File.Create(filename); * stream.Close(); * } * * ExeConfigurationFileMap map = new ExeConfigurationFileMap(); * map.ExeConfigFilename = filename; * * Configuration configuration = ConfigurationManager.OpenMappedExeConfiguration( * map, ConfigurationUserLevel.None); * * foreach (String key in ConfigurationManager.AppSettings.AllKeys) * { * configuration.AppSettings.Settings[key].Value = * ConfigurationManager.AppSettings[key]; * } * * configuration.Save(ConfigurationSaveMode.Modified); * * ConfigurationManager.RefreshSection("appSettings");*/ if (!config.Commit()) { config.Save(filename); } }
public static void WriteOptions(VTankOptions options) { KeysConverter kc = new KeysConverter(); string filename = GetConfigFilePath(); Xmlconfig config = new Xmlconfig(); config.Settings["ServerAddress"].Value = options.ServerAddress; config.Settings["ServerPort"].Value = options.ServerPort; config.Settings["DefaultAccount"].Value = options.DefaultAccount; config.Settings["MapsFolder"].Value = options.MapsFolder; config.Settings["options/video/Resolution"].Value = options.videoOptions.Resolution; config.Settings["options/video/Windowed"].Value = options.videoOptions.Windowed; config.Settings["options/video/TextureQuality"].Value = options.videoOptions.TextureQuality; config.Settings["options/video/AntiAliasing"].Value = options.videoOptions.AntiAliasing; config.Settings["options/video/ShadingEnabled"].Value = options.videoOptions.ShadingEnabled; config.Settings["options/audio/ambientSound/Volume"].Value = options.audioOptions.ambientSound.Volume; config.Settings["options/audio/ambientSound/Muted"].Value = options.audioOptions.ambientSound.Muted; config.Settings["options/audio/backgroundSound/Volume"].Value = options.audioOptions.backgroundSound.Volume; config.Settings["options/audio/backgroundSound/Muted"].Value = options.audioOptions.backgroundSound.Muted; config.Settings["options/gameplay/ShowNames"].Value = options.gamePlayOptions.ShowNames; config.Settings["options/gameplay/ProfanityFilter"].Value = options.gamePlayOptions.ProfanityFilter; config.Settings["options/gameplay/InterfacePlugin"].Value = options.gamePlayOptions.InterfacePlugin; config.Settings["options/keybindings/Forward"].Value = kc.ConvertToString(options.keyBindings.Forward); config.Settings["options/keybindings/Backward"].Value = kc.ConvertToString(options.keyBindings.Backward); config.Settings["options/keybindings/RotateLeft"].Value = kc.ConvertToString(options.keyBindings.RotateLeft); config.Settings["options/keybindings/RotateRight"].Value = kc.ConvertToString(options.keyBindings.RotateRight); //config.Settings["options/keybindings/FirePrimary"].Value = kc.ConvertToString(options.keyBindings.FirePrimary); //config.Settings["options/keybindings/FireSecondary"].Value = kc.ConvertToString(options.keyBindings.FireSecondary); config.Settings["options/keybindings/Menu"].Value = kc.ConvertToString(options.keyBindings.Menu); config.Settings["options/keybindings/Minimap"].Value = kc.ConvertToString(options.keyBindings.Minimap); config.Settings["options/keybindings/Score"].Value = kc.ConvertToString(options.keyBindings.Score); config.Settings["options/keybindings/Camera"].Value = kc.ConvertToString(options.keyBindings.Camera); config.Settings["options/keybindings/Pointer"].Value = options.keyBindings.Pointer; /*if (!System.IO.File.Exists(filename)) { System.IO.FileStream stream = System.IO.File.Create(filename); stream.Close(); } ExeConfigurationFileMap map = new ExeConfigurationFileMap(); map.ExeConfigFilename = filename; Configuration configuration = ConfigurationManager.OpenMappedExeConfiguration( map, ConfigurationUserLevel.None); foreach (String key in ConfigurationManager.AppSettings.AllKeys) { configuration.AppSettings.Settings[key].Value = ConfigurationManager.AppSettings[key]; } configuration.Save(ConfigurationSaveMode.Modified); ConfigurationManager.RefreshSection("appSettings");*/ if (!config.Commit()) config.Save(filename); }
public static VTankOptions ReadOptions() { bool doCommit = false; VTankOptions options = new VTankOptions(); KeysConverter kc = new KeysConverter(); VideoOptions defaultVideo = getDefaultVideoOptions(); AudioOptions defaultAudio = getDefaultAudioOptions(); GamePlayOptions defaultGame = getDefaultGamePlayOptions(); KeyBindings defaultKeys = getDefaultKeyBindings(); string filename = GetConfigFilePath(); if (!File.Exists(filename)) doCommit = true; Xmlconfig config = new Xmlconfig(filename, true); try { if (config.Settings.Name == "configuration") { // Old configuration file. Port to new configuration type. config.NewXml("xml"); doCommit = true; ConvertFromLegacyConfig(config, filename); } } catch (Exception) { MessageBox.Show("Warning: Your old configuration settings have been lost due to an unforeseen error.", "Old configuration settings lost!", MessageBoxButtons.OK, MessageBoxIcon.Error); } // Configure options. // Format: options.Key = Get(config, "Key", "DefaultValue"); options.ServerAddress = Get(config, "ServerAddress", "glacier2a.cis.vtc.edu"); options.ServerPort = Get(config, "ServerPort", "4063"); options.DefaultAccount = Get(config, "DefaultAccount"); options.MapsFolder = Get(config, "MapsFolder", "maps"); options.videoOptions.Resolution = Get(config, "options/video/Resolution", defaultVideo.Resolution); options.videoOptions.Windowed = Get(config, "options/video/Windowed", defaultVideo.Windowed); options.videoOptions.TextureQuality = Get(config, "options/video/TextureQuality", defaultVideo.TextureQuality); options.videoOptions.AntiAliasing = Get(config, "options/video/AntiAliasing", defaultVideo.AntiAliasing); options.videoOptions.ShadingEnabled = Get(config, "options/video/ShadingEnabled", defaultVideo.ShadingEnabled); options.audioOptions.ambientSound.Volume = Get(config, "options/audio/ambientSound/Volume", defaultAudio.ambientSound.Volume); options.audioOptions.ambientSound.Muted = Get(config, "options/audio/ambientSound/Muted", defaultAudio.ambientSound.Muted); options.audioOptions.backgroundSound.Volume = Get(config, "options/audio/backgroundSound/Volume", defaultAudio.backgroundSound.Volume); options.audioOptions.backgroundSound.Muted = Get(config, "options/audio/backgroundSound/Muted", defaultAudio.backgroundSound.Muted); options.gamePlayOptions.ShowNames = Get(config, "options/gameplay/ShowNames", defaultGame.ShowNames); options.gamePlayOptions.ProfanityFilter = Get(config, "options/gameplay/ProfanityFilter", defaultGame.ProfanityFilter); options.gamePlayOptions.InterfacePlugin = Get(config, "options/gameplay/InterfacePlugin", defaultGame.InterfacePlugin); options.keyBindings.Forward = (Keys)kc.ConvertFromString(Get(config, "options/keybindings/Forward", defaultKeys.Forward.ToString())); options.keyBindings.Backward = (Keys)kc.ConvertFromString(Get(config, "options/keybindings/Backward", defaultKeys.Backward.ToString())); options.keyBindings.RotateLeft = (Keys)kc.ConvertFromString(Get(config, "options/keybindings/RotateLeft", defaultKeys.RotateLeft.ToString())); options.keyBindings.RotateRight = (Keys)kc.ConvertFromString(Get(config, "options/keybindings/RotateRight", defaultKeys.RotateRight.ToString())); //options.keyBindings.FirePrimary = (Keys)kc.ConvertFromString(Get(config, "options/keybindings/FirePrimary", "")); //options.keyBindings.FireSecondary = (Keys)kc.ConvertFromString(Get(config, "options/keybindings/FireSecondary", "")); options.keyBindings.Menu = (Keys)kc.ConvertFromString(Get(config, "options/keybindings/Menu", defaultKeys.Menu.ToString())); options.keyBindings.Minimap = (Keys)kc.ConvertFromString(Get(config, "options/keybindings/Minimap", defaultKeys.Minimap.ToString())); options.keyBindings.Score = (Keys)kc.ConvertFromString(Get(config, "options/keybindings/Score", defaultKeys.Score.ToString())); options.keyBindings.Camera = (Keys)kc.ConvertFromString(Get(config, "options/keybindings/Camera", defaultKeys.Camera.ToString())); options.keyBindings.Pointer = Get(config, "options/keybindings/Pointer", defaultKeys.Pointer); if (doCommit) WriteOptions(options); return options; }