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."); }
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(); }
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."); }