예제 #1
0
        private void LoadProvinceData()
        {
            Console.WriteLine("Loading provinces...");
            Provinces = new Dictionary <int, Eu4ProvinceBase>();
            var provinces = RootList.GetSublist("provinces");

            provinces.ForEachSublist(provList =>
            {
                if (!provList.Value.KeyValuePairs.ContainsKey("culture"))
                {
                    return;
                }
                var province = new Eu4Province(provList.Value, this);
                Provinces.Add(province.ProvinceID, province);
            });

            Console.WriteLine($"Loaded {Provinces.Count} provinces.");
        }
예제 #2
0
        private void LoadDiploRelations()
        {
            Console.WriteLine("Loading countries...");
            Relations = new List <Eu4DiploRelation>();
            var relations = RootList.GetSublist("diplomacy");

            relations.ForEachSublist(relation =>
            {
                if (Enum.GetNames(typeof(Relation)).Contains(relation.Key))
                {
                    Relations.Add(new Eu4DiploRelation(relation.Value, this));
                }
            });
            //var distinctRelations = relations.Sublists.Keys.Distinct();
            //foreach (var dr in distinctRelations)
            //{
            //	Console.WriteLine(dr);
            //}
            //Console.WriteLine();
        }
예제 #3
0
        private void LoadCountryData()
        {
            Console.WriteLine("Loading countries...");
            Countries = new Dictionary <string, Eu4CountryBase>();
            var countries = RootList.GetSublist("countries");

            countries.ForEachSublist(countryList =>
            {
                //if (!countryList.Value.KeyValuePairs.ContainsKey("primary_culture") || !countryList.Value.KeyValuePairs.ContainsKey("estimated_monthly_income") || float.Parse(countryList.Value.KeyValuePairs["estimated_monthly_income"]) <= 0.001)
                if (!countryList.Value.Sublists.ContainsKey("core_provinces"))
                {
                    //country does not exist
                    return;
                }
                var country = new Eu4Country(countryList.Value, this);
                Countries.Add(country.CountryTag, country);
            });
            Console.WriteLine($"Loaded {Countries.Count} countries.");
            Console.WriteLine($"{Countries.Count(c => c.Value.Exists)} countries exist.");
            Console.WriteLine($"{Countries.Count(c => c.Value.Institutions["enlightenment"]) } countries have embraced enlightenment.");
        }