This commit is contained in:
Azgaar 2021-04-10 14:33:59 +03:00
parent f8f2f52be9
commit 38c8a20c45
6 changed files with 37 additions and 38 deletions

View file

@ -71,7 +71,7 @@
});
if (religionsInput.value == 0 || pack.cultures.length < 2) {
religions.filter(r => r.i).forEach(r => r.code = getCode(r.name));
religions.filter(r => r.i).forEach(r => r.code = abbreviate(r.name));
return;
}
@ -182,7 +182,7 @@
if (type === "Organized") [name, expansion] = getReligionName(form, deity, center)
else {name = getCultName(form, center); expansion = "global";}
const formName = type === "Heresy" ? religions[r].form : form;
const code = getCode(name);
const code = abbreviate(name, religions.map(r => r.code));
religions.push({i, name, color, culture, type, form:formName, deity, expansion, expansionism:0, center, cells:0, area:0, rural:0, urban:0, origin:r, code});
cells.religion[center] = i;
}
@ -267,9 +267,9 @@
function checkCenters() {
const cells = pack.cells, religions = pack.religions;
const codes = religions.map(r => r.code);
religions.filter(r => r.i).forEach(r => {
// generate religion code (abbreviation)
r.code = getCode(r.name);
r.code = abbreviate(r.name, codes);
// move religion center if it's not within religion area after expansion
if (cells.religion[r.center] === r.i) return; // in area
@ -290,17 +290,6 @@
TIME && console.timeEnd('updateCulturesForReligions');
}
// assign a unique two-letters code (abbreviation)
function getCode(rawName) {
const name = rawName.replace("Old ", ""); // remove Old prefix
const words = name.split(" "), letters = words.join("");
let code = words.length === 2 ? words[0][0]+words[1][0] : letters.slice(0,2);
for (let i=1; i < letters.length-1 && pack.religions.some(r => r.code === code); i++) {
code = letters[0] + letters[i].toUpperCase();
}
return code;
}
// get supreme deity name
const getDeityName = function(culture) {
if (culture === undefined) {ERROR && console.error("Please define a culture"); return;}