|
|
|
@@ -243,8 +243,11 @@ function renderResources() { |
|
|
|
return renderLines(list); |
|
|
|
} |
|
|
|
|
|
|
|
const buildingButtons = {} |
|
|
|
|
|
|
|
function displayBuildings() { |
|
|
|
const count = buildingCount(); |
|
|
|
|
|
|
|
for (const [key, value] of Object.entries(belongings)) { |
|
|
|
|
|
|
|
if (!belongings[key].visible) { |
|
|
|
@@ -256,23 +259,23 @@ function displayBuildings() { |
|
|
|
continue; |
|
|
|
} |
|
|
|
belongings[key].visible = true; |
|
|
|
document.querySelector("#building-" + key).classList.remove("hidden"); |
|
|
|
let button = buildingButtons[key].button; |
|
|
|
button.classList.remove("hidden"); |
|
|
|
} |
|
|
|
|
|
|
|
let button = document.querySelector("#building-" + key); |
|
|
|
|
|
|
|
let name = document.querySelector("#building-" + key + " > .building-button-name"); |
|
|
|
let cost = document.querySelector("#building-" + key + " > .building-button-cost"); |
|
|
|
let button = buildingButtons[key].button; |
|
|
|
let name = buildingButtons[key].name; |
|
|
|
let cost = buildingButtons[key].cost; |
|
|
|
|
|
|
|
const buildingCost = costOfBuilding(key, count); |
|
|
|
|
|
|
|
name.innerText = value.count + " " + (value.count == 1 ? buildings[key].name : buildings[key].plural); |
|
|
|
cost.innerText = render(buildingCost.food) + " food"; |
|
|
|
|
|
|
|
if (canAfford(buildingCost)) { |
|
|
|
if (canAfford(buildingCost) && button.classList.contains("building-button-disabled")) { |
|
|
|
button.classList.remove("building-button-disabled"); |
|
|
|
cost.classList.add("building-button-cost-valid"); |
|
|
|
} else { |
|
|
|
} else if (!canAfford(buildingCost) && !button.classList.contains("building-button-disabled")) { |
|
|
|
button.classList.add("building-button-disabled"); |
|
|
|
cost.classList.add("building-button-cost-invalid"); |
|
|
|
} |
|
|
|
@@ -417,10 +420,27 @@ function setup() { |
|
|
|
registerListeners(); |
|
|
|
load(); |
|
|
|
unlockAtStart(); |
|
|
|
initializeCaches(); |
|
|
|
updateAll(); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
function initializeCaches() { |
|
|
|
for (const [key, value] of Object.entries(belongings)) { |
|
|
|
|
|
|
|
let button = document.querySelector("#building-" + key); |
|
|
|
let name = document.querySelector("#building-" + key + " > .building-button-name"); |
|
|
|
let cost = document.querySelector("#building-" + key + " > .building-button-cost"); |
|
|
|
|
|
|
|
buildingButtons[key] = { |
|
|
|
button: button, |
|
|
|
name: name, |
|
|
|
cost: cost |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
function unlockAtStart() { |
|
|
|
unlockBuilding("micro"); |
|
|
|
|
|
|
|
|