From c530060f10ea6f8a97e4b8fa2c7d35b1946c5b0f Mon Sep 17 00:00:00 2001
From: Svornost <11434-svornost@users.noreply.gitgud.io>
Date: Thu, 30 Jul 2020 03:05:03 -0700
Subject: [PATCH] Remove a bunch of uses of slave indices where they aren't
 needed anymore.

---
 .../DinnerParty/dinnerPartyPreparations.tw    |  4 ++--
 src/Mods/SecExp/attackHandler.tw              |  3 +--
 src/Mods/SecExp/attackReport.tw               | 15 +++++++--------
 src/interaction/main/mainLinks.js             |  8 ++++----
 src/js/utilsFC.js                             | 19 -------------------
 src/npc/interaction/FFuckdollAnal.tw          |  4 ----
 src/npc/interaction/FFuckdollImpreg.tw        |  4 ----
 src/npc/interaction/FFuckdollOral.tw          |  4 ----
 src/npc/interaction/FFuckdollVaginal.tw       |  4 ----
 src/npc/interaction/fAnus.tw                  |  4 ----
 src/npc/interaction/fAssistedSex.tw           |  7 -------
 src/npc/interaction/fBeg.tw                   |  7 -------
 src/npc/interaction/fBellyFuck.tw             |  7 -------
 src/npc/interaction/fBoobs.tw                 |  4 ----
 src/npc/interaction/fButt.tw                  |  4 ----
 src/npc/interaction/fDance.tw                 |  7 -------
 src/npc/interaction/fDick.tw                  |  4 ----
 src/npc/interaction/fLips.tw                  |  7 -------
 src/npc/interaction/fMaternitySwing.tw        |  7 -------
 src/npc/interaction/fPoolSex.tw               |  7 -------
 src/npc/interaction/fVagina.tw                |  7 -------
 src/uncategorized/RESS.tw                     |  4 ++--
 src/uncategorized/reHGReplacement.tw          |  3 +--
 src/uncategorized/reShowerPunishment.tw       | 11 ++++-------
 24 files changed, 21 insertions(+), 134 deletions(-)

diff --git a/src/Mods/DinnerParty/dinnerPartyPreparations.tw b/src/Mods/DinnerParty/dinnerPartyPreparations.tw
index 21d00fcdb15..33faa2cdb6e 100644
--- a/src/Mods/DinnerParty/dinnerPartyPreparations.tw
+++ b/src/Mods/DinnerParty/dinnerPartyPreparations.tw
@@ -33,9 +33,9 @@ __Select Your Meat:__
 		s => assignmentVisible(s) && s.fuckdoll === 0,
 		App.UI.SlaveList.SlaveInteract.stdInteract,
 		null,
-		(s, i) => {
+		(s) => {
 			const p = getPronouns(s);
 			return App.UI.DOM.passageLink(`Make ${p.him} the main course`, "Dinner Party Execution",
-				() => { App.Utils.setActiveSlaveByIndex(i); })
+				() => { $activeSlave = s; })
 		}
 	)>>
diff --git a/src/Mods/SecExp/attackHandler.tw b/src/Mods/SecExp/attackHandler.tw
index b51aaa35b90..ecd96fb5a47 100644
--- a/src/Mods/SecExp/attackHandler.tw
+++ b/src/Mods/SecExp/attackHandler.tw
@@ -427,8 +427,7 @@
 		/* 60% chance of getting combat skill if not already have it */
 		<<if _S.HeadGirl.skill.combat == 0 && random(1,100) <= 60>>
 			<<set $gainedCombat = 1>>
-			<<set _i = $slaveIndices[$HeadGirlID]>>
-			<<set $slaves[_i].skill.combat = 1>>
+			<<set _S.HeadGirl.skill.combat = 1>>
 		<</if>>
 	<<elseif $leadingTroops == "citizen">>
 		<<if $arcologies[0].FSDegradationist == "unset" && $arcologies[0].FSPaternalist == "unset">>
diff --git a/src/Mods/SecExp/attackReport.tw b/src/Mods/SecExp/attackReport.tw
index 7b2998f583d..9d7c3568b09 100644
--- a/src/Mods/SecExp/attackReport.tw
+++ b/src/Mods/SecExp/attackReport.tw
@@ -1107,14 +1107,13 @@
 					<<set _found = 1>>
 					<<if $slaveVictories[_i].victories >= 10>>
 						<<if _S.HeadGirl.prestige < 3>>
-							<<set _j = $slaveIndices[$HeadGirlID]>>
-							<<set $slaves[_j].prestige++>>
-							<<if $slaves[_j].prestige == 1>>
-								<<set $slaves[_j].prestigeDesc = "$He is well known for being a great commander.">>
-							<<elseif $slaves[_j].prestige == 2>>
-								<<set $slaves[_j].prestigeDesc = "$He is famous for being an incredible commander.">>
-							<<elseif $slaves[_j].prestige == 3>>
-								<<set $slaves[_j].prestigeDesc = "$He is known as a legendary commander all over the world.">>
+							<<set _S.HeadGirl.prestige++>>
+							<<if _S.HeadGirl.prestige == 1>>
+								<<set _S.HeadGirl.prestigeDesc = "$He is well known for being a great commander.">>
+							<<elseif _S.HeadGirl.prestige == 2>>
+								<<set _S.HeadGirl.prestigeDesc = "$He is famous for being an incredible commander.">>
+							<<elseif _S.HeadGirl.prestige == 3>>
+								<<set _S.HeadGirl.prestigeDesc = "$He is known as a legendary commander all over the world.">>
 							<</if>>
 							<<set $slaveVictories[_i].victories = 0>>
 							$He brought your army to victory so many times that $his @@.green;prestige has increased.@@
diff --git a/src/interaction/main/mainLinks.js b/src/interaction/main/mainLinks.js
index 44ea3bca163..ce44b3ac496 100644
--- a/src/interaction/main/mainLinks.js
+++ b/src/interaction/main/mainLinks.js
@@ -90,7 +90,7 @@ App.UI.View.mainLinks = function() {
 
 	if (V.useSlaveSummaryOverviewTab === 0) {
 		let div = document.createElement("div");
-		if (typeof V.slaveIndices[V.HeadGirlID] !== 'undefined') {
+		if (S.HeadGirl) {
 			div.append(App.UI.DOM.makeElement("span", SlaveFullName(S.HeadGirl), "slave-name"), " is serving as your Head Girl");
 			if (V.arcologies[0].FSEgyptianRevivalistLaw === 1) {
 				div.append(` and Consort`);
@@ -174,13 +174,13 @@ App.UI.View.mainLinks = function() {
 
 	if (V.adjustProstheticsCompleted > 0) {
 		for (let j = 0; j < V.adjustProsthetics.length; j++) {
-			if (getSlave(V.adjustProsthetics[j].slaveID) !== undefined) {
-				const i = V.slaveIndices[V.adjustProsthetics[j].slaveID];
+			const slave = getSlave(V.adjustProsthetics[j].slaveID);
+			if (slave) {
 				if (V.adjustProsthetics[j].workLeft <= 0) {
 					const div = document.createElement("div");
 					div.classList.add("yellow");
 					div.append(`The lab has completed ${addA(setup.prosthetics[V.adjustProsthetics[j].id].name)} for `,
-						App.UI.DOM.makeElement("span", App.UI.DOM.link(SlaveFullName(V.slaves[i]), () => { V.activeSlave = V.slaves[i]; }, [], "Slave Interact"), "clear-formatting"),
+						App.UI.DOM.makeElement("span", App.UI.DOM.link(SlaveFullName(slave), () => { V.activeSlave = slave; }, [], "Slave Interact"), "clear-formatting"),
 						" which is ready to be attached.");
 					fragment.append(div);
 				}
diff --git a/src/js/utilsFC.js b/src/js/utilsFC.js
index 6953e0af1df..0bc9f329be1 100644
--- a/src/js/utilsFC.js
+++ b/src/js/utilsFC.js
@@ -2689,25 +2689,6 @@ globalThis.nippleColorLevel = function(color) {
 	return nippleColor[color];
 };
 
-/**
- * Expression for SugarCube for referencing a slave by index
- * @param {number} i slave array index or -1 for activeSlave
- * @returns {string}
- */
-App.Utils.slaveRefString = function(i) {
-	return i >= 0 ? `$slaves[${i}]` : '$activeSlave';
-};
-
-/**
- * Sets active slave to the slave with the given index. Does nothing if index < 0
- * @param {number} index
- */
-App.Utils.setActiveSlaveByIndex = function(index) {
-	if (index >= 0) {
-		V.activeSlave = V.slaves[index];
-	}
-};
-
 /**
  * Sets temporary variables named by the scheme, described below, to pronouns for the given slave
  * @param {App.Entity.SlaveState} slave
diff --git a/src/npc/interaction/FFuckdollAnal.tw b/src/npc/interaction/FFuckdollAnal.tw
index 1eb3cb0e90e..f06e4b2967a 100644
--- a/src/npc/interaction/FFuckdollAnal.tw
+++ b/src/npc/interaction/FFuckdollAnal.tw
@@ -49,7 +49,3 @@ You climax<<if $PC.dick != 0>>, filling $his rectum with your cum,<</if>> and re
 	In any case, <span class="virginity loss">$his rear hole has been broken in.</span>
 	<<set getSlave($AS).anus = 1>>
 <</if>>
-
-<<if passage() != "Slave Interact">>
-	<<set $slaves[$slaveIndices[getSlave($AS).ID]] = getSlave($AS)>>
-<</if>>
diff --git a/src/npc/interaction/FFuckdollImpreg.tw b/src/npc/interaction/FFuckdollImpreg.tw
index 00db19147b0..64745f102e4 100644
--- a/src/npc/interaction/FFuckdollImpreg.tw
+++ b/src/npc/interaction/FFuckdollImpreg.tw
@@ -85,7 +85,3 @@ You repeat this ritual throughout the week, ensuring that $he will be an @@.preg
 		<<set $failedElite += 5>>
 	<</if>>
 <</if>>
-
-<<if passage() != "Slave Interact">>
-	<<set $slaves[$slaveIndices[getSlave($AS).ID]] = getSlave($AS)>>
-<</if>>
diff --git a/src/npc/interaction/FFuckdollOral.tw b/src/npc/interaction/FFuckdollOral.tw
index 66cfc24ef2f..b1f425c1a1d 100644
--- a/src/npc/interaction/FFuckdollOral.tw
+++ b/src/npc/interaction/FFuckdollOral.tw
@@ -30,7 +30,3 @@ You climax, <<if $PC.dick != 0>>blowing your load down $his throat<<else>>giving
 	<<else>>$He swallows repeatedly as $he returns to $his resting posture.
 	<</if>>
 <</if>>
-
-<<if passage() != "Slave Interact">>
-	<<set $slaves[$slaveIndices[getSlave($AS).ID]] = getSlave($AS)>>
-<</if>>
diff --git a/src/npc/interaction/FFuckdollVaginal.tw b/src/npc/interaction/FFuckdollVaginal.tw
index 77f62d82afb..1daa848d979 100644
--- a/src/npc/interaction/FFuckdollVaginal.tw
+++ b/src/npc/interaction/FFuckdollVaginal.tw
@@ -49,7 +49,3 @@ You climax<<if $PC.dick != 0>>, your cum shooting forward to splash against $his
 	In any case, @@.lime;$his front hole has been broken in.@@
 	<<set getSlave($AS).vagina = 1>>
 <</if>>
-
-<<if passage() != "Slave Interact">>
-	<<set $slaves[$slaveIndices[getSlave($AS).ID]] = getSlave($AS)>>
-<</if>>
diff --git a/src/npc/interaction/fAnus.tw b/src/npc/interaction/fAnus.tw
index a22547fa646..90ee11ac4bf 100644
--- a/src/npc/interaction/fAnus.tw
+++ b/src/npc/interaction/fAnus.tw
@@ -246,7 +246,3 @@ You call $him over so you can
 		<</if>>
 	<</if>>
 <</if>>
-
-<<if passage() != "Slave Interact">>
-	<<set $slaves[$slaveIndices[getSlave($AS).ID]] = getSlave($AS)>>
-<</if>>
diff --git a/src/npc/interaction/fAssistedSex.tw b/src/npc/interaction/fAssistedSex.tw
index e809d033e2b..8efdc030ed4 100644
--- a/src/npc/interaction/fAssistedSex.tw
+++ b/src/npc/interaction/fAssistedSex.tw
@@ -96,10 +96,3 @@ $he draws toward you, half-floating on a river of silent, groping hands. When $h
 	<<set getSlave($AS).counter.oral++, $oralTotal++>>
 <</if>>
 Once you are satisfied, you send $him away to clean $himself up before returning to $his duties.
-
-<<if passage() != "Slave Interact">>
-	<<set _fv = $slaveIndices[getSlave($AS).ID]>>
-	<<if def _fv>>
-		<<set $slaves[_fv] = getSlave($AS)>>
-	<</if>>
-<</if>>
diff --git a/src/npc/interaction/fBeg.tw b/src/npc/interaction/fBeg.tw
index a1f94f2c215..0cd9fdb5718 100644
--- a/src/npc/interaction/fBeg.tw
+++ b/src/npc/interaction/fBeg.tw
@@ -438,10 +438,3 @@ You give $him permission to speak, and tell $him that $he may beg $his <<= Writt
 		<<set getSlave($AS).fetish = "submissive", getSlave($AS).fetishKnown = 1>>
 	<</if>>
 <</if>>
-
-<<if passage() != "Slave Interact">>
-	<<set _fl = $slaveIndices[getSlave($AS).ID]>>
-	<<if def _fl>>
-		<<set $slaves[_fl] = getSlave($AS)>>
-	<</if>>
-<</if>>
\ No newline at end of file
diff --git a/src/npc/interaction/fBellyFuck.tw b/src/npc/interaction/fBellyFuck.tw
index ee82cebde74..3ad1ee54278 100644
--- a/src/npc/interaction/fBellyFuck.tw
+++ b/src/npc/interaction/fBellyFuck.tw
@@ -89,10 +89,3 @@ and then spread $his cheeks for easier access to $his <<if canDoVaginal(getSlave
 <<else>>
 	that you've left $him thoroughly exhausted.
 <</if>>
-
-<<if passage() != "Slave Interact">>
-	<<set _fv = $slaveIndices[getSlave($AS).ID]>>
-	<<if def _fv>>
-		<<set $slaves[_fv] = getSlave($AS)>>
-	<</if>>
-<</if>>
diff --git a/src/npc/interaction/fBoobs.tw b/src/npc/interaction/fBoobs.tw
index 037516b5a96..90e91f2a8a0 100644
--- a/src/npc/interaction/fBoobs.tw
+++ b/src/npc/interaction/fBoobs.tw
@@ -240,7 +240,3 @@ tits.
 		$He hurries off to wash $his <<if getSlave($AS).boobs > 1500>>acre of cleavage<<elseif getSlave($AS).boobs > 500>>generous cleavage<<else>>chest<</if>> so that you will be unguarded for as little time as possible.
 	<</switch>>
 <</if>>
-
-<<if passage() !== "Slave Interact">>
-	<<set $slaves[$slaveIndices[getSlave($AS).ID]] = getSlave($AS)>>
-<</if>>
diff --git a/src/npc/interaction/fButt.tw b/src/npc/interaction/fButt.tw
index 72ca222ef02..7d3402ad685 100644
--- a/src/npc/interaction/fButt.tw
+++ b/src/npc/interaction/fButt.tw
@@ -244,7 +244,3 @@ You call $him over so you can
 <</if>>
 
 <</if>>
-
-<<if passage() !== "Slave Interact">>
-	<<set $slaves[$slaveIndices[getSlave($AS).ID]] = getSlave($AS)>>
-<</if>>
diff --git a/src/npc/interaction/fDance.tw b/src/npc/interaction/fDance.tw
index c094f11af1b..d53bee36474 100644
--- a/src/npc/interaction/fDance.tw
+++ b/src/npc/interaction/fDance.tw
@@ -1638,10 +1638,3 @@ Once the last piece of clothing has hit the floor you let your little slut dance
 		<<set getSlave($AS).fetish = "humiliation", getSlave($AS).fetishKnown = 1>>
 	<</if>>
 <</if>>
-
-<<if passage() != "Slave Interact">>
-	<<set _fl = $slaveIndices[getSlave($AS).ID]>>
-	<<if def _fl>>
-		<<set $slaves[_fl] = getSlave($AS)>>
-	<</if>>
-<</if>>
diff --git a/src/npc/interaction/fDick.tw b/src/npc/interaction/fDick.tw
index 9842daff7b6..0ff958866d2 100644
--- a/src/npc/interaction/fDick.tw
+++ b/src/npc/interaction/fDick.tw
@@ -266,7 +266,3 @@
 	Rumors spread that you @@.red;enjoy taking it from slaves.@@
 	<<set $PC.degeneracy += 2>>
 <</if>>
-
-<<if passage() !== "Slave Interact">>
-	<<set $slaves[$slaveIndices[getSlave($AS).ID]] = getSlave($AS)>>
-<</if>>
diff --git a/src/npc/interaction/fLips.tw b/src/npc/interaction/fLips.tw
index 907be5732da..36b55dd9ecc 100644
--- a/src/npc/interaction/fLips.tw
+++ b/src/npc/interaction/fLips.tw
@@ -219,10 +219,3 @@ You tell <<= getSlave($AS).slaveName>> to
 		<<set getSlave($AS).fetish = "cumslut", getSlave($AS).fetishKnown = 1>>
 	<</if>>
 <</if>>
-
-<<if passage() != "Slave Interact">>
-	<<set _fl = $slaveIndices[getSlave($AS).ID]>>
-	<<if def _fl>>
-		<<set $slaves[_fl] = getSlave($AS)>>
-	<</if>>
-<</if>>
diff --git a/src/npc/interaction/fMaternitySwing.tw b/src/npc/interaction/fMaternitySwing.tw
index 2d3a9eeceab..dedbfd38433 100644
--- a/src/npc/interaction/fMaternitySwing.tw
+++ b/src/npc/interaction/fMaternitySwing.tw
@@ -52,10 +52,3 @@ The sight of $his swollen body wobbling in mid-air as you pound away at $him nev
 	and the sight of $his ugly tears rolling down $his face to hit the ground far below is one hell of a bonus.
 <</if>>
 Once finished, you release $him from $his restraints and have $him carried away to clean $himself up before returning to $his duties.
-
-<<if passage() != "Slave Interact">>
-	<<set _fv = $slaveIndices[getSlave($AS).ID]>>
-	<<if def _fv>>
-		<<set $slaves[_fv] = getSlave($AS)>>
-	<</if>>
-<</if>>
diff --git a/src/npc/interaction/fPoolSex.tw b/src/npc/interaction/fPoolSex.tw
index baf3d3a14ea..600d22adf2d 100644
--- a/src/npc/interaction/fPoolSex.tw
+++ b/src/npc/interaction/fPoolSex.tw
@@ -169,10 +169,3 @@ You order $him to meet you in the spa for some quality time in the penthouse's r
 	<</if>>
 <</if>>
 After you've finished with $him, you escort $him to the spa's attached showers so that the two of you can enjoy a bit more time together as you clean off, then allow $him to return to $his duties as you return to your own.
-
-<<if passage() != "Slave Interact">>
-	<<set _fv = $slaveIndices[getSlave($AS).ID]>>
-	<<if def _fv>>
-		<<set $slaves[_fv] = getSlave($AS)>>
-	<</if>>
-<</if>>
diff --git a/src/npc/interaction/fVagina.tw b/src/npc/interaction/fVagina.tw
index 7386318b2a3..57efafa3085 100644
--- a/src/npc/interaction/fVagina.tw
+++ b/src/npc/interaction/fVagina.tw
@@ -553,10 +553,3 @@ You call $him over so you can
 		<</switch>>
 	<</if>>
 <</if>>
-
-<<if passage() != "Slave Interact">>
-	<<set _fv = $slaveIndices[getSlave($AS).ID]>>
-	<<if def _fv>>
-		<<set $slaves[_fv] = getSlave($AS)>>
-	<</if>>
-<</if>>
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index 2238562ec72..c4cc1d1cf35 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -8546,7 +8546,7 @@ brought in to you. This time <<= App.UI.slaveDescriptionDialog($activeSlave)>> h
 			_S.HeadGirl.slaveName understands the situation immediately. _He2 gets _himself2 and $activeSlave.slaveName dressed for a nice, non-sexual 'date' in $clubName, and leads $him out by the hand with a wink over _his2 shoulder to you. Your Head Girl understands just what kind of break from sexual servitude $activeSlave.slaveName really needs. They enjoy a nice meal, take a stroll and talk as friends, and get some inconsequential but relaxing beauty treatments together. They both @@.hotpink;enjoy the relaxation,@@ and $activeSlave.slaveName @@.green;feels much better@@ after the rest, too.
 			<<set $activeSlave.devotion += 4>>
 			<<run cashX(forceNeg(500), "event", $activeSlave), improveCondition($activeSlave, 10)>>
-			<<set $slaves[$slaveIndices[$HeadGirlID]].devotion += 4>>
+			<<set _S.HeadGirl.devotion += 4>>
 		<</replace>>
 	<</link>> //This option will cost <<print cashFormat(500)>>//
 <</if>>
@@ -16512,7 +16512,7 @@ brought in to you. This time <<= App.UI.slaveDescriptionDialog($activeSlave)>> h
 			<<if canImpreg($activeSlave, _S.HeadGirl)>>
 				<<= knockMeUp($activeSlave, 5, 1, $HeadGirlID, 1)>>
 			<</if>>
-			<<set $slaves[$slaveIndices[$HeadGirlID]].devotion += 4>>
+			<<set _S.HeadGirl.devotion += 4>>
 			<<EventFetish $activeSlave "buttslut">>
 			<<EventFetish $activeSlave "submissive">>
 		<</replace>>
diff --git a/src/uncategorized/reHGReplacement.tw b/src/uncategorized/reHGReplacement.tw
index 82110986a5f..dc36a178107 100644
--- a/src/uncategorized/reHGReplacement.tw
+++ b/src/uncategorized/reHGReplacement.tw
@@ -61,8 +61,7 @@ When _S.HeadGirl.slaveName leaves, $he clears $his throat nervously. $He gathers
 			_S.HeadGirl.slaveName hops off the couch, gets down in front of _his2 victim, and shoves $his legs apart. $activeSlave.slaveName scrunches up $his face, expecting something agonizing to happen to $his <<if $activeSlave.dick == 0>>pussy, but _S.HeadGirl.slaveName shocks $him by starting to hungrily eat $him out.<<else>>cock, but _S.HeadGirl.slaveName shocks $him by giving $him a lush blowjob.<</if>> $activeSlave.slaveName clearly expects a trap, but _S.HeadGirl.slaveName's attentions slowly distract $him. When $he's on the very verge of orgasm, your Head Girl suddenly stops and <<if $activeSlave.dick == 0>>pinches the $girl's pussylips,<<else>>tugs the $girl's cock downward by its head,<</if>> not painfully, but hard enough to communicate threat. $activeSlave.slaveName, shocked out of $his pleasure, looks down at _him2. _S.HeadGirl.slaveName <<say>>s menacingly, "Bitch, if you orga<<s>>m, I'm going to fucking de<<s>>troy you." Then _he2 goes back to giving $activeSlave.slaveName oral. $activeSlave.slaveName begins to cry, realizing how comprehensively fucked $he is.
 			<br><br>
 			Eventually, $he climaxes. _S.HeadGirl.slaveName has a talented tongue. _S.HeadGirl.slaveName does not begrudge the slave $his pleasure, <<if $activeSlave.dick == 0>>tonguing $his clit all the way through $his orgasm.<<else>>industriously sucking $his cock until _he2's swallowed every last drop of cum.<</if>> _He2 stands up and seizes $activeSlave.slaveName by the ear, <<say>>ing, "And now, <<s>>lut, you are fucked." $activeSlave.slaveName's weeping stopped during $his climax, but now $he starts to @@.gold;sob with terror,@@ and $he cries harder as your Head Girl hauls $him out of your office by $his ear. _S.HeadGirl.slaveName @@.mediumaquamarine;waves cheerfully@@ to you as _he2 leaves with _his2 victim.
-			<<set $i = $slaveIndices[$HeadGirlID]>>
-			<<set $slaves[$i].trust += 4, $slaves[$i].counter.oral += 1>>
+			<<set _S.HeadGirl.trust += 4, _S.HeadGirl.counter.oral += 1>>
 			<<set $oralTotal += 1>>
 			<<set $activeSlave.trust -= 4, $activeSlave.counter.oral += 1>>
 			<<set $oralTotal += 1>>
diff --git a/src/uncategorized/reShowerPunishment.tw b/src/uncategorized/reShowerPunishment.tw
index cadb97b772d..8dfbfbc377f 100644
--- a/src/uncategorized/reShowerPunishment.tw
+++ b/src/uncategorized/reShowerPunishment.tw
@@ -63,9 +63,8 @@ $activeSlave.slaveName is being very thorough. When you first appeared, $he was
 	$activeSlave.slaveName stays in the shower to clean $himself, so _S.HeadGirl.slaveName exits to see you watching the denouement. _He2 @@.hotpink;smiles,@@ murmuring a greeting, and hurries over to give you a peck on the cheek, leaning in as best _he2 can to keep _his2 moist body away from your suit. "Thi<<s>> i<<s>> the life, <<Master>>," _he2 whispers.
 	<<set $activeSlave.counter.oral += 1>>
 	<<set $oralTotal += 1>>
-	<<set $i = $slaveIndices[$HeadGirlID]>>
-	<<set $slaves[$i].devotion += 4>>
-	<<set $slaves[$i].counter.penetrative += 1>>
+	<<set _S.HeadGirl.devotion += 4>>
+	<<set _S.HeadGirl.counter.penetrative += 1>>
 	<<set $penetrativeTotal += 1>>
 	<</replace>>
 <</link>>
@@ -85,8 +84,7 @@ $activeSlave.slaveName is being very thorough. When you first appeared, $he was
 	<<set $activeSlave.counter.oral += 1>>
 	<<set $oralTotal += 1>>
 	<<set $activeSlave.trust += 4>>
-	<<set $i = $slaveIndices[$HeadGirlID]>>
-	<<set $slaves[$i].counter.penetrative += 1>>
+	<<set _S.HeadGirl.counter.penetrative += 1>>
 	<<set $penetrativeTotal += 1>>
 	<</replace>>
 <</link>>
@@ -107,8 +105,7 @@ $activeSlave.slaveName is being very thorough. When you first appeared, $he was
 	<<set $activeSlave.counter.oral += 1>>
 	<<set $oralTotal += 1>>
 	<<set $activeSlave.devotion += 4>>
-	<<set $i = $slaveIndices[$HeadGirlID]>>
-	<<set $slaves[$i].counter.oral += 1>>
+	<<set _S.HeadGirl.counter.oral += 1>>
 	<<set $oralTotal += 1>>
 	<</replace>>
 <</link>>
-- 
GitLab