From 62a50a1b0bdec308e680b9d56cba1d9509c700b9 Mon Sep 17 00:00:00 2001
From: lowercasedonkey <lowercasedonkey@gmail.com>
Date: Sat, 29 Aug 2020 16:01:22 -0400
Subject: [PATCH] start

---
 src/markets/specialSlave.js | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/src/markets/specialSlave.js b/src/markets/specialSlave.js
index f3bc54bda6b..c211ea84cf3 100644
--- a/src/markets/specialSlave.js
+++ b/src/markets/specialSlave.js
@@ -75,6 +75,39 @@ App.Markets.specialSlave = function() {
 		}
 		App.UI.DOM.appendNewElement("p", el, App.UI.DOM.generateLinksStrip(linkArray));
 
+		if (V.cheatMode) {
+			let oneSlaveCost = (s) => { let cost = slaveCost(s); return cost + (10 * Math.trunc((cost / 10) * 2)); };
+			let allHeroSlaves = App.Utils.buildHeroArray().map((s) => { return {slave: App.Utils.getHeroSlave(s), cost: oneSlaveCost(s)}; });
+			let totalCost = allHeroSlaves.reduce((acc, s) => acc += s.cost, 0);
+
+			if (V.cash > totalCost) {
+				App.UI.DOM.appendNewElement(
+					"div",
+					el,
+					App.UI.DOM.link(
+						`Buy all of them for ${App.UI.DOM.cashFormat(totalCost)}`,
+						() => {
+							for (const hero of allHeroSlaves) {
+								cashX(forceNeg(hero.cost), "slaveTransfer", hero.slave);
+								newSlave(hero.slave);
+								V.heroSlavesPurchased.push(hero.slave.ID);
+								refresh();
+							}
+						}
+					)
+				);
+			} else {
+				App.UI.DOM.appendNewElement(
+					"div",
+					el,
+					App.UI.DOM.disabledLink(
+						`Buy all of them for ${App.UI.DOM.cashFormat(totalCost)}`,
+						[`Cannot afford`]
+					)
+				);
+			}
+		}
+
 		return el;
 
 		function refresh() {
-- 
GitLab