From 89f2d41f3e6703fb78fafd54ff99c4c6869d17a2 Mon Sep 17 00:00:00 2001
From: Svornost <11434-svornost@users.noreply.gitgud.io>
Date: Sun, 30 Aug 2020 16:11:34 -0700
Subject: [PATCH] More scope reduction to make walkPast easier to reason about

---
 src/interaction/main/walkPast.js | 25 ++++++++-----------------
 1 file changed, 8 insertions(+), 17 deletions(-)

diff --git a/src/interaction/main/walkPast.js b/src/interaction/main/walkPast.js
index 266f126d19c..a4b763014f2 100644
--- a/src/interaction/main/walkPast.js
+++ b/src/interaction/main/walkPast.js
@@ -1,20 +1,11 @@
 globalThis.walkPast = (function() {
 	// core string variables
 	let t;
-	let output;
 
 	// selection variables
 	let target;
 	let partner;
 
-	// rng variables
-	let seed;
-	let fuckSeed;
-
-	// activeSlave variables
-	let name;
-	let race;
-
 	// partnerSlave variables
 	let partnerSlave;
 	let partnerName;
@@ -25,9 +16,7 @@ globalThis.walkPast = (function() {
 	 * @returns {DocumentFragment} - vignette
 	 */
 	function walkPast(activeSlave, fixedTarget) {
-		output = "";
-		seed = jsRandom(1, 100);
-		name = activeSlave.slaveName;
+		let output = "";
 
 		let flag;
 		if (totalRelatives(activeSlave) > 0 && ((fixedTarget === "FRelation") || (!fixedTarget && jsRandom(1, 100) > 80))) {
@@ -49,6 +38,7 @@ globalThis.walkPast = (function() {
 			return;
 		}
 
+		const seed = jsRandom(1, 100);
 		output += primeSlave(activeSlave, seed);
 
 		if (partner === "rivalry") {
@@ -215,9 +205,10 @@ globalThis.walkPast = (function() {
 	function loverSlave(activeSlave) {
 		t = "";
 		partnerSlave = getSlave(activeSlave.relationshipTarget);
-		fuckSeed = jsRandom(1, 100);
-		seed = jsRandom(1, 100);
-		race = (V.seeRace ? activeSlave.race : "");
+		const fuckSeed = jsRandom(1, 100);
+		const seed = jsRandom(1, 100);
+		const name = activeSlave.name;
+		const race = (V.seeRace ? activeSlave.race : "");
 
 		const {
 			he, him, his, himself, boy,
@@ -1405,7 +1396,7 @@ globalThis.walkPast = (function() {
 
 	function relatedSlave(activeSlave) {
 		let r = "";
-		fuckSeed = jsRandom(1, 100);
+		const fuckSeed = jsRandom(1, 100);
 
 		const {
 			he, him, his, hers, himself, boy,
@@ -1442,7 +1433,7 @@ globalThis.walkPast = (function() {
 			He, His
 		} = getPronouns(slave);
 		t = "";
-		race = (V.seeRace ? slave.race : "");
+		const race = (V.seeRace ? slave.race : "");
 
 		switch (slave.assignment) {
 			case Job.AGENT:
-- 
GitLab