From e656723700f8033b356bf1e7c62073c25fc90b67 Mon Sep 17 00:00:00 2001
From: lowercasedonkey <lowercasedonkey@gmail.com>
Date: Tue, 16 Feb 2021 03:16:47 -0500
Subject: [PATCH] fixes and polish

---
 src/data/backwardsCompatibility/datatypeCleanup.js | 10 +++++-----
 src/endWeek/economics/neighborsDevelopment.js      |  4 ++--
 src/futureSocieties/fsPassage.js                   |  2 +-
 src/npc/generate/generateNewSlaveJS.js             |  2 +-
 src/npc/generate/heroCreator.js                    |  4 ++--
 src/uncategorized/pRivalryCapture.js               |  2 +-
 6 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/src/data/backwardsCompatibility/datatypeCleanup.js b/src/data/backwardsCompatibility/datatypeCleanup.js
index 473f3ad1cbb..727b6941bbb 100644
--- a/src/data/backwardsCompatibility/datatypeCleanup.js
+++ b/src/data/backwardsCompatibility/datatypeCleanup.js
@@ -2422,12 +2422,12 @@ App.Update.neighborArcologyCheatDatatypeCleanup = function() {
 				}
 			}
 		}
-
-		if (arc.FSSupremacist !== "unset" && !setup.filterRaces.keys().includes(arc.FSSupremacistRace)) {
-			arc.FSSupremacistRace = setup.filterRaces.keys().random();
+		const raceArray = Array.from(setup.filterRaces.keys());
+		if (arc.FSSupremacist !== "unset" && !raceArray.includes(arc.FSSupremacistRace)) {
+			arc.FSSupremacistRace = raceArray.random();
 		}
-		if (arc.FSSubjugationist !== "unset" && !setup.filterRaces.keys().includes(arc.FSSubjugationistRace)) {
-			arc.FSSubjugationistRace = setup.filterRaces.keys().random();
+		if (arc.FSSubjugationist !== "unset" && !raceArray.includes(arc.FSSubjugationistRace)) {
+			arc.FSSubjugationistRace = raceArray.random();
 		}
 
 		arc.embargo = Number(arc.embargo) || 0;
diff --git a/src/endWeek/economics/neighborsDevelopment.js b/src/endWeek/economics/neighborsDevelopment.js
index fb2f0e2ea40..c119bd4ad16 100644
--- a/src/endWeek/economics/neighborsDevelopment.js
+++ b/src/endWeek/economics/neighborsDevelopment.js
@@ -2617,7 +2617,7 @@ App.EndWeek.neighborsDevelopment = function() {
 				}
 				switch (validFSes.random()) {
 					case "FSSubjugationist": {
-						const subjugationRace = setup.filterRaces.keys().random();
+						const subjugationRace = Array.from(setup.filterRaces.keys()).random();
 						if ((arc.FSSupremacist === "unset") || (subjugationRace !== arc.FSSupremacistRace)) {
 							r.push(`${desc} preoccupied by a racial animus towards ${subjugationRace} people, leading the arcology to <span class="yellow">adopt ${subjugationRace} Subjugation.</span>`);
 							arc.FSSubjugationist = 5;
@@ -2627,7 +2627,7 @@ App.EndWeek.neighborsDevelopment = function() {
 						break;
 					}
 					case "FSSupremacist": {
-						const supremacistRace = setup.filterRaces.keys().random();
+						const supremacistRace = Array.from(setup.filterRaces.keys()).random();
 						if ((arc.FSSubjugationist === "unset") || (supremacistRace !== arc.FSSubjugationistRace)) {
 							r.push(`${desc} preoccupied by belief in the superiority of the ${supremacistRace} race, leading the arcology to <span class="yellow">adopt ${supremacistRace} Supremacy.</span>`);
 							arc.FSSupremacist = 5;
diff --git a/src/futureSocieties/fsPassage.js b/src/futureSocieties/fsPassage.js
index 9714a8aa811..41151bfd0e3 100644
--- a/src/futureSocieties/fsPassage.js
+++ b/src/futureSocieties/fsPassage.js
@@ -387,7 +387,7 @@ App.UI.fsPassage = function() {
 				r.push(`Select race:`);
 				const select = document.createElement("select");
 				r.push(select);
-				for (const race of Array.from(setup.filterRaces.keys()).filter(race => race !== arc.FSSubjugationistRace)) { // Subjugation race cannot be superior, so remove
+				for (const race of Array.from(App.Data.misc.filterRaces.keys()).filter(race => race !== arc.FSSubjugationistRace)) { // Subjugation race cannot be superior, so remove
 					const choice = App.UI.DOM.appendNewElement("option", select, capFirstChar(race));
 					choice.value = race;
 					if (race === arc.FSSupremacistRace) {
diff --git a/src/npc/generate/generateNewSlaveJS.js b/src/npc/generate/generateNewSlaveJS.js
index 0e882b7b70e..1fa300b8ffc 100644
--- a/src/npc/generate/generateNewSlaveJS.js
+++ b/src/npc/generate/generateNewSlaveJS.js
@@ -45,7 +45,7 @@ globalThis.GenerateNewSlave = (function() {
 		x.mature = (mature === 0) ? 0 : 1;
 		x.nationality = nationality || 0;
 		x.race = race || 0;
-		if (x.race !== 0 && !(setup.filterRaces.keys().includes(x.race))) {
+		if (x.race !== 0 && !(Array.from(setup.filterRaces.keys()).includes(x.race))) {
 			console.log("Error, cannot find race: ", x.race);
 			x.race = 0;
 		}
diff --git a/src/npc/generate/heroCreator.js b/src/npc/generate/heroCreator.js
index 4490b755b75..2d7148c72e3 100644
--- a/src/npc/generate/heroCreator.js
+++ b/src/npc/generate/heroCreator.js
@@ -68,13 +68,13 @@ App.Utils.getHeroSlave = function(heroSlave) {
 	// Nationalities, races, surnames random fill
 	if (!heroSlave.nationality) {
 		// Check for a pre-set race and if the nationality fits, else regenerate
-		if (heroSlave.race && setup.filterRaces.keys().includes(heroSlave.race)) {
+		if (heroSlave.race && Array.from(setup.filterRaces.keys()).includes(heroSlave.race)) {
 			raceToNationality(heroSlave);
 		} else {
 			heroSlave.nationality = hashChoice(V.nationalities);
 		}
 	}
-	if (!heroSlave.race || !setup.filterRaces.keys().includes(heroSlave.race)) {
+	if (!heroSlave.race || !Array.from(setup.filterRaces.keys()).includes(heroSlave.race)) {
 		nationalityToRace(heroSlave);
 	}
 	if (!heroSlave.birthSurname && heroSlave.birthSurname !== "") {
diff --git a/src/uncategorized/pRivalryCapture.js b/src/uncategorized/pRivalryCapture.js
index 6c9517c406f..5e6ea55c4de 100644
--- a/src/uncategorized/pRivalryCapture.js
+++ b/src/uncategorized/pRivalryCapture.js
@@ -103,7 +103,7 @@ globalThis.pRivalryCapture = function() {
 		}
 		rivalType = rivalTypeArray.random();
 
-		if (setup.filterRaces.keys().includes(V.rivalRace)) {
+		if (Array.from(setup.filterRaces.keys()).includes(V.rivalRace)) {
 			race = V.rivalRace;
 		}
 		switch (rivalType) {
-- 
GitLab