示例#1
0
 public PoliticalParty(string name, Ideology ideology, Vic2World world)
 {
     Name      = name;
     Ideology  = ideology;
     StartDate = new DateTime(world.StartYear - 5, 1, 1);
     EndDate   = new DateTime(1940, 1, 1);
 }
示例#2
0
 public Politics()
 {
     rulingParty       = Ideology.Neutrality;
     lastElection      = DateTime.MinValue;
     electionFrequency = 0;
     electionsAllowed  = false;
     neutrality        = 0;
     democracy         = 0;
     fascism           = 0;
     communism         = 0;
 }
示例#3
0
        private void LoadIdeologies()
        {
            string nspace = "FastPolitics1919.History.Ideologies";
            var    q      = from t in Assembly.GetExecutingAssembly().GetTypes()
                            where t.IsClass && t.Namespace == nspace
                            select t;
            List <Type> ideology_types = q.ToList();

            foreach (Type type in ideology_types)
            {
                Ideology ideology = Engine.CreateClass <Ideology>(type);
                Ideologies.Add(ideology, ideology.ID);
            }
        }
        public static void Run()
        {
            Party(new Party(0, "Reichspartei zu Bayern", "RPB", null, Ideology.Get(Ideologies.Conservative)));
            Party(new Party(1, "Konservative Partei Deutschland", "KonPD", null, Ideology.Get(Ideologies.Conservative)));
            Party(new Party(2, "Demokratische Partei Deutschland", "DPD", null, Ideology.Get(Ideologies.Democrat)));
            Party(new Party(3, "Frei Wirtschaftsfront", "FW", null, Ideology.Get(Ideologies.Liberal)));
            Party(new Party(4, "Kommunistische Partei Deutschland", "KPD", null, Ideology.Get(Ideologies.Communist)));
            Party(new Party(5, "Nationalistische Front", "NF", null, Ideology.Get(Ideologies.Conservative)));

            Engine.Game.Cultures.Add(new Culture("Deutsch"), (int)Cultures.Deutsch);
            Engine.Game.Cultures.Add(new Culture("Österreichisch"), (int)Cultures.Austria);

            Country bayern = new Country();

            bayern.ID         = 0;
            bayern.Name       = "Bayern";
            bayern.RGBColor   = "53-64-57";
            bayern.CapitalID  = 158;
            bayern.Government = new History.Governments.CountryGovernment(bayern);
            bayern.Government.RegisteredParties.Add(Engine.Game.FindParty(0));
            bayern.Government.RegisteredParties.Add(Engine.Game.FindParty(1));
            bayern.Government.RegisteredParties.Add(Engine.Game.FindParty(2));
            bayern.Government.RegisteredParties.Add(Engine.Game.FindParty(3));
            bayern.Government.RegisteredParties.Add(Engine.Game.FindParty(4));
            bayern.Army       = new Army("Bayrische Reichs-Armee");
            bayern.Army.Owner = bayern;
            bayern.Flag       = Images.FromPath(@"gfx\flags\BAV");
            Country(bayern);

            Country rebel = new Country();

            rebel.ID         = 1;
            rebel.Name       = "Rebellen";
            rebel.RGBColor   = "180-0-0";
            rebel.Government = new History.Governments.CountryGovernment(rebel);
            rebel.Government.RegisteredParties.Add(Engine.Game.FindParty(5));
            rebel.Army       = new Army("Rebellen Armee");
            rebel.Army.Owner = rebel;
            rebel.Flag       = Images.FlagREB;
            Country(rebel);

            //- Provinces
            Province province = new Province();

            province.ID    = 0;
            province.Name  = "Erste Province";
            province.Owner = bayern;
            Province(province);
        }
示例#5
0
 void Awake()
 {
     instance = this;
 }
示例#6
0
        static void Main(string[] args)
        {
            ////COMMON/NATIONAL_FOCUS.  it's generating focus files for countries i'm making tags for.   why.


            int level;

            //home
            string baseDirectory   = "C:\\myprojects\\hoi4mod\\test";
            string outputDirectory = @"C:\Users\Jobber 2k17\Documents\Paradox Interactive\Hearts of Iron IV\mod\test";
            string dataDirectory   = "C:\\myprojects\\hoi4mod\\data\\";


            //work
            //string baseDirectory = "C:\\coreymods\\hoi4mod\\test";
            //string outputDirectory = "C:\\coreymods\\hoi4mod\\testoutput";
            //string dataDirectory = "C:\\coreymods\\hoi4mod\\data\\";

            string mergeDataFilename          = "TerritoryMergingData.csv";
            string countriesFilename          = "Countries.csv";
            string provincesFilename          = "Provinces.csv";
            string ideologyPropertiesFilename = "IdeologyProperties.csv";
            string ideologyTypesFilename      = "IdeologyTypes.csv";
            string ideologyFactionsFilename   = "IdeologyFactions.csv";
            string ideologyRulesFilename      = "IdeologyRules.csv";
            string ideologyModifiersFilename  = "IdeologyModifiers.csv";

            Dictionary <string, TagHelper> tagsToChange = new Dictionary <string, TagHelper>();

            TextReader reader    = new StreamReader(dataDirectory + countriesFilename);
            var        csvReader = new CsvReader(reader);

            csvReader.Read();
            csvReader.ReadHeader();
            var records = csvReader.GetRecords <TagHelper>();

            foreach (TagHelper th in records)
            {
                if (String.IsNullOrWhiteSpace(th.NewTag))
                {
                    continue;
                }
                else
                {
                    tagsToChange.Add(th.Tag, th);
                }
            }
            reader.Dispose();
            csvReader.Dispose();

            Dictionary <int, CountryMergeHelper> stateChanges = new Dictionary <int, CountryMergeHelper>();

            TextReader stateReader    = new StreamReader(dataDirectory + mergeDataFilename);
            var        stateCsvReader = new CsvReader(stateReader);

            stateCsvReader.Read();
            stateCsvReader.ReadHeader();
            var stateRecords = stateCsvReader.GetRecords <CountryMergeHelper>();

            foreach (CountryMergeHelper cmh in stateRecords)
            {
                if (cmh.stateId == null || String.IsNullOrWhiteSpace(cmh.stateId))
                {
                    continue;
                }
                stateChanges.Add(int.Parse(cmh.stateId), cmh);
            }
            stateReader.Dispose();
            stateCsvReader.Dispose();

            Dictionary <int, ProvinceHelper> provinceChanges = new Dictionary <int, ProvinceHelper>();

            TextReader provinceReader    = new StreamReader(dataDirectory + provincesFilename);
            var        provinceCsvReader = new CsvReader(provinceReader);

            provinceCsvReader.Read();
            provinceCsvReader.ReadHeader();
            var provinceRecords = provinceCsvReader.GetRecords <ProvinceHelper>();
            ProvincesToChange provincesToChange = new ProvincesToChange();

            provincesToChange.provincesFrom = new Dictionary <string, List <string> >();
            provincesToChange.provincesTo   = new Dictionary <string, List <string> >();
            foreach (ProvinceHelper cmh in provinceRecords)
            {
                if (cmh.provinceId == null || String.IsNullOrWhiteSpace(cmh.provinceId))
                {
                    continue;
                }
                List <string> provincesFrom;
                if (provincesToChange.provincesFrom.TryGetValue(cmh.stateFrom, out provincesFrom))
                {
                    provincesFrom.Add(cmh.provinceId);
                    provincesToChange.provincesFrom[cmh.stateFrom] = provincesFrom;
                }
                else
                {
                    provincesFrom = new List <string>();
                    provincesFrom.Add(cmh.provinceId);
                    provincesToChange.provincesFrom.Add(cmh.stateFrom, provincesFrom);
                }

                List <string> provincesTo;
                if (provincesToChange.provincesTo.TryGetValue(cmh.stateTo, out provincesTo))
                {
                    provincesTo.Add(cmh.provinceId);
                    provincesToChange.provincesTo[cmh.stateTo] = provincesTo;
                }
                else
                {
                    provincesTo = new List <string>();
                    provincesTo.Add(cmh.provinceId);
                    provincesToChange.provincesTo.Add(cmh.stateTo, provincesTo);
                }
            }
            provinceReader.Dispose();
            provinceCsvReader.Dispose();

            //ideology readers setup
            List <Ideology> ideologies = new List <Ideology>();

            TextReader ideologyPropertiesReader    = new StreamReader(dataDirectory + ideologyPropertiesFilename);
            var        ideologyPropertiesCsvReader = new CsvReader(ideologyPropertiesReader);

            ideologyPropertiesCsvReader.Read();
            ideologyPropertiesCsvReader.ReadHeader();
            var ideologyPropertiesList = ideologyPropertiesCsvReader.GetRecords <IdeologyProperties>();

            ideologyPropertiesReader.Dispose();
            ideologyPropertiesCsvReader.Dispose();

            TextReader ideologyTypesReader    = new StreamReader(dataDirectory + ideologyTypesFilename);
            var        ideologyTypesCsvReader = new CsvReader(ideologyTypesReader);

            ideologyTypesCsvReader.Read();
            ideologyTypesCsvReader.ReadHeader();
            var ideologyTypesList = ideologyTypesCsvReader.GetRecords <IdeologyType>();

            ideologyTypesReader.Dispose();
            ideologyTypesCsvReader.Dispose();

            TextReader ideologyFactionsReader    = new StreamReader(dataDirectory + ideologyFactionsFilename);
            var        ideologyFactionsCsvReader = new CsvReader(ideologyFactionsReader);

            ideologyFactionsCsvReader.Read();
            ideologyFactionsCsvReader.ReadHeader();
            var ideologyFactionsList = ideologyFactionsCsvReader.GetRecords <IdeologyFaction>();

            ideologyFactionsReader.Dispose();
            ideologyFactionsCsvReader.Dispose();


            TextReader ideologyRulesReader    = new StreamReader(dataDirectory + ideologyRulesFilename);
            var        ideologyRulesCsvReader = new CsvReader(ideologyRulesReader);

            ideologyRulesCsvReader.Read();
            ideologyRulesCsvReader.ReadHeader();
            var ideologyRulesList = ideologyRulesCsvReader.GetRecords <IdeologyRules>();

            ideologyRulesReader.Dispose();
            ideologyRulesCsvReader.Dispose();

            TextReader ideologyModifiersReader    = new StreamReader(dataDirectory + ideologyModifiersFilename);
            var        ideologyModifiersCsvReader = new CsvReader(ideologyModifiersReader);

            ideologyModifiersCsvReader.Read();
            ideologyModifiersCsvReader.ReadHeader();
            var ideologyModifiersList = ideologyModifiersCsvReader.GetRecords <IdeologyModifiers>();

            ideologyModifiersReader.Dispose();
            ideologyModifiersCsvReader.Dispose();

            foreach (IdeologyProperties ip in ideologyPropertiesList)
            {
                Ideology ideology = new Ideology();

                ideology.properties = ip;
                List <IdeologyType> ideologyTypes = new List <IdeologyType>();

                foreach (IdeologyType ideologyType in ideologyTypesList)
                {
                    if (ideologyType.name == ip.name)
                    {
                        ideologyTypes.Add(ideologyType);
                    }
                }

                ideology.types = ideologyTypes;

                List <IdeologyFaction> ideologyFactions = new List <IdeologyFaction>();
                foreach (IdeologyFaction idFa in ideologyFactionsList)
                {
                    if (idFa.name == ip.name)
                    {
                        ideologyFactions.Add(idFa);
                    }
                }

                ideology.factions = ideologyFactions;

                foreach (IdeologyRules ir in ideologyRulesList)
                {
                    if (ir.name == ip.name)
                    {
                        ideology.rules = ir;
                    }
                }

                foreach (IdeologyModifiers im in ideologyModifiersList)
                {
                    if (im.name == ip.name)
                    {
                        ideology.modifiers = im;
                    }
                }

                ideologies.Add(ideology);
            }

            ClearDirectory(outputDirectory);
            Directory.CreateDirectory(outputDirectory);
            Copy(baseDirectory, outputDirectory);

            level = 0;
            SlamItOut(tagsToChange, stateChanges, provincesToChange, ideologies, outputDirectory, level);
            //Console.WriteLine("finished tag " + th.oldTag + " to " + th.newTag);

            Console.WriteLine("TAll done.");
            Console.ReadLine();
        }
 private static void CIdeology(Ideology ideology)
 {
     Engine.Game.Ideologies.Add(ideology, ideology.ID);
 }