This commit is contained in:
Azgaar 2019-11-20 01:52:29 +03:00
parent 614aaae733
commit d1b249ae79
6 changed files with 82 additions and 58 deletions

View file

@ -758,6 +758,15 @@
for (const s of states) {
if (list && !list.includes(s.i)) continue;
// some nomadic states
if (s.type === "Nomadic" && P(.8)) {
s.form = "Horde";
s.formName = expTiers[s.i] > 2 ? "United Hordes" : "Horde";
s.fullName = getFullName(s);
continue;
}
const religion = pack.cells.religion[s.center];
const theocracy = religion && pack.religions[religion].expansion === "state" || (P(.1) && pack.religions[religion].type === "Organized");
s.form = theocracy ? "Theocracy" : s.type === "Naval" ? ra(navalArray) : ra(genericArray);
@ -767,7 +776,6 @@
function selectForm(s) {
const base = pack.cultures[s.culture].base;
if (s.type === "Nomadic" && P(.3)) return "Horde"; // some nomadic states
if (s.form === "Monarchy") {
const form = monarchy[expTiers[s.i]];
@ -842,7 +850,8 @@
Republic:{Province:6, Department:2, Governorate:2, State:1, Canton:1, Prefecture:1},
Theocracy:{Parish:5, Deanery:3, Province:2, Council:1, District:1},
Union:{Province:2, State:1, Canton:1, Republic:1, County:1},
Wild:{Territory:6, Land:3, Province:1, Region:1}
Wild:{Territory:10, Land:5, Province:2, Region:2, Tribe:1, Clan:1},
Horde:{Horde:1}
}
// generate provinces for a selected burgs

View file

@ -3,6 +3,7 @@
// fit full-screen map if window is resized
$(window).resize(function(e) {
if (localStorage.getItem("mapWidth") && localStorage.getItem("mapHeight")) return;
mapWidthInput.value = window.innerWidth;
mapHeightInput.value = window.innerHeight;
changeMapSize();

View file

@ -134,8 +134,8 @@ function mapSizeInputChange() {
// change svg size on manual size change or window resize, do not change graph size
function changeMapSize() {
const svgWidth = Math.min(+mapWidthInput.value, window.innerWidth);
const svgHeight = Math.min(+mapHeightInput.value, window.innerHeight);
svgWidth = Math.min(+mapWidthInput.value, window.innerWidth);
svgHeight = Math.min(+mapHeightInput.value, window.innerHeight);
svg.attr("width", svgWidth).attr("height", svgHeight);
const maxWidth = Math.max(+mapWidthInput.value, graphWidth);

View file

@ -275,10 +275,24 @@ function editStates() {
}
function applyNameChange(s) {
s.name = document.getElementById("stateNameEditorShort").value;
s.formName = document.getElementById("stateNameEditorSelectForm").value;
s.fullName = document.getElementById("stateNameEditorFull").value;
if (stateNameEditorUpdateLabel.checked) BurgsAndStates.drawStateLabels([s.i]);
const nameInput = document.getElementById("stateNameEditorShort");
const formSelect = document.getElementById("stateNameEditorSelectForm");
const fullNameInput = document.getElementById("stateNameEditorFull");
const nameChanged = nameInput.value !== s.name;
const formChanged = formSelect.value !== s.formName;
const fullNameChanged = fullNameInput.value !== s.fullName;
const changed = nameChanged || formChanged || fullNameChanged;
if (formChanged) {
const form = formSelect.selectedOptions[0].dataset.form || null;
if (form) s.form = form;
}
s.name = nameInput.value;
s.formName = formSelect.value;
s.fullName = fullNameInput.value;
if (changed && stateNameEditorUpdateLabel.checked) BurgsAndStates.drawStateLabels([s.i]);
refreshStatesEditor();
}
}