From f5261d09afec11ad2dbe515ace38115784f9a41a Mon Sep 17 00:00:00 2001 From: Michael DiRienzo Date: Thu, 9 Jul 2020 18:28:59 -0400 Subject: [PATCH] Religions update cultures on culture regeneration Updated function names to be more similar and more descriptive --- modules/burgs-and-states.js | 8 ++++---- modules/religions-generator.js | 13 ++++++++++++- modules/ui/tools.js | 3 ++- 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/modules/burgs-and-states.js b/modules/burgs-and-states.js index d1b7a4c2..4cc36e2d 100644 --- a/modules/burgs-and-states.js +++ b/modules/burgs-and-states.js @@ -355,8 +355,8 @@ // Resets the cultures of all burgs and states to their // cell or center cell's (respectively) culture. - const resetCultures = function () { - console.time('resetCulturesForBurgsAndStates'); + const updateCultures = function () { + console.time('updateCulturesForBurgsAndStates'); // Assign the culture associated with the burgs cell. pack.burgs = pack.burgs.map( (burg, index) => { @@ -376,7 +376,7 @@ return {...state, culture: pack.cells.culture[state.center]}; }); - console.timeEnd('resetCulturesForBurgsAndStates'); + console.timeEnd('updateCulturesForBurgsAndStates'); } // calculate and draw curved state labels for a list of states @@ -1055,6 +1055,6 @@ return {generate, expandStates, normalizeStates, assignColors, drawBurgs, specifyBurgs, defineBurgFeatures, drawStateLabels, collectStatistics, - generateCampaigns, generateDiplomacy, defineStateForms, getFullName, generateProvinces, resetCultures}; + generateCampaigns, generateDiplomacy, defineStateForms, getFullName, generateProvinces, updateCultures}; }))); diff --git a/modules/religions-generator.js b/modules/religions-generator.js index 096b3260..90ee88ee 100644 --- a/modules/religions-generator.js +++ b/modules/religions-generator.js @@ -279,6 +279,17 @@ }); } + function updateCultures() { + console.time('updateCulturesForReligions'); + pack.religions = pack.religions.map( (religion, index) => { + if(index === 0) { + return religion; + } + return {...religion, culture: pack.cells.culture[religion.center]}; + }); + console.timeEnd('updateCulturesForReligions'); + } + // assign a unique two-letters code (abbreviation) function getCode(rawName) { const name = rawName.replace("Old ", ""); // remove Old prefix @@ -350,6 +361,6 @@ return type() + " of the " + generateMeaning(); }; - return {generate, add, getDeityName, expandReligions}; + return {generate, add, getDeityName, expandReligions, updateCultures}; }))); diff --git a/modules/ui/tools.js b/modules/ui/tools.js index 00877c41..066eda0b 100644 --- a/modules/ui/tools.js +++ b/modules/ui/tools.js @@ -248,7 +248,8 @@ function regenerateReligions() { function regenerateCultures() { Cultures.generate(); Cultures.expand(); - BurgsAndStates.resetCultures(); + BurgsAndStates.updateCultures(); + Religions.updateCultures(); if (!layerIsOn("toggleCultures")) toggleCultures(); else drawCultures(); refreshAllEditors(); }