public static void outputProvinceSpecific(AttilaRegionsInfo attilaRegions) { string outputPath = ImportantPaths.getOutputPath() + "\\common\\cultures\\specialProvCultures.txt"; List <AttilaRegionInfo> regions = attilaRegions.getList(); using (StreamWriter writer = File.CreateText(outputPath)) { writer.WriteLine("iberian = {"); writer.WriteLine("\tgraphical_cultures = { occitangfx }"); writer.WriteLine("\t"); Random rand = new Random(); foreach (AttilaRegionInfo region in regions) { writer.WriteLine("\t" + region.getIDStr() + " = {"); writer.WriteLine("\t\tgraphical_cultures = { southerngfx }"); writer.WriteLine("\t\tsecondary_event_pictures = bedouin_arabic"); writer.WriteLine("\t\t"); double r = (rand.Next(0, 100)) / 100.0; double g = (rand.Next(0, 100)) / 100.0; double b = (rand.Next(0, 100)) / 100.0; writer.WriteLine("\t\tcolor = { " + r + " " + g + " " + b + " }"); writer.WriteLine("\t\t"); writer.WriteLine("\t\tmale_names = { Placeholder }"); writer.WriteLine("\t\tfemale_names = { Placeholder }"); writer.WriteLine("\t\t"); writer.WriteLine("\t\tmodifier = default_culture_modifier"); writer.WriteLine("\t}"); } writer.WriteLine("}"); } }
public static void output(AttilaRegionsInfo attilaRegions, CK2CountyRegionsInfo ck2Regions, ReligionsInfo religions) { int count = 0; List <AttilaRegionInfo> attilaList = attilaRegions.getList(); Dictionary <string, CK2CountyRegionInfo> ck2CountiesMap = ck2Regions.getCountiesMap(); foreach (AttilaRegionInfo attilaRegion in attilaList) { List <String> attilasCK2regions = attilaRegion.getCK2Regions(); foreach (String ck2RegionStr in attilasCK2regions) { CK2CountyRegionInfo ck2County = ck2CountiesMap[ck2RegionStr]; writeProvinceHistory(attilaRegion, ck2County, religions); count++; } } count += 0; }
public void updateFactionsInfo(AttilaRegionsInfo regions) { List <AttilaRegionInfo> regionsInfo = regions.getList(); foreach (FactionInfo faction in factionPreProcessMappings) { faction.setExists(regions.checkIfFactionExists(faction.getID())); foreach (AttilaRegionInfo region in regionsInfo) { if (!region.getIsBurned() && region.getOwningFaction().getID() == faction.getID()) { List <String> ck2Regions = region.getCK2Regions(); foreach (String ck2Region in ck2Regions) { faction.addCounty(ck2Region); } } } } }
public Form1() { cultureMaps = new CultureMaps(); regionMap = new RegionMapper(); ck2RegionsInfo = new CK2CountyRegionsInfo(regionMap); religionsInfo = new ReligionsInfo(); factionsInfo = new FactionsInfo(); InitializeComponent(); psr = new ProjectSettingsReader(); string savegameXMLPath = psr.getSavegameXMLLocation(); importantPaths = new ImportantPaths(savegameXMLPath); //Init dating system DateConverter dtConverter = new DateConverter(importantPaths); //Generate characters located in faction array (these characters are alive) CharInfoCreator charInfoCreator = new CharInfoCreator(importantPaths, dtConverter, religionsInfo); //Build family tree and generate dead characters FamilyTrees famTrees = new FamilyTrees(importantPaths, charInfoCreator, dtConverter); //Update faction-specific information with save game data factionsInfo.updateImportantPaths(importantPaths); factionsInfo.readFactionXMLs(); //Init region information attilaRegionsInfo = new AttilaRegionsInfo(importantPaths, regionMap, factionsInfo); //Generate de jure titles deJureTitles = new DeJureTitles(attilaRegionsInfo); //Update other information regarding factions and regions factionsInfo.updateFactionsInfo(attilaRegionsInfo); //Process family trees with regards to faction settings. (Dynasty update occurs here) factionsInfo.readFamilyTrees(famTrees); DirectoryHierarchyCreator.createOutputDirectories(); MoveFlags.move(factionsInfo); MoveCultures.move(); OutputCommonLandedTitles.output(factionsInfo); OutputCommonLandedTitles.outputDeJure(deJureTitles); OutputCommonDynasties.output(famTrees); //OutputCommonCultures.outputProvinceSpecific(attilaRegionsInfo); OutputCharacterHistories.output(factionsInfo); OutputProvinceHistories.output(attilaRegionsInfo, ck2RegionsInfo, religionsInfo); OutputTitleHistories.outputCountyHistory(factionsInfo); OutputTitleHistories.outputFactionTitleHistory(factionsInfo); OutputTitleLocalisation.output(factionsInfo); OutputTitleLocalisation.outputDeJure(deJureTitles); OutputCultureLocalisation.outputCultureGroups(cultureMaps); OutputCultureLocalisation.outputCultures(cultureMaps); }
public DeJureTitles(AttilaRegionsInfo attilaRegions) { List <AttilaRegionInfo> regionList = attilaRegions.getList(); createTitleHierarchy(regionList); }