From 0284b14a2ab5a2e2d8d2c99b570c5a9c8a8fbc5d Mon Sep 17 00:00:00 2001 From: DCoded <dcoded@live.com> Date: Mon, 27 Jul 2020 13:46:04 -0400 Subject: [PATCH] DOMified farmyard upgrades --- src/facilities/farmyard/farmyard.js | 137 ++++++++++++++++++++++++++++ src/facilities/farmyard/farmyard.tw | 51 +---------- 2 files changed, 138 insertions(+), 50 deletions(-) diff --git a/src/facilities/farmyard/farmyard.js b/src/facilities/farmyard/farmyard.js index dd33d6c64c7..787d3478c38 100644 --- a/src/facilities/farmyard/farmyard.js +++ b/src/facilities/farmyard/farmyard.js @@ -5,7 +5,144 @@ App.Facilities.Farmyard.clearAnimalsBought = function () { }; App.Facilities.Farmyard.upgrades = function () { + const frag = new DocumentFragment(), + + farmyardUpgrades = V.farmyardUpgrades, + + pumpCost = Math.trunc(5000 * V.upgradeMultiplierArcology), + fertilizerCost = Math.trunc(10000 * V.upgradeMultiplierArcology), + hydroponicsCost = Math.trunc(20000 * V.upgradeMultiplierArcology), + seedsCost = Math.trunc(25000 * V.upgradeMultiplierArcology), + machineryCost = Math.trunc(50000 * V.upgradeMultiplierArcology); + + if (!farmyardUpgrades.pump) { + const + desc = document.createElement("div"), + upgrade = document.createElement("div"), + note = document.createElement("span"); + + upgrade.classList.add("indent"); + note.classList.add("note"); + + upgrade.append(App.UI.DOM.passageLink("Upgrade the water pump", "Farmyard", () => { + cashX(forceNeg(pumpCost)); + farmyardUpgrades.pump = 1; + })); + + note.append(` Costs ${cashFormat(pumpCost)} and slightly decreases upkeep costs.`); + + desc.append(`${V.farmyardNameCaps} is currently using the basic water pump that it came with.`); + + upgrade.append(note); + frag.append(desc, upgrade); + } else { + const desc = document.createElement("div"); + + desc.append(`The water pump in ${V.farmyardName} is a more efficient model, slightly improving the amount of crops it produces.`); + + frag.append(desc); + + if (!farmyardUpgrades.fertilizer) { + const + upgrade = document.createElement("div"), + note = document.createElement("span"); + + upgrade.classList.add("indent"); + note.classList.add("note"); + + upgrade.append(App.UI.DOM.passageLink("Use a higher-quality fertilizer", "Farmyard", () => { + cashX(forceNeg(fertilizerCost)); + farmyardUpgrades.fertilizer = 1; + })); + note.append(` Costs ${cashFormat(fertilizerCost)} and moderately increases crop yield and slightly increases upkeep costs.`); + + upgrade.append(note); + frag.append(upgrade); + } else { + const desc = document.createElement("div"); + + desc.append(`${V.farmyardNameCaps} is using a higher-quality fertilizer, moderately increasing the amount of crops it produces and raising slightly raising upkeep costs.`); + + frag.append(desc); + + if (!farmyardUpgrades.hydroponics) { + const + upgrade = document.createElement("div"), + note = document.createElement("span"); + + upgrade.classList.add("indent"); + note.classList.add("note"); + + upgrade.append(App.UI.DOM.passageLink("Purchase an advanced hydroponics system", "Farmyard", () => { + cashX(forceNeg(hydroponicsCost)); + farmyardUpgrades.hydroponics = 1; + })); + note.append(` Costs ${cashFormat(hydroponicsCost)} and moderately decreases upkeep costs.`); + + upgrade.append(note); + frag.append(upgrade); + } else { + const desc = document.createElement("div"); + + desc.append(`${V.farmyardNameCaps} is outfitted with an advanced hydroponics system, reducing the amount of water your crops consume and thus moderately reducing upkeep costs.`); + + frag.append(desc); + + if (!farmyardUpgrades.seeds) { + const + upgrade = document.createElement("div"), + note = document.createElement("span"); + + upgrade.classList.add("indent"); + note.classList.add("note"); + + upgrade.append(App.UI.DOM.passageLink("Purchase genetically modified seeds", "Farmyard", () => { + cashX(forceNeg(seedsCost)); + farmyardUpgrades.seeds = 1; + })); + + note.append(` Costs ${cashFormat(seedsCost)} and moderately increases crop yield and slightly increases upkeep costs.`); + + upgrade.append(note); + frag.append(upgrade); + } else { + const desc = document.createElement("div"); + + desc.append(`${V.farmyardNameCaps} is using genetically modified seeds, significantly increasing the amount of crops it produces and moderately increasing upkeep costs.`); + + frag.append(desc); + + if (!farmyardUpgrades.machinery) { + const + upgrade = document.createElement("div"), + note = document.createElement("span"); + + upgrade.classList.add("indent"); + note.classList.add("note"); + + upgrade.append(App.UI.DOM.passageLink("Upgrade the machinery", "Farmyard", () => { + cashX(forceNeg(machineryCost)); + farmyardUpgrades.machinery = 1; + })); + + note.append(` Costs ${cashFormat(machineryCost)} and moderately increases crop yield and slightly increases upkeep costs.`); + + upgrade.append(note); + frag.append(upgrade); + } else { + const desc = document.createElement("div"); + + desc.append(`The machinery in ${V.farmyardName} has been upgraded, and is more efficient, significantly increasing crop yields and significantly decreasing upkeep costs.`); + + frag.append(desc); + } + } + } + } + } + + return frag; }; App.Facilities.Farmyard.animalHousing = function () { diff --git a/src/facilities/farmyard/farmyard.tw b/src/facilities/farmyard/farmyard.tw index 436ce5e8a08..b05f981da85 100644 --- a/src/facilities/farmyard/farmyard.tw +++ b/src/facilities/farmyard/farmyard.tw @@ -227,56 +227,7 @@ </span> <span id="upgrades"> -<<if $farmyardUpgrades.pump == 0>> - [[Upgrade the water pump|Farmyard][cashX(forceNeg(Math.trunc(5000*$upgradeMultiplierArcology)), "farmyard"), $farmyardUpgrades.pump = 1]] - <span class="note"> - Costs <<print cashFormat(Math.trunc(5000*$upgradeMultiplierArcology))>> and slightly increases crop yield. - </span> - <br> -<<else>> - The water pump in $farmyardName is a more efficient model, slightly improving the amount of crops $farmyardName produces. - <br> - <<if $farmyardUpgrades.fertilizer == 0>> - [[Use a higher-quality fertilizer|Farmyard][cashX(forceNeg(Math.trunc(10000*$upgradeMultiplierArcology)), "farmyard"), $farmyardUpgrades.fertilizer = 1]] - <span class="note"> - Costs <<print cashFormat(Math.trunc(10000*$upgradeMultiplierArcology))>> moderately increases crop yield and slightly increases upkeep costs. - </span> - <br> - <<else>> - $farmyardNameCaps is using a higher-quality fertilizer, moderately increasing the amount of crops it produces and raising slightly raising upkeep costs. - <br> - <<if $farmyardUpgrades.hydroponics == 0>> - [[Purchase a hydroponics system|Farmyard][cashX(forceNeg(Math.trunc(10000*$upgradeMultiplierArcology)), "farmyard"), $farmyardUpgrades.hydroponics = 1]] - <span class="note"> - Costs <<print cashFormat(Math.trunc(10000*$upgradeMultiplierArcology))>> and moderately decreases upkeep costs. - </span> - <br> - <<else>> - $farmyardNameCaps is outfitted with an advanced hydroponics system, reducing the amount of water your crops consume and thus moderately reducing upkeep costs. - <br> - <<if $farmyardUpgrades.seeds == 0>> - [[Purchase genetically modified seeds|Farmyard][cashX(forceNeg(Math.trunc(20000*$upgradeMultiplierArcology)), "farmyard"),$farmyardUpgrades.seeds = 1]] - <span class="note"> - Costs <<print cashFormat(Math.trunc(20000*$upgradeMultiplierArcology))>> and significantly increases crop yield and moderately increases upkeep costs. - </span> - <br> - <<else>> - $farmyardNameCaps is using genetically modified seeds, significantly increasing the amount of crops it produces and moderately increasing upkeep costs. - <br> - <<if $farmyardUpgrades.machinery == 0>> - [[Upgrade the machinery|Farmyard][cashX(forceNeg(Math.trunc(50000*$upgradeMultiplierArcology)), "farmyard"), $farmyardUpgrades.machinery = 1]] - <span class="note"> - Costs <<print cashFormat(Math.trunc(50000*$upgradeMultiplierArcology))>> significantly increases crop yield and significantly decreases upkeep costs. - </span> - <br> - <<else>> - The machinery in $farmyardName has been upgraded, and is more efficient, significantly increasing crop yields and significantly decreasing upkeep costs. - <br> - <</if>> - <</if>> - <</if>> - <</if>> -<</if>> +<<includeDOM App.Facilities.Farmyard.upgrades()>> <br> </span> -- GitLab