From 2f53a635c8e863c2a64745f3168645e2437648e9 Mon Sep 17 00:00:00 2001 From: Azgaar Date: Thu, 2 Jan 2025 14:14:00 +0100 Subject: [PATCH] feat: burg groups - image icons --- icon.svg | 24 ------- index.html | 59 +++++++++++++--- modules/burgs-generator.js | 23 +++---- modules/dynamic/editors/states-editor.js | 6 +- modules/io/load.js | 10 +-- modules/markers-generator.js | 2 +- modules/renderers/draw-burg-icons.js | 4 +- modules/renderers/draw-burg-labels.js | 10 +-- modules/ui/3d.js | 24 +++---- modules/ui/burg-editor.js | 2 +- modules/ui/editors.js | 12 ++-- modules/ui/general.js | 2 +- modules/ui/options.js | 2 +- modules/ui/provinces-editor.js | 2 +- modules/ui/tools.js | 10 +-- styles/ancient.json | 88 ++++++++++++------------ styles/atlas.json | 12 ++-- styles/clean.json | 12 ++-- styles/cyberpunk.json | 12 ++-- styles/darkSeas.json | 12 ++-- styles/default.json | 36 +++++----- styles/gloom.json | 12 ++-- styles/light.json | 12 ++-- styles/monochrome.json | 12 ++-- styles/night.json | 12 ++-- styles/pale.json | 12 ++-- styles/watercolor.json | 12 ++-- 27 files changed, 225 insertions(+), 211 deletions(-) delete mode 100644 icon.svg diff --git a/icon.svg b/icon.svg deleted file mode 100644 index f3c7108e..00000000 --- a/icon.svg +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/index.html b/index.html index 53ea5c74..40542f8f 100644 --- a/index.html +++ b/index.html @@ -648,14 +648,6 @@ > Emblems -
  • - Labels -
  • Icons
  • +
  • + Labels +
  • - + - Towns number + Burgs number @@ -7961,6 +7961,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + { const sorted = populatedCells.sort((a, b) => score[b] - score[a]); const burgsNumber = getTownsNumber(); - let spacing = (graphWidth + graphHeight) / 150 / (burgsNumber ** 0.7 / 66); // min distance between towns + let spacing = (graphWidth + graphHeight) / 150 / (burgsNumber ** 0.7 / 66); // min distance between town for (let added = 0; added < burgsNumber && spacing > 1; ) { for (let i = 0; added < burgsNumber && i < sorted.length; i++) { @@ -261,24 +261,24 @@ window.Burgs = (() => { } const getDefaultGroups = () => [ - {name: "capitals", active: true, order: 9, features: {capital: true}, preview: "watabou-city"}, - {name: "cities", active: true, order: 8, percentile: 90, min: 5, preview: "watabou-city"}, + {name: "capital", active: true, order: 9, features: {capital: true}, preview: "watabou-city"}, + {name: "city", active: true, order: 8, percentile: 90, min: 5, preview: "watabou-city"}, { - name: "forts", + name: "fort", active: true, features: {citadel: true, walls: false, plaza: false, port: false}, order: 6, max: 1 }, { - name: "monasteries", + name: "monastery", active: true, features: {temple: true, walls: false, plaza: false, port: false}, order: 5, max: 0.8 }, { - name: "caravanserais", + name: "caravanserai", active: true, features: {port: false, plaza: true}, order: 4, @@ -286,16 +286,15 @@ window.Burgs = (() => { biomes: [1, 2, 3] }, { - name: "trading_posts", + name: "trading_post", active: true, order: 3, features: {plaza: true}, max: 0.8, - biomes: [5, 6, 7, 8, 9, 10, 11, 12], - preview: "watabou-dwelling" + biomes: [5, 6, 7, 8, 9, 10, 11, 12] }, { - name: "villages", + name: "village", active: true, order: 2, min: 0.1, @@ -304,14 +303,14 @@ window.Burgs = (() => { preview: "watabou-village" }, { - name: "hamlets", + name: "hamlet", active: true, order: 1, features: {walls: false, plaza: false}, max: 0.1, preview: "watabou-village" }, - {name: "towns", active: true, order: 7, isDefault: true, preview: "watabou-city"} + {name: "town", active: true, order: 7, isDefault: true, preview: "watabou-city"} ]; function defineGroup(burg, populations) { diff --git a/modules/dynamic/editors/states-editor.js b/modules/dynamic/editors/states-editor.js index 37a489c9..e92563ab 100644 --- a/modules/dynamic/editors/states-editor.js +++ b/modules/dynamic/editors/states-editor.js @@ -603,7 +603,7 @@ function stateRemove(stateId) { burg.state = 0; if (burg.capital) { burg.capital = 0; - moveBurgToGroup(burg.i, "towns"); + moveBurgToGroup(burg.i, "town"); } } }); @@ -1192,7 +1192,7 @@ function addState() { // turn burg into a capital burgs[burg].capital = 1; burgs[burg].state = newState; - moveBurgToGroup(burg, "cities"); + moveBurgToGroup(burg, "city"); if (d3.event.shiftKey === false) exitAddStateMode(); @@ -1382,7 +1382,7 @@ function openStateMergeDialog() { pack.burgs.forEach(b => { if (statesToMerge.includes(b.state)) { if (b.capital) { - moveBurgToGroup(b.i, "towns"); + moveBurgToGroup(b.i, "town"); b.capital = 0; } b.state = rulingStateId; diff --git a/modules/io/load.js b/modules/io/load.js index 8e05a798..ff4223b6 100644 --- a/modules/io/load.js +++ b/modules/io/load.js @@ -615,12 +615,12 @@ async function parseLoadedData(data, mapVersion) { console.error( `[Data integrity] Neutral burgs (${capitalBurgs .map(b => b.i) - .join(", ")}) marked as capitals. Moving them to towns` + .join(", ")}) marked as capitals. Moving them to town` ); capitalBurgs.forEach(burg => { burg.capital = 0; - moveBurgToGroup(burg.i, "towns"); + moveBurgToGroup(burg.i, "town"); }); return; @@ -629,13 +629,13 @@ async function parseLoadedData(data, mapVersion) { if (capitalBurgs.length > 1) { const message = `[Data integrity] State ${state.i} has multiple capitals (${capitalBurgs .map(b => b.i) - .join(", ")}) assigned. Keeping the first as capital and moving others to towns`; + .join(", ")}) assigned. Keeping the first as capital and moving others to town`; ERROR && console.error(message); capitalBurgs.forEach((burg, i) => { if (!i) return; burg.capital = 0; - moveBurgToGroup(burg.i, "towns"); + moveBurgToGroup(burg.i, "town"); }); return; @@ -645,7 +645,7 @@ async function parseLoadedData(data, mapVersion) { ERROR && console.error(`[Data integrity] State ${state.i} has no capital. Assigning the first burg as capital`); stateBurgs[0].capital = 1; - moveBurgToGroup(stateBurgs[0].i, "cities"); + moveBurgToGroup(stateBurgs[0].i, "city"); } }); diff --git a/modules/markers-generator.js b/modules/markers-generator.js index c0477419..806d95fb 100644 --- a/modules/markers-generator.js +++ b/modules/markers-generator.js @@ -1203,7 +1203,7 @@ window.Markers = (function () { const burgName = burgs[cells.burg[cell]].name; const name = `${burgName} Portal`; - const legend = `An element of the magic portal system connecting major cities. The portals were installed centuries ago, but still work fine.`; + const legend = `An element of the magic portal system connecting major city. The portals were installed centuries ago, but still work fine.`; notes.push({id, name, legend}); } diff --git a/modules/renderers/draw-burg-icons.js b/modules/renderers/draw-burg-icons.js index b2dd96ec..4a5e1dc4 100644 --- a/modules/renderers/draw-burg-icons.js +++ b/modules/renderers/draw-burg-icons.js @@ -36,7 +36,7 @@ function drawBurgIcons() { // capitalAnchors // .selectAll("use") - // .data(capitals.filter(c => c.port)) + // .data(capital.filter(c => c.port)) // .enter() // .append("use") // .attr("xlink:href", "#icon-anchor") @@ -62,7 +62,7 @@ function drawBurgIcon(burg) { } function createIconGroups() { - const defaultStyle = style.burgIcons.towns || Object.values(style.burgIcons)[0]; + const defaultStyle = style.burgIcons.town || Object.values(style.burgIcons)[0]; // save existing styles and remove all groups document.querySelectorAll("g#burgIcons > g").forEach(group => { diff --git a/modules/renderers/draw-burg-labels.js b/modules/renderers/draw-burg-labels.js index 564cbf55..5a5bea38 100644 --- a/modules/renderers/draw-burg-labels.js +++ b/modules/renderers/draw-burg-labels.js @@ -11,8 +11,8 @@ function drawBurgLabels() { const labelGroup = burgLabels.select("#" + name); if (labelGroup.empty()) continue; - const dx = labelGroup.attr("data-dx"); - const dy = labelGroup.attr("data-dy"); + const dx = labelGroup.attr("data-dx") || 0; + const dy = labelGroup.attr("data-dy") || 0; labelGroup .selectAll("text") @@ -33,8 +33,8 @@ function drawBurgLabels() { function drawBurgLabel(burg) { const group = burgLabels.select("#" + burg.group); - const dx = labelGroup.attr("data-dx"); - const dy = labelGroup.attr("data-dy"); + const dx = labelGroup.attr("data-dx") || 0; + const dy = labelGroup.attr("data-dy") || 0; group .append("text") @@ -48,7 +48,7 @@ function drawBurgLabel(burg) { } function createLabelGroups() { - const defaultStyle = style.burgLabels.towns || Object.values(style.burgLabels)[0]; + const defaultStyle = style.burgLabels.town || Object.values(style.burgLabels)[0]; // save existing styles and remove all groups document.querySelectorAll("g#burgLabels > g").forEach(group => { diff --git a/modules/ui/3d.js b/modules/ui/3d.js index f0b29661..85151c68 100644 --- a/modules/ui/3d.js +++ b/modules/ui/3d.js @@ -298,10 +298,10 @@ window.ThreeD = (function () { raycaster.set(new THREE.Vector3(0, 1000, 0), new THREE.Vector3(0, -1, 0)); const states = viewbox.select("#labels #states"); - const cities = burgLabels.select("#cities"); - const towns = burgLabels.select("#towns"); - const city_icons = burgIcons.select("#cities"); - const town_icons = burgIcons.select("#towns"); + const city = burgLabels.select("#city"); + const town = burgLabels.select("#town"); + const city_icons = burgIcons.select("#city"); + const town_icons = burgIcons.select("#town"); const stateOptions = { font: states.attr("font-family"), @@ -312,25 +312,25 @@ window.ThreeD = (function () { }; const cityOptions = { - font: cities.attr("font-family"), - size: +cities.attr("data-size"), - color: cities.attr("fill"), + font: city.attr("font-family"), + size: +city.attr("data-size"), + color: city.attr("fill"), elevation: 10, quality: 20, iconSize: 1, iconColor: "#666", - line: 10 - cities.attr("data-size") / 2 + line: 10 - city.attr("data-size") / 2 }; const townOptions = { - font: towns.attr("font-family"), - size: +towns.attr("data-size"), - color: towns.attr("fill"), + font: townttr("font-family"), + size: +town.attr("data-size"), + color: town.attr("fill"), elevation: 5, quality: 30, iconSize: 0.5, iconColor: "#666", - line: 5 - towns.attr("data-size") / 2 + line: 5 - town.attr("data-size") / 2 }; const city_icon_material = new THREE.MeshPhongMaterial({color: cityOptions.iconColor}); diff --git a/modules/ui/burg-editor.js b/modules/ui/burg-editor.js index fb16bb80..e9d68fdd 100644 --- a/modules/ui/burg-editor.js +++ b/modules/ui/burg-editor.js @@ -387,7 +387,7 @@ function editBurg(id) { } } -// in °C, array from -1 °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_city_by_average_temperature const meanTempCityMap = { "-5": "Snag (Yukon)", "-4": "Yellowknife (Canada)", diff --git a/modules/ui/editors.js b/modules/ui/editors.js index a58c8e73..69fd1344 100644 --- a/modules/ui/editors.js +++ b/modules/ui/editors.js @@ -163,9 +163,9 @@ function moveAllBurgsToGroup(fromGroup, toGroup) { function addBurgsGroup(group) { if (document.querySelector(`#burgLabels > #${group}`)) return; - const labelCopy = document.querySelector("#burgLabels > #towns").cloneNode(false); - const iconCopy = document.querySelector("#burgIcons > #towns").cloneNode(false); - const anchorCopy = document.querySelector("#anchors > #towns").cloneNode(false); + const labelCopy = document.querySelector("#burgLabels > #town").cloneNode(false); + const iconCopy = document.querySelector("#burgIcons > #town").cloneNode(false); + const anchorCopy = document.querySelector("#anchors > #town").cloneNode(false); // FIXME: using the same id is against the spec! document.querySelector("#burgLabels").appendChild(labelCopy).id = group; @@ -209,8 +209,8 @@ function toggleCapital(burgId) { burgs[burgId].capital = 1; burgs[prevCapitalId].capital = 0; - moveBurgToGroup(burgId, "cities"); - moveBurgToGroup(prevCapitalId, "towns"); + moveBurgToGroup(burgId, "city"); + moveBurgToGroup(prevCapitalId, "town"); } function togglePort(burg) { @@ -227,7 +227,7 @@ function togglePort(burg) { if (!haven) tip("Port haven is not found, system won't be able to make a searoute", false, "warn"); b.port = port; - const g = b.capital ? "cities" : "towns"; + const g = b.capital ? "city" : "town"; const group = anchors.select("g#" + g); const size = +group.attr("size"); group diff --git a/modules/ui/general.js b/modules/ui/general.js index e02f9d19..ce285287 100644 --- a/modules/ui/general.js +++ b/modules/ui/general.js @@ -167,7 +167,7 @@ function showMapTooltip(point, e, i, g) { if (burgId) { const burg = pack.burgs[burgId]; const population = si(burg.population * populationRate * urbanization); - tip(`${burg.name}. Population: ${population}. Group: ${burg.group}. Click to edit`); + tip(`${burg.name} ${burg.group}. Population: ${population}. Click to edit`); if (burgsOverview?.offsetParent) highlightEditorLine(burgsOverview, burgId, 5000); return; } diff --git a/modules/ui/options.js b/modules/ui/options.js index 537a6a4e..84c1a6a0 100644 --- a/modules/ui/options.js +++ b/modules/ui/options.js @@ -392,7 +392,7 @@ function changeEmblemShape(emblemShape) { function changeStatesNumber(value) { byId("statesNumber").style.color = +value ? null : "#b12117"; - burgLabels.select("#capitals").attr("data-size", Math.max(rn(6 - value / 20), 3)); + burgLabels.select("#capital").attr("data-size", Math.max(rn(6 - value / 20), 3)); labels.select("#countries").attr("data-size", Math.max(rn(18 - value / 6), 4)); } diff --git a/modules/ui/provinces-editor.js b/modules/ui/provinces-editor.js index 480958a3..05d4e4d5 100644 --- a/modules/ui/provinces-editor.js +++ b/modules/ui/provinces-editor.js @@ -297,7 +297,7 @@ function editProvinces() { // turn province burg into a capital burgs[burgId].capital = 1; - moveBurgToGroup(burgId, "cities"); + moveBurgToGroup(burgId, "city"); // move all burgs to a new state province.burgs.forEach(b => (burgs[b].state = newStateId)); diff --git a/modules/ui/tools.js b/modules/ui/tools.js index 5947ee3b..51fdcb24 100644 --- a/modules/ui/tools.js +++ b/modules/ui/tools.js @@ -211,12 +211,12 @@ function recreateStates() { return null; } - // turn all old capitals into towns, except for the capitals of locked states + // turn all old capitals into town, except for the capitals of locked states for (const burg of validBurgs) { if (!burg.capital) continue; if (lockedStatesCapitals.includes(burg.i)) continue; - moveBurgToGroup(burg.i, "towns"); + moveBurgToGroup(burg.i, "town"); burg.capital = 0; } @@ -304,7 +304,7 @@ function recreateStates() { burg.capital = 1; capital = burg; capitalsTree.add([x, y]); - moveBurgToGroup(burg.i, "cities"); + moveBurgToGroup(burg.i, "city"); break; } @@ -402,7 +402,7 @@ function regenerateBurgs() { const burgsCount = (manorsInput.value === "1000" ? rn(sorted.length / 5 / (grid.points.length / 10000) ** 0.8) : +manorsInput.value) + existingStatesCount; - const spacing = (graphWidth + graphHeight) / 150 / (burgsCount ** 0.7 / 66); // base min distance between towns + const spacing = (graphWidth + graphHeight) / 150 / (burgsCount ** 0.7 / 66); // base min distance between town for (let i = 0; i < sorted.length && newBurgs.length < burgsCount; i++) { const id = newBurgs.length; @@ -438,7 +438,7 @@ function regenerateBurgs() { s.center = pack.burgs[burgId].cell; pack.burgs[burgId].capital = 1; pack.burgs[burgId].state = s.i; - moveBurgToGroup(burgId, "cities"); + moveBurgToGroup(burgId, "city"); }); features.forEach(f => { diff --git a/styles/ancient.json b/styles/ancient.json index 2bab2ed9..e5b7bda8 100644 --- a/styles/ancient.json +++ b/styles/ancient.json @@ -328,17 +328,17 @@ "data-y": 93, "data-columns": 8 }, - "#burgLabels > g#capitals": { - "opacity": 1, + "#burgLabels > g#capital": { + "opacity": 0.9, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", "letter-spacing": 0, - "data-size": 7, - "font-size": 7, - "font-family": "Great Vibes", - "data-dy": 0.6 + "data-size": 6, + "font-size": 6, + "font-family": "UnifrakturMaguntia", + "data-dy": 0.8 }, - "#burgIcons > g#capitals": { + "#burgIcons > g#capital": { "data-icon": "#icon-watabou-capital", "opacity": 1, "fill": "#E59189", @@ -350,17 +350,17 @@ "stroke-linecap": "round", "stroke-linejoin": "round" }, - "#burgLabels > g#cities": { - "opacity": 1, + "#burgLabels > g#city": { + "opacity": 0.9, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", "letter-spacing": 0, "data-size": 5, "font-size": 5, - "font-family": "Great Vibes", - "data-dy": 0.6 + "font-family": "UnifrakturMaguntia", + "data-dy": 0.8 }, - "#burgIcons > g#cities": { + "#burgIcons > g#city": { "data-icon": "#icon-watabou-city", "opacity": 1, "fill": "#ffffff", @@ -372,17 +372,17 @@ "stroke-linecap": "butt", "stroke-linejoin": "round" }, - "#burgLabels > g#forts": { - "opacity": 1, + "#burgLabels > g#fort": { + "opacity": 0.9, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", "letter-spacing": 0, "data-size": 3, "font-size": 3, - "font-family": "Great Vibes", + "font-family": "UnifrakturMaguntia", "data-dy": 0.8 }, - "#burgIcons > g#forts": { + "#burgIcons > g#fort": { "data-icon": "#icon-watabou-fort", "opacity": 1, "fill": "#ffffff", @@ -394,18 +394,18 @@ "stroke-linecap": "butt", "stroke-linejoin": "round" }, - "#burgLabels > g#monasteries": { - "opacity": 1, + "#burgLabels > g#monastery": { + "opacity": 0.9, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", "letter-spacing": 0, "data-size": 2, "font-size": 2, - "font-family": "Great Vibes", + "font-family": "UnifrakturMaguntia", "data-dy": 0.8 }, - "#burgIcons > g#monasteries": { - "data-icon": "#icon-triangle", + "#burgIcons > g#monastery": { + "data-icon": "#icon-watabou-monastery", "opacity": 1, "fill": "#ffffff", "fill-opacity": 1, @@ -416,18 +416,18 @@ "stroke-linecap": "butt", "stroke-linejoin": "round" }, - "#burgLabels > g#caravanserais": { - "opacity": 1, + "#burgLabels > g#caravanserai": { + "opacity": 0.9, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", "letter-spacing": 0, "data-size": 2, "font-size": 2, - "font-family": "Great Vibes", + "font-family": "UnifrakturMaguntia", "data-dy": 0.8 }, - "#burgIcons > g#caravanserais": { - "data-icon": "#icon-triangle", + "#burgIcons > g#caravanserai": { + "data-icon": "#icon-watabou-caravanserai", "opacity": 1, "fill": "#ffffff", "fill-opacity": 1, @@ -438,18 +438,18 @@ "stroke-linecap": "butt", "stroke-linejoin": "round" }, - "#burgLabels > g#trading_posts": { - "opacity": 1, + "#burgLabels > g#trading_post": { + "opacity": 0.9, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", "letter-spacing": 0, "data-size": 2, "font-size": 2, - "font-family": "Great Vibes", + "font-family": "UnifrakturMaguntia", "data-dy": 0.8 }, - "#burgIcons > g#trading_posts": { - "data-icon": "#icon-triangle", + "#burgIcons > g#trading_post": { + "data-icon": "#icon-watabou-post", "opacity": 1, "fill": "#ffffff", "fill-opacity": 1, @@ -460,17 +460,17 @@ "stroke-linecap": "butt", "stroke-linejoin": "round" }, - "#burgLabels > g#villages": { - "opacity": 1, + "#burgLabels > g#village": { + "opacity": 0.9, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", "letter-spacing": 0, "data-size": 3, "font-size": 3, - "font-family": "Great Vibes", + "font-family": "UnifrakturMaguntia", "data-dy": 0.8 }, - "#burgIcons > g#villages": { + "#burgIcons > g#village": { "data-icon": "#icon-watabou-village", "opacity": 1, "fill": "#ffffff", @@ -482,19 +482,19 @@ "stroke-linecap": "butt", "stroke-linejoin": "round" }, - "#burgLabels > g#hamlets": { - "opacity": 1, + "#burgLabels > g#hamlet": { + "opacity": 0.9, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", "letter-spacing": 0, "data-size": 2, "font-size": 2, - "font-family": "Great Vibes", + "font-family": "UnifrakturMaguntia", "data-dy": 0.8 }, - "#burgIcons > g#hamlets": { + "#burgIcons > g#hamlet": { "data-icon": "#icon-watabou-hamlet", - "opacity": 1, + "opacity": 0.9, "fill": "#ffffff", "fill-opacity": 1, "font-size": 2, @@ -504,17 +504,17 @@ "stroke-linecap": "butt", "stroke-linejoin": "round" }, - "#burgLabels > g#towns": { - "opacity": 1, + "#burgLabels > g#town": { + "opacity": 0.9, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", "letter-spacing": 0, "data-size": 3, "font-size": 3, - "font-family": "Great Vibes", + "font-family": "UnifrakturMaguntia", "data-dy": 0.8 }, - "#burgIcons > g#towns": { + "#burgIcons > g#town": { "data-icon": "#icon-watabou-town", "opacity": 1, "fill": "#ffffff", diff --git a/styles/atlas.json b/styles/atlas.json index a47b5d0f..b897bc3f 100644 --- a/styles/atlas.json +++ b/styles/atlas.json @@ -328,7 +328,7 @@ "data-y": 93, "data-columns": 8 }, - "#burgLabels > #cities": { + "#burgLabels > #city": { "opacity": 1, "fill": "#000000", "style": "text-shadow: white 0px 0px 4px", @@ -337,7 +337,7 @@ "font-size": 5, "font-family": "Amarante" }, - "#burgIcons > #cities": { + "#burgIcons > #city": { "opacity": 1, "fill": "#000000", "fill-opacity": 0.7, @@ -347,14 +347,14 @@ "stroke-dasharray": "", "stroke-linecap": "round" }, - "#anchors > #cities": { + "#anchors > #city": { "opacity": 1, "fill": "#ffffff", "size": 2, "stroke": "#3e3e4b", "stroke-width": 1.2 }, - "#burgLabels > #towns": { + "#burgLabels > #town": { "opacity": 1, "fill": "#000000", "style": "text-shadow: white 0px 0px 4px", @@ -363,7 +363,7 @@ "font-size": 4, "font-family": "Amarante" }, - "#burgIcons > #towns": { + "#burgIcons > #town": { "opacity": 1, "fill": "#000000", "fill-opacity": 0.7, @@ -373,7 +373,7 @@ "stroke-dasharray": "", "stroke-linecap": "round" }, - "#anchors > #towns": { + "#anchors > #town": { "opacity": 1, "fill": "#ffffff", "size": 1, diff --git a/styles/clean.json b/styles/clean.json index 948a1bcb..800c06ff 100644 --- a/styles/clean.json +++ b/styles/clean.json @@ -330,7 +330,7 @@ "data-y": 93, "data-columns": 8 }, - "#burgLabels > #cities": { + "#burgLabels > #city": { "opacity": 1, "fill": "#414141", "style": "text-shadow: white 0 0 4px", @@ -339,7 +339,7 @@ "font-size": 7, "font-family": "Arial" }, - "#burgIcons > #cities": { + "#burgIcons > #city": { "opacity": 1, "fill": "#ffffff", "fill-opacity": 0.7, @@ -349,14 +349,14 @@ "stroke-dasharray": "", "stroke-linecap": "butt" }, - "#anchors > #cities": { + "#anchors > #city": { "opacity": 1, "fill": "#ffffff", "size": 2, "stroke": "#303030", "stroke-width": 1.7 }, - "#burgLabels > #towns": { + "#burgLabels > #town": { "opacity": 1, "fill": "#414141", "style": "text-shadow: none", @@ -365,7 +365,7 @@ "font-size": 3, "font-family": "Arial" }, - "#burgIcons > #towns": { + "#burgIcons > #town": { "opacity": 1, "fill": "#ffffff", "fill-opacity": 0.7, @@ -375,7 +375,7 @@ "stroke-dasharray": "", "stroke-linecap": "butt" }, - "#anchors > #towns": { + "#anchors > #town": { "opacity": 1, "fill": "#ffffff", "size": 1, diff --git a/styles/cyberpunk.json b/styles/cyberpunk.json index b992d8bb..7ff394eb 100644 --- a/styles/cyberpunk.json +++ b/styles/cyberpunk.json @@ -328,7 +328,7 @@ "data-y": 93, "data-columns": 8 }, - "#burgLabels > #cities": { + "#burgLabels > #city": { "opacity": 1, "fill": "#ffffff", "style": "text-shadow: white 0px 0px 4px", @@ -337,7 +337,7 @@ "font-size": 8, "font-family": "Orbitron" }, - "#burgIcons > #cities": { + "#burgIcons > #city": { "opacity": 1, "fill": "#ffffff", "fill-opacity": 0.7, @@ -347,14 +347,14 @@ "stroke-dasharray": "", "stroke-linecap": "butt" }, - "#anchors > #cities": { + "#anchors > #city": { "opacity": 1, "fill": "#ffffff", "size": 4, "stroke": "#3e3e4b", "stroke-width": 1 }, - "#burgLabels > #towns": { + "#burgLabels > #town": { "opacity": 1, "fill": "#ffffff", "style": "text-shadow: white 0px 0px 4px", @@ -363,7 +363,7 @@ "font-size": 3, "font-family": "Orbitron" }, - "#burgIcons > #towns": { + "#burgIcons > #town": { "opacity": 0.95, "fill": "#ffffff", "fill-opacity": 0.7, @@ -373,7 +373,7 @@ "stroke-dasharray": "", "stroke-linecap": "butt" }, - "#anchors > #towns": { + "#anchors > #town": { "opacity": 1, "fill": "#ffffff", "size": 1.6, diff --git a/styles/darkSeas.json b/styles/darkSeas.json index 7912aa9e..bcc99d6d 100644 --- a/styles/darkSeas.json +++ b/styles/darkSeas.json @@ -317,7 +317,7 @@ "data-y": 93, "data-columns": 8 }, - "#burgLabels > #cities": { + "#burgLabels > #city": { "opacity": 1, "fill": "#000000", "style": "text-shadow: white 0px 0px 4px", @@ -326,7 +326,7 @@ "font-size": 7, "font-family": "Lugrasimo" }, - "#burgIcons > #cities": { + "#burgIcons > #city": { "opacity": 0.7, "fill": "#000000", "size": 1.75, @@ -335,14 +335,14 @@ "stroke-dasharray": 0, "stroke-linecap": "butt" }, - "#anchors > #cities": { + "#anchors > #city": { "opacity": 1, "fill": "#ffffff", "size": 3.5, "stroke": "#3e3e4b", "stroke-width": 1.2 }, - "#burgLabels > #towns": { + "#burgLabels > #town": { "opacity": 1, "fill": "#000000", "style": "text-shadow: white 0px 0px 4px", @@ -351,7 +351,7 @@ "font-size": 5, "font-family": "Lugrasimo" }, - "#burgIcons > #towns": { + "#burgIcons > #town": { "opacity": 0.7, "fill": "#000000", "size": 1.25, @@ -360,7 +360,7 @@ "stroke-dasharray": 0, "stroke-linecap": "butt" }, - "#anchors > #towns": { + "#anchors > #town": { "opacity": 1, "fill": "#ffffff", "size": 2, diff --git a/styles/default.json b/styles/default.json index bce6f076..b0bbafee 100644 --- a/styles/default.json +++ b/styles/default.json @@ -328,7 +328,7 @@ "data-y": 93, "data-columns": 8 }, - "#burgLabels > g#capitals": { + "#burgLabels > g#capital": { "opacity": 1, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", @@ -338,7 +338,7 @@ "font-family": "Almendra SC", "data-dy": -0.4 }, - "#burgIcons > g#capitals": { + "#burgIcons > g#capital": { "data-icon": "#icon-square", "opacity": 1, "fill": "#ffffff", @@ -350,7 +350,7 @@ "stroke-linecap": "butt", "stroke-linejoin": "round" }, - "#burgLabels > g#cities": { + "#burgLabels > g#city": { "opacity": 1, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", @@ -360,7 +360,7 @@ "font-family": "Almendra SC", "data-dy": -0.4 }, - "#burgIcons > g#cities": { + "#burgIcons > g#city": { "data-icon": "#icon-circle", "opacity": 1, "fill": "#ffffff", @@ -372,7 +372,7 @@ "stroke-linecap": "butt", "stroke-linejoin": "round" }, - "#burgLabels > g#forts": { + "#burgLabels > g#fort": { "opacity": 1, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", @@ -382,7 +382,7 @@ "font-family": "Almendra SC", "data-dy": -0.4 }, - "#burgIcons > g#forts": { + "#burgIcons > g#fort": { "data-icon": "#icon-triangle", "opacity": 1, "fill": "#ffffff", @@ -394,7 +394,7 @@ "stroke-linecap": "butt", "stroke-linejoin": "round" }, - "#burgLabels > g#monasteries": { + "#burgLabels > g#monastery": { "opacity": 1, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", @@ -404,7 +404,7 @@ "font-family": "Almendra SC", "data-dy": -0.4 }, - "#burgIcons > g#monasteries": { + "#burgIcons > g#monastery": { "data-icon": "#icon-triangle", "opacity": 1, "fill": "#ffffff", @@ -416,7 +416,7 @@ "stroke-linecap": "butt", "stroke-linejoin": "round" }, - "#burgLabels > g#caravanserais": { + "#burgLabels > g#caravanserai": { "opacity": 1, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", @@ -426,7 +426,7 @@ "font-family": "Almendra SC", "data-dy": -0.4 }, - "#burgIcons > g#caravanserais": { + "#burgIcons > g#caravanserai": { "data-icon": "#icon-triangle", "opacity": 1, "fill": "#ffffff", @@ -438,7 +438,7 @@ "stroke-linecap": "butt", "stroke-linejoin": "round" }, - "#burgLabels > g#trading_posts": { + "#burgLabels > g#trading_post": { "opacity": 1, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", @@ -448,7 +448,7 @@ "font-family": "Almendra SC", "data-dy": -0.4 }, - "#burgIcons > g#trading_posts": { + "#burgIcons > g#trading_post": { "data-icon": "#icon-triangle", "opacity": 1, "fill": "#ffffff", @@ -460,7 +460,7 @@ "stroke-linecap": "butt", "stroke-linejoin": "round" }, - "#burgLabels > g#villages": { + "#burgLabels > g#village": { "opacity": 1, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", @@ -470,7 +470,7 @@ "font-family": "Almendra SC", "data-dy": -0.4 }, - "#burgIcons > g#villages": { + "#burgIcons > g#village": { "data-icon": "#icon-circle", "opacity": 1, "fill": "#ffffff", @@ -482,7 +482,7 @@ "stroke-linecap": "butt", "stroke-linejoin": "round" }, - "#burgLabels > g#hamlets": { + "#burgLabels > g#hamlet": { "opacity": 1, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", @@ -492,7 +492,7 @@ "font-family": "Almendra SC", "data-dy": -0.4 }, - "#burgIcons > g#hamlets": { + "#burgIcons > g#hamlet": { "data-icon": "#icon-circle", "opacity": 1, "fill": "#ffffff", @@ -504,7 +504,7 @@ "stroke-linecap": "butt", "stroke-linejoin": "round" }, - "#burgLabels > g#towns": { + "#burgLabels > g#town": { "opacity": 1, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", @@ -514,7 +514,7 @@ "font-family": "Almendra SC", "data-dy": -0.4 }, - "#burgIcons > g#towns": { + "#burgIcons > g#town": { "data-icon": "#icon-circle", "opacity": 1, "fill": "#ffffff", diff --git a/styles/gloom.json b/styles/gloom.json index a72d9209..ca36cdc3 100644 --- a/styles/gloom.json +++ b/styles/gloom.json @@ -331,7 +331,7 @@ "data-columns": 8 }, "#legendBox": {}, - "#burgLabels > #cities": { + "#burgLabels > #city": { "opacity": 1, "fill": "#3e3e4b", "style": "text-shadow: white 0 0 2px", @@ -340,7 +340,7 @@ "font-size": 8, "font-family": "Underdog" }, - "#burgIcons > #cities": { + "#burgIcons > #city": { "opacity": 1, "fill": "#ffffff", "fill-opacity": 0.7, @@ -350,14 +350,14 @@ "stroke-dasharray": "", "stroke-linecap": "butt" }, - "#anchors > #cities": { + "#anchors > #city": { "opacity": 0.8, "fill": "#ffffff", "size": 4, "stroke": "#3e3e4b", "stroke-width": 1 }, - "#burgLabels > #towns": { + "#burgLabels > #town": { "opacity": 1, "fill": "#3e3e4b", "style": "text-shadow: none", @@ -366,7 +366,7 @@ "font-size": 4, "font-family": "Underdog" }, - "#burgIcons > #towns": { + "#burgIcons > #town": { "opacity": 0.95, "fill": "#ffffff", "fill-opacity": 0.7, @@ -376,7 +376,7 @@ "stroke-dasharray": "", "stroke-linecap": "butt" }, - "#anchors > #towns": { + "#anchors > #town": { "opacity": 1, "fill": "#ffffff", "size": 1.6, diff --git a/styles/light.json b/styles/light.json index fc3e68ab..5cee9cdf 100644 --- a/styles/light.json +++ b/styles/light.json @@ -328,7 +328,7 @@ "data-y": 62.98, "data-columns": 8 }, - "#burgLabels > #cities": { + "#burgLabels > #city": { "opacity": 1, "fill": "#3a3a3a", "style": "text-shadow: white 0px 0px 4px", @@ -337,7 +337,7 @@ "font-size": 8, "font-family": "IM Fell English" }, - "#burgIcons > #cities": { + "#burgIcons > #city": { "opacity": 1, "fill": "#ffffff", "fill-opacity": 0.7, @@ -347,14 +347,14 @@ "stroke-dasharray": "0.5 0.25", "stroke-linecap": "butt" }, - "#anchors > #cities": { + "#anchors > #city": { "opacity": 1, "fill": "#ffffff", "size": 5.5, "stroke": "#3e3e4b", "stroke-width": 1.2 }, - "#burgLabels > #towns": { + "#burgLabels > #town": { "opacity": 1, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", @@ -363,7 +363,7 @@ "font-size": 4, "font-family": "IM Fell English" }, - "#burgIcons > #towns": { + "#burgIcons > #town": { "opacity": 1, "fill": "#ffffff", "fill-opacity": 0.7, @@ -373,7 +373,7 @@ "stroke-dasharray": "", "stroke-linecap": "butt" }, - "#anchors > #towns": { + "#anchors > #town": { "opacity": 1, "fill": "#ffffff", "size": 2.2, diff --git a/styles/monochrome.json b/styles/monochrome.json index b320313c..641bcb8d 100644 --- a/styles/monochrome.json +++ b/styles/monochrome.json @@ -324,7 +324,7 @@ "data-columns": 8 }, "#legendBox": {}, - "#burgLabels > #cities": { + "#burgLabels > #city": { "opacity": 1, "fill": "#000000", "style": "text-shadow: white 0px 0px 4px", @@ -333,7 +333,7 @@ "font-size": 7, "font-family": "Courier New" }, - "#burgIcons > #cities": { + "#burgIcons > #city": { "opacity": 1, "fill": "#ffffff", "fill-opacity": 0.7, @@ -343,14 +343,14 @@ "stroke-dasharray": "", "stroke-linecap": "butt" }, - "#anchors > #cities": { + "#anchors > #city": { "opacity": 1, "fill": "#ffffff", "size": 2, "stroke": "#3e3e4b", "stroke-width": 1.2 }, - "#burgLabels > #towns": { + "#burgLabels > #town": { "opacity": 1, "fill": "#000000", "style": "text-shadow: white 0px 0px 4px", @@ -359,7 +359,7 @@ "font-size": 4, "font-family": "Courier New" }, - "#burgIcons > #towns": { + "#burgIcons > #town": { "opacity": 1, "fill": "#ffffff", "fill-opacity": 0.7, @@ -369,7 +369,7 @@ "stroke-dasharray": "", "stroke-linecap": "butt" }, - "#anchors > #towns": { + "#anchors > #town": { "opacity": 1, "fill": "#ffffff", "size": 1, diff --git a/styles/night.json b/styles/night.json index b3e23fab..9f31b6b4 100644 --- a/styles/night.json +++ b/styles/night.json @@ -328,7 +328,7 @@ "data-y": 99.37, "data-columns": null }, - "#burgLabels > #cities": { + "#burgLabels > #city": { "opacity": 1, "fill": "#dbdbe1", "style": "text-shadow: black 0px 0px 4px", @@ -337,7 +337,7 @@ "font-size": 8, "font-family": "Courier New" }, - "#burgIcons > #cities": { + "#burgIcons > #city": { "opacity": 1, "fill": "#ffffff", "fill-opacity": 0.7, @@ -347,14 +347,14 @@ "stroke-dasharray": "", "stroke-linecap": "butt" }, - "#anchors > #cities": { + "#anchors > #city": { "opacity": 1, "fill": "#ffffff", "size": 4.2, "stroke": "#000000", "stroke-width": 1.46 }, - "#burgLabels > #towns": { + "#burgLabels > #town": { "opacity": 1, "fill": "#ffffff", "style": "text-shadow: black 0px 0px 4px", @@ -363,7 +363,7 @@ "font-size": 4.28, "font-family": "Courier New" }, - "#burgIcons > #towns": { + "#burgIcons > #town": { "opacity": 1, "fill": "#ffffff", "fill-opacity": 0.7, @@ -373,7 +373,7 @@ "stroke-dasharray": "", "stroke-linecap": "butt" }, - "#anchors > #towns": { + "#anchors > #town": { "opacity": 1, "fill": "#ffffff", "size": 1.6, diff --git a/styles/pale.json b/styles/pale.json index b1b3c1a8..084eb43a 100644 --- a/styles/pale.json +++ b/styles/pale.json @@ -328,7 +328,7 @@ "data-y": 62.98, "data-columns": 8 }, - "#burgLabels > #cities": { + "#burgLabels > #city": { "opacity": 0.8, "fill": "#3a3a3a", "style": "text-shadow: white 0px 0px 4px", @@ -337,7 +337,7 @@ "font-size": 7, "font-family": "Arima Madurai" }, - "#burgIcons > #cities": { + "#burgIcons > #city": { "opacity": 1, "fill": "#ffffff", "fill-opacity": 0.7, @@ -347,14 +347,14 @@ "stroke-dasharray": "", "stroke-linecap": "butt" }, - "#anchors > #cities": { + "#anchors > #city": { "opacity": 1, "fill": "#ffffff", "size": 3, "stroke": "#3e3e4b", "stroke-width": 1.2 }, - "#burgLabels > #towns": { + "#burgLabels > #town": { "opacity": 0.8, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", @@ -363,7 +363,7 @@ "font-size": 4, "font-family": "Arima Madurai" }, - "#burgIcons > #towns": { + "#burgIcons > #town": { "opacity": 1, "fill": "#ffffff", "fill-opacity": 0.7, @@ -373,7 +373,7 @@ "stroke-dasharray": "", "stroke-linecap": "butt" }, - "#anchors > #towns": { + "#anchors > #town": { "opacity": 1, "fill": "#ffffff", "size": 1.2, diff --git a/styles/watercolor.json b/styles/watercolor.json index 32e542c8..9186eaab 100644 --- a/styles/watercolor.json +++ b/styles/watercolor.json @@ -328,7 +328,7 @@ "data-y": 93, "data-columns": 8 }, - "#burgLabels > #cities": { + "#burgLabels > #city": { "opacity": 1, "fill": "#043449", "style": "text-shadow: white 0px 0px 2px", @@ -337,7 +337,7 @@ "font-size": 5, "font-family": "Comfortaa" }, - "#burgIcons > #cities": { + "#burgIcons > #city": { "opacity": 1, "fill": "#ffffff", "fill-opacity": 0.7, @@ -347,14 +347,14 @@ "stroke-dasharray": "", "stroke-linecap": "butt" }, - "#anchors > #cities": { + "#anchors > #city": { "opacity": 1, "fill": "#ffffff", "size": 2, "stroke": "#3e3e4b", "stroke-width": 1.2 }, - "#burgLabels > #towns": { + "#burgLabels > #town": { "opacity": 1, "fill": "#3e3e4b", "style": "text-shadow: white 0px 0px 4px", @@ -363,7 +363,7 @@ "font-size": 3, "font-family": "Comfortaa" }, - "#burgIcons > #towns": { + "#burgIcons > #town": { "opacity": 1, "fill": "#ffffff", "fill-opacity": 0.7, @@ -373,7 +373,7 @@ "stroke-dasharray": "", "stroke-linecap": "butt" }, - "#anchors > #towns": { + "#anchors > #town": { "opacity": 1, "fill": "#ffffff", "size": 1,