Exemplo n.º 1
0
        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);
        }
Exemplo n.º 2
0
        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;
        }