From df1ee1b5a3179ce24f2c7cbd30d2ba84c14481fe Mon Sep 17 00:00:00 2001 From: Azgaar Date: Tue, 4 May 2021 01:16:39 +0300 Subject: [PATCH] resources ("goods") layers --- main.js | 1 + modules/ui/layers.js | 29 +++++++++++++++++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/main.js b/main.js index 5a36c485..ff2d0d5e 100644 --- a/main.js +++ b/main.js @@ -78,6 +78,7 @@ let population = viewbox.append("g").attr("id", "population"); let goods = viewbox.append('g').attr('id', 'goods'); let emblems = viewbox.append("g").attr("id", "emblems").style("display", "none"); let goods = viewbox.append("g").attr("id", "goods"); +let emblems = viewbox.append("g").attr("id", "emblems").style("display", "none"); let labels = viewbox.append("g").attr("id", "labels"); let icons = viewbox.append("g").attr("id", "icons"); let burgIcons = icons.append("g").attr("id", "burgIcons"); diff --git a/modules/ui/layers.js b/modules/ui/layers.js index c9c2d5fd..2c5d40b3 100644 --- a/modules/ui/layers.js +++ b/modules/ui/layers.js @@ -1924,6 +1924,35 @@ function drawResources() { console.timeEnd('drawResources'); } +function toggleResources(event) { + if (!layerIsOn("toggleResources")) { + turnButtonOn("toggleResources"); + $('#goods').fadeIn(); + if (!goods.selectAll("*").size()) drawResources(); + if (event && isCtrlClick(event)) editStyle("goods"); + } else { + if (event && isCtrlClick(event)) {editStyle("goods"); return;} + $('#goods').fadeOut(); + turnButtonOff("toggleResources"); + } +} + +function drawResources() { + console.time("drawResources"); + let resourcesHTML = ""; + for (const i of pack.cells.i) { + if (!pack.cells.resource[i]) continue; + const resource = pack.resources.find(resource => resource.i === pack.cells.resource[i]); + const [x, y] = pack.cells.p[i]; + resourcesHTML += ` + + + `; + } + goods.html(resourcesHTML); + console.timeEnd("drawResources"); +} + function layerIsOn(el) { const buttonoff = document.getElementById(el).classList.contains("buttonoff"); return !buttonoff;