diff --git a/index.css b/index.css
index 19cee92d..94dd7c3a 100644
--- a/index.css
+++ b/index.css
@@ -2358,6 +2358,9 @@ svg.button {
user-select: none;
}
+#goods > g > use {
+ pointer-events: none;
+}
.dontAsk {
margin: 0.9em 0 0 0.6em;
diff --git a/index.html b/index.html
index 4da56d9c..4c6422ce 100644
--- a/index.html
+++ b/index.html
@@ -7855,6 +7855,214 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/main.js b/main.js
index 8a38de32..dd502f56 100644
--- a/main.js
+++ b/main.js
@@ -739,8 +739,8 @@ async function generate(options) {
Trade.importGoods();
// temp, replace with route generator
- pack.cells.road = new Uint16Array(pack.cells.i.length);
- pack.cells.crossroad = new Uint16Array(pack.cells.i.length);
+ // pack.cells.road = new Uint16Array(pack.cells.i.length);
+ // pack.cells.crossroad = new Uint16Array(pack.cells.i.length);
Religions.generate();
BurgsAndStates.defineStateForms();
diff --git a/modules/burgs-and-states.js b/modules/burgs-and-states.js
index dc9e369d..e7cc57d5 100644
--- a/modules/burgs-and-states.js
+++ b/modules/burgs-and-states.js
@@ -1393,6 +1393,7 @@ window.BurgsAndStates = (function () {
generateDiplomacy,
defineStateForms,
getFullName,
+ defineTaxes,
generateProvinces,
updateCultures
};
diff --git a/modules/ui/burg-editor.js b/modules/ui/burg-editor.js
index e7714ec3..3a217f29 100644
--- a/modules/ui/burg-editor.js
+++ b/modules/ui/burg-editor.js
@@ -96,6 +96,12 @@ function editBurg(id) {
document.getElementById('burgExport').innerHTML = getExport(deals.filter((deal) => deal.exporter === b.i));
document.getElementById('burgImport').innerHTML = '';
+ // economics block
+ document.getElementById('burgProduction').innerHTML = getProduction(b.produced);
+ const deals = pack.trade.deals;
+ document.getElementById('burgExport').innerHTML = getExport(deals.filter((deal) => deal.exporter === b.i));
+ document.getElementById('burgImport').innerHTML = '';
+
//toggle lock
updateBurgLockIcon();
@@ -198,7 +204,7 @@ function editBurg(id) {
return `${totalIncome}: ${exported.join('')}`;
}
- // [-1; 31] °C, source: https://en.wikipedia.org/wiki/List_of_cities_by_average_temperature
+ // in °C, array from -1 °C; source: https://en.wikipedia.org/wiki/List_of_cities_by_average_temperature
function getTemperatureLikeness(temperature) {
if (temperature < -15) return 'nowhere in the real-world';
if (temperature < -5) return 'in Yakutsk';
diff --git a/modules/ui/style.js b/modules/ui/style.js
index f411894c..5b8d2c1e 100644
--- a/modules/ui/style.js
+++ b/modules/ui/style.js
@@ -270,6 +270,13 @@ function selectStyleElement() {
styleResourcesCircle.checked = +el.attr('data-circle');
}
+ if (sel === 'goods') {
+ styleStrokeWidth.style.display = 'block';
+ styleStrokeWidthInput.value = styleStrokeWidthOutput.value = el.attr('stroke-width') || '';
+ styleResources.style.display = 'block';
+ styleResourcesCircle.checked = +el.attr('data-circle');
+ }
+
// update group options
styleGroupSelect.options.length = 0; // remove all options
if (['routes', 'labels', 'coastline', 'lakes', 'anchors', 'burgIcons', 'borders'].includes(sel)) {