public bool LoadFromFile(string filePath) { if (!File.Exists(filePath)) { return(false); } var ini = new INIFile(filePath); BriefingCampaignName = ini.GetValue("Briefing", "CampaignName", BriefingCampaignName); ContextCoalitionBlue = ini.GetValue("Context", "Coalitions.Blue", ContextCoalitionBlue); ContextPlayerCoalition = ini.GetValue("Context", "Coalitions.Player", ContextPlayerCoalition); ContextCoalitionRed = ini.GetValue("Context", "Coalitions.Red", ContextCoalitionRed); ContextDecade = ini.GetValue("Context", "Decade", ContextDecade); ContextTheater = ini.GetValue("Context", "Theater", ContextTheater); ContextSituation = ini.GetValue("Context", "Situation", ContextSituation); EnvironmentBadWeatherChance = ini.GetValue("Environment", "BadWeatherChance", EnvironmentBadWeatherChance); EnvironmentNightMissionChance = ini.GetValue("Environment", "NightMissionChance", EnvironmentBadWeatherChance); MissionsCount = ini.GetValue("Missions", "Count", MissionsCount); MissionsDifficultyVariation = ini.GetValue("Missions", "DifficultyVariation", MissionsDifficultyVariation); MissionsFeatures = ini.GetValueDistinctList <string>("Missions", "Features"); MissionsObjectives = ini.GetValueList <string>("Missions", "Objectives"); MissionsObjectiveCount = ini.GetValue("Missions", "ObjectiveCount", MissionsObjectiveCount); MissionsObjectiveDistance = ini.GetValue("Missions", "ObjectiveDistance", MissionsObjectiveDistance); OptionsFogOfWar = ini.GetValue("Options", "FogOfWar", OptionsFogOfWar); OptionsMods = ini.GetValueDistinctList <string>("Options", "Mods"); OptionsMission = ini.GetValueDistinctList <string>("Options", "Mission"); OptionsRealism = ini.GetValueDistinctList <RealismOption>("Options", "Realism"); Player = new MissionTemplateFlightGroup(ini, "PlayerFlightGroups", "Player"); PlayerStartingAirbase = ini.GetValue("Player", "StartingAirbase", PlayerStartingAirbase); SituationEnemySkill = ini.GetValue("Situation", "EnemySkill", SituationEnemySkill); SituationEnemyAirDefense = ini.GetValue("Situation", "EnemyAirDefense", SituationEnemyAirDefense); SituationEnemyAirForce = ini.GetValue("Situation", "EnemyAirForce", SituationEnemyAirForce); SituationFriendlySkill = ini.GetValue("Situation", "FriendlySkill", SituationFriendlySkill); SituationFriendlyAirDefense = ini.GetValue("Situation", "FriendlyAirDefense", SituationFriendlyAirDefense); SituationFriendlyAirForce = ini.GetValue("Situation", "FriendlyAirForce", SituationFriendlyAirForce); return(true); }
public void Clear() { // If the default template is found, load it. if (File.Exists(DEFAULT_TEMPLATE_FILEPATH)) { LoadFromFile(DEFAULT_TEMPLATE_FILEPATH); return; } BriefingCampaignName = ""; ContextCoalitionBlue = "USA"; ContextPlayerCoalition = Coalition.Blue; ContextCoalitionRed = "Russia"; ContextDecade = Decade.Decade2000; ContextTheater = "Caucasus"; ContextSituation = ""; EnvironmentBadWeatherChance = Amount.VeryLow; EnvironmentNightMissionChance = Amount.VeryLow; MissionsCount = 5; MissionsDifficultyVariation = CampaignDifficultyVariation.Random; MissionsFeatures = new List <string>(); MissionsObjectives = BriefingRoom.GetDatabaseEntriesIDs(DatabaseEntryType.ObjectivePreset).ToList(); MissionsObjectiveCount = Amount.Average; MissionsObjectiveDistance = Amount.Average; OptionsFogOfWar = FogOfWar.All; OptionsMods = new List <string>(); OptionsMission = new List <string> { "ImperialUnitsForBriefing" }; OptionsRealism = new RealismOption[] { RealismOption.DisableDCSRadioAssists, RealismOption.NoBDA }.ToList(); Player = new MissionTemplateFlightGroup(); PlayerStartingAirbase = ""; SituationEnemySkill = AmountNR.Random; SituationEnemyAirDefense = AmountNR.Random; SituationEnemyAirForce = AmountNR.Random; SituationFriendlySkill = AmountNR.Random; SituationFriendlyAirDefense = AmountNR.Random; SituationFriendlyAirForce = AmountNR.Random; }