From ad9c623cbbd25d9d705effd19fa344aeabe5003b Mon Sep 17 00:00:00 2001
From: Arkerthan <arkerthan@gmail.com>
Date: Mon, 8 Apr 2019 17:15:48 +0200
Subject: [PATCH] cleaned eyes

---
 slave variables documentation - Pregmod.txt |  8 +++++-
 src/cheats/mod_EditChildCheatNew.tw         |  7 +++++-
 src/cheats/mod_EditSlaveCheat.tw            |  6 +++++
 src/cheats/mod_editSlaveCheatNew.tw         |  7 +++++-
 src/interaction/cyberConfig.tw              |  4 +--
 src/js/SlaveState.js                        |  7 +++++-
 src/js/descriptionWidgets.js                | 16 +++++++-----
 src/player/actions/fCaress.tw               |  8 +++++-
 src/player/actions/fEmbrace.tw              |  8 +++++-
 src/player/actions/fondleBoobs.tw           |  6 ++++-
 src/pregmod/organFarmOptions.tw             |  6 ++---
 src/pregmod/rePregInventor.tw               |  4 +--
 src/uncategorized/PESS.tw                   | 20 +++++++++++++--
 src/uncategorized/RETS.tw                   |  2 +-
 src/uncategorized/multiImplant.tw           |  6 ++---
 src/uncategorized/remoteSurgery.tw          | 27 +++++++++------------
 src/uncategorized/saLiveWithHG.tw           |  6 ++---
 src/uncategorized/salon.tw                  | 19 ++++++---------
 src/uncategorized/seExpiration.tw           |  8 +++++-
 src/utility/descriptionWidgetsStyle.tw      |  2 +-
 20 files changed, 118 insertions(+), 59 deletions(-)

diff --git a/slave variables documentation - Pregmod.txt b/slave variables documentation - Pregmod.txt
index 67a2ec59af2..f40bc25a7e2 100644
--- a/slave variables documentation - Pregmod.txt	
+++ b/slave variables documentation - Pregmod.txt	
@@ -1140,11 +1140,17 @@ accepts string
 eyes:
 
 slave eyesight
--3 - empty (no descriptions)
+-4 - empty
+-3 - glass eye
 -2 - blind
 -1 - nearsighted
  1 - normal
 
+eyesImplant:
+
+0 - normal eyes
+1 - artificial eyes
+
 origEye:
 
 slave's original eye color, defaults to their initial eye color.
diff --git a/src/cheats/mod_EditChildCheatNew.tw b/src/cheats/mod_EditChildCheatNew.tw
index 9c69178015b..bdd718b1ac6 100644
--- a/src/cheats/mod_EditChildCheatNew.tw
+++ b/src/cheats/mod_EditChildCheatNew.tw
@@ -1268,7 +1268,6 @@
 	<</link>>
 	<span id=ecol2></span>
 	<br>Custom eye color: <<textbox "$tempSlave.origEye" $tempSlave.origEye>>
-	<<radiobutton "$tempSlave.origEye" "implant">> Artificial Eyes
 	<br><br>
 	''$His pupils are @@.yellow;$tempSlave.pupil@@ in shape''
 	<<link "Pupil Shape">>
@@ -1339,6 +1338,12 @@
 	<<radiobutton "$tempSlave.eyes" -1>> Nearsighted
 	<<radiobutton "$tempSlave.eyes" -2>> Blind
 	<br>
+	''$He has ''
+	<<if $tempSlave.eyesImplant == 0>>normal<<else>>artificial<</if>>eyes.
+	<br>
+	<<radiobutton "tempSlave.eyesImplant" 0>> Normal
+	<<radiobutton "tempSlave.eyesImplant" 1>> Artificial
+	<br>
 <</widget>>
 
 <<widget MouthTab>>
diff --git a/src/cheats/mod_EditSlaveCheat.tw b/src/cheats/mod_EditSlaveCheat.tw
index 4eba9799624..b49b999ede3 100644
--- a/src/cheats/mod_EditSlaveCheat.tw
+++ b/src/cheats/mod_EditSlaveCheat.tw
@@ -330,6 +330,12 @@ Custom sclera color: <<textbox "$tempSlave.sclerae" $tempSlave.sclerae>>
 <<radiobutton "$tempSlave.eyes" -2>> Blind
 <</if>>
 
+<br>
+''$His eyes are (0: normal, 1: artificial): $tempSlave.eyesImplant''
+<br>Eyes: <<textbox "$tempSlave.eyesImplant" $tempSlave.eyesImplant>>
+<<radiobutton "$tempSlave.eyesImplant" 0>> Normal
+<<radiobutton "$tempSlave.eyesImplant" 0>> Artificial
+
 <br><br>
 
 ''$His hearing is (-1: impaired, 0: normal): $tempSlave.hears''
diff --git a/src/cheats/mod_editSlaveCheatNew.tw b/src/cheats/mod_editSlaveCheatNew.tw
index 6a463e407ff..a0993582224 100644
--- a/src/cheats/mod_editSlaveCheatNew.tw
+++ b/src/cheats/mod_editSlaveCheatNew.tw
@@ -1892,7 +1892,6 @@
 	<</link>>
 	<span id=ecol2></span>
 	<br>Custom eye color: <<textbox "$tempSlave.origEye" $tempSlave.origEye>>
-	<<radiobutton "$tempSlave.origEye" "implant">> Artificial Eyes
 	<br><br>
 	''$His pupils are @@.yellow;$tempSlave.pupil@@ in shape''
 	<<link "Pupil Shape">>
@@ -1963,6 +1962,12 @@
 	<<radiobutton "$tempSlave.eyes" -1>> Nearsighted
 	<<radiobutton "$tempSlave.eyes" -2>> Blind
 	<br>
+	''$He has ''
+	<<if $tempSlave.eyesImplant == 0>>normal<<else>>artificial<</if>>eyes.
+	<br>
+	<<radiobutton "tempSlave.eyesImplant" 0>> Normal
+	<<radiobutton "tempSlave.eyesImplant" 1>> Artificial
+	<br>
 <</widget>>
 
 <<widget MouthTab>>
diff --git a/src/interaction/cyberConfig.tw b/src/interaction/cyberConfig.tw
index 49ee44e440d..c7adf2f9b97 100644
--- a/src/interaction/cyberConfig.tw
+++ b/src/interaction/cyberConfig.tw
@@ -11,7 +11,7 @@
 			Your slave $activeSlave.slaveName is lying on the table, waiting for your instructions.
 		<</if>>
 
-	<<if $activeSlave.origEye == "implant">><br><br>&nbsp;
+	<<if $activeSlave.eyesImplant == 1>><br><br>&nbsp;
 		$He has an ocular implant installed.
 		<<if $activeSlave.eyes == 1>>
 			They are operating normally.
@@ -263,4 +263,4 @@
 	<<elseif $activeSlave.tail == "sex">>accidentally engages the vibrating and lube functions, startling $him and making quite a mess.
 	<<else>>admires $his new tail.
 	<</if>>
-<</switch>>
\ No newline at end of file
+<</switch>>
diff --git a/src/js/SlaveState.js b/src/js/SlaveState.js
index 777f38d0184..64dd0991ac2 100644
--- a/src/js/SlaveState.js
+++ b/src/js/SlaveState.js
@@ -480,12 +480,17 @@ App.Entity.SlaveState = class SlaveState {
 		this.markings = "none";
 		/**
 		 * slave eyesight
-		 * * -3: empty (no descriptions)
+		 * * -4: empty (no descriptions)
+		 * * -3: glass eye
 		 * * -2: blind
 		 * * -1: nearsighted
 		 * * 1: normal
 		 */
 		this.eyes = 1;
+		/** Slave has artificial eyes
+		 *
+		 * 0: no; 1: yes */
+		this.eyesImplant = 0;
 		/** eye color */
 		this.eyeColor = "brown";
 		/** slave's original eye color, defaults to their initial eye color. */
diff --git a/src/js/descriptionWidgets.js b/src/js/descriptionWidgets.js
index 9d2b99df523..12ce5c96cd8 100644
--- a/src/js/descriptionWidgets.js
+++ b/src/js/descriptionWidgets.js
@@ -18,9 +18,9 @@ App.Desc.eyes = function (slave) {
 	let His = capFirstChar(his);
 	/* eslint-enable */
 
-	if (slave.eyes === -2) {
+	if (slave.eyes <= -2) {
 		const HC = hasVisibleHeterochromia(slave) ? 1 : 0;
-		if (slave.eyeColor !== "empty") {
+		if (slave.eyes === -2) {
 			r += `${His} eyes are dull`;
 			if (V.saleDescription && V.PC.medicine >= 50 || V.PC.slaving >= 50) {
 				r += `, unfocused`;
@@ -34,10 +34,12 @@ App.Desc.eyes = function (slave) {
 				}
 				r += ` and unfocused`;
 			}
-			r += `, `;
-		} else {
-			r += `${His} gaze is empty. `;
+		} else if (slave.eyes === -3){
+			r += `${He} has ${slave.eyeColor} colored glass eyes`
+		} else
+			r += `${His} gaze is empty`;
 		}
+		r += `, `;
 		if (slave.intelligence > 95) {
 			r += `but ${his} facial expressions reveal ${he} is incisive, quick, cunning; `;
 			if (slave.intelligence + slave.intelligenceImplant >= 130) {
@@ -249,7 +251,9 @@ App.Desc.eyeColor = function (slave) {
 	"use strict";
 	let r;
 
-	if (hasVisibleHeterochromia(slave)) {
+	if (slave.eyes === -4){
+		r = 'empty'
+	}else if (hasVisibleHeterochromia(slave)) {
 		r = `heterochromatic ${slave.eyeColor} and ${slave.geneticQuirks.heterochromatia}`;
 	} else {
 		r = `${slave.eyeColor}`;
diff --git a/src/player/actions/fCaress.tw b/src/player/actions/fCaress.tw
index fd235fcc09e..aaca1987d63 100644
--- a/src/player/actions/fCaress.tw
+++ b/src/player/actions/fCaress.tw
@@ -26,7 +26,13 @@ You tell $activeSlave.slaveName to
 <<if ($activeSlave.fetish == "mindbroken") && ($activeSlave.relationship != -3)>>
 	$He complies mechanically. $He remembers that when <<= WrittenMaster()>>'s commands are not obeyed, there is punishment.
 <<elseif ($activeSlave.relationship == -2)>>
-	$He eagerly complies, happy to be near the object of $his longing. Once $he's close, you hold $his face in your palms and gaze deeply into $his <<= App.Desc.eyeColor($activeSlave)>> eyes. $He finds the intense look from the _womanP $he loves overwhelming, and $his eyes flick downward after a moment. $He blushes furiously.
+	$He eagerly complies, happy to be near the object of $his longing. Once $he's close, you hold $his face in your palms and gaze deeply
+	<<if canSee($activeSlave)>>
+		into $his <<= App.Desc.eyeColor($activeSlave)>> eyes. $He finds the intense look from the _womanP $he loves overwhelming, and $his eyes flick downward after a moment.
+	<<else>>
+		upon $his face. $He senses the intense look from the _womanP $he loves and finds it overwhelming, and after a moment glances away.
+	<</if>>
+	$He blushes furiously.
 <<elseif ($activeSlave.relationship == -3)>>
 	<<if $activeSlave.fetish == "mindbroken">>
 		$He complies mechanically. $He remembers that when <<= WrittenMaster()>>'s commands are not obeyed, there is punishment. Once $he's close, you hold $his face in your palms and look into $his blank <<= App.Desc.eyeColor($activeSlave)>> eyes. $He doesn't react.
diff --git a/src/player/actions/fEmbrace.tw b/src/player/actions/fEmbrace.tw
index d55fc5ea984..697a0c310d5 100644
--- a/src/player/actions/fEmbrace.tw
+++ b/src/player/actions/fEmbrace.tw
@@ -14,7 +14,13 @@ You tell $activeSlave.slaveName to
 <<if ($activeSlave.fetish == "mindbroken") && ($activeSlave.relationship != -3)>>
 	$He complies automatically. $He remembers that when <<= WrittenMaster()>>'s commands are not obeyed, there is punishment.
 <<elseif ($activeSlave.relationship == -2)>>
-	$He excitedly complies, happy to be near the object of $his longing. Once $he's close, you take $his completely relaxed head in your hands and gaze deeply into $his <<= App.Desc.eyeColor($activeSlave)>> eyes. $He finds the intense look from the _womanP $he loves overwhelming, and $his eyes flick downward after a moment. $He blushes furiously.
+	$He excitedly complies, happy to be near the object of $his longing. Once $he's close, you take $his completely relaxed head in your hands and gaze deeply
+	<<if canSee($activeSlave)>>
+		into $his <<= App.Desc.eyeColor($activeSlave)>> eyes. $He finds the intense look from the _womanP $he loves overwhelming, and $his eyes flick downward after a moment.
+	<<else>>
+		upon $his face. $He senses the intense look from the _womanP $he loves and finds it overwhelming, and after a moment glances away.
+	<</if>>
+	$He blushes furiously.
 <<elseif ($activeSlave.relationship == -3)>>
 	<<if $activeSlave.fetish == "mindbroken">>
 		$He complies mechanically. $He remembers that when <<= WrittenMaster()>>'s commands are not obeyed, there is punishment. Once $he's close, you hold $his face in your palms and look into $his blank <<= App.Desc.eyeColor($activeSlave)>> eyes. $He shows no reaction.
diff --git a/src/player/actions/fondleBoobs.tw b/src/player/actions/fondleBoobs.tw
index 8ad35fcef8e..2b82aeb92e1 100644
--- a/src/player/actions/fondleBoobs.tw
+++ b/src/player/actions/fondleBoobs.tw
@@ -158,7 +158,11 @@ You call $him over so you can fondle $his
 	<<else>>
 		"That wa<<s>> fun, <<Master>>," $he <<say>>s cheerfully.
 	<</if>>
-	$He looks at you with $his <<= App.Desc.eyeColor($activeSlave)>> eyes, smiling.
+	<<if canSee($activeSlave)>>
+		$He looks at you with $his <<= App.Desc.eyeColor($activeSlave)>> eyes, smiling.
+	<<else>>
+		$He smiles at you.
+	<</if>>
 <<elseif ($activeSlave.fetish == "submissive") && ($activeSlave.fetishStrength > 60) && ($activeSlave.fetishKnown == 1)>>
 	$He eagerly comes over to you, to stand between you and your desk. You lean over while $he submissively lies down upon it, face up, with $his breasts pointed to the air. You place your hands on $his
 	<<if ($activeSlave.boobs >= 20000)>>
diff --git a/src/pregmod/organFarmOptions.tw b/src/pregmod/organFarmOptions.tw
index 9c909c02391..3d97ddc48aa 100644
--- a/src/pregmod/organFarmOptions.tw
+++ b/src/pregmod/organFarmOptions.tw
@@ -1943,7 +1943,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 					<</link>>
 				<</if>>
 			<<case "eyes">>
-				<<if $activeSlave.eyes > -2 && $activeSlave.origEye != "implant">>
+				<<if $activeSlave.eyes > -2 && $activeSlave.eyesImplant == 0>>
 					<br>&nbsp;&nbsp;&nbsp;&nbsp;
 					ERROR: this slave has working eyes.
 					<<link "Discard" "Remote Surgery">>
@@ -1954,7 +1954,7 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 							@@.red;Organ not found for deletion!@@
 						<</if>>
 					<</link>>
-				<<elseif $activeSlave.origEye == "implant">>
+				<<elseif $activeSlave.eyesImplant == 1>>
 					<br>&nbsp;&nbsp;&nbsp;&nbsp;
 					<<link "Remove ocular implants and implant" "Surgery Degradation">>
 						<<run cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave)>>
@@ -1966,8 +1966,6 @@ The fabricator is ready to grow an organ for $him. Extract tissue to begin growi
 						<</if>>
 						<<set $stockpile.ocularImplant++>>
 						<<set $activeSlave.eyes = 1>>
-						<<set _oldEyes = $genePool.find(function(s) { return s.ID = $activeSlave.ID; })>>
-						<<set $activeSlave.origEye = _oldEyes.origEye>>
 						<<set $activeSlave.eyeColor = $activeSlave.origEye>>
 						<<set $activeSlave.health -= 20>>
 						<<if $organFarmUpgrade == 2>>
diff --git a/src/pregmod/rePregInventor.tw b/src/pregmod/rePregInventor.tw
index fe034c85a2c..85149afe6cb 100644
--- a/src/pregmod/rePregInventor.tw
+++ b/src/pregmod/rePregInventor.tw
@@ -121,7 +121,7 @@
 				<</if>>
 			<</if>>
 			<br><br>
-			<<if $activeSlave.origEye == "implant">>
+			<<if $activeSlave.eyesImplant == 1>>
 				$His pretty $activeSlave.eyeColor bionic eyes flash a shade cooler than normal and you can tell $he's struggling to accept your decision.
 			<<else>>
 				You can see tears brimming in $his <<= App.Desc.eyeColor($activeSlave)>> eyes.
@@ -689,7 +689,7 @@
 		<</if>>
 		<br><br>
 		Your arousal gives you an idea, and you push back on your hyperbroodmother's colossal belly. $He steps away from you until $he is in the center of the pool, a look of confusion on $his face. You take control of the remote and then manipulate the reticulating frame supporting the pool such that it lifts the floor, slowly rendering both you and your colossal-bellied breeder knee deep in the warm gel. You hunker down into an aggressive, combative stance and
-		<<if $activeSlave.origEye == "implant">>
+		<<if $activeSlave.eyesImplant == 1>>
 			$his synthetic eyes flash white for a moment as a look of understanding dawns on $his face.
 		<<else>>
 			a look of understanding lights up in $his eyes.
diff --git a/src/uncategorized/PESS.tw b/src/uncategorized/PESS.tw
index 21b56edcb42..43993f9163e 100644
--- a/src/uncategorized/PESS.tw
+++ b/src/uncategorized/PESS.tw
@@ -376,10 +376,26 @@ $He sees you examining at $him, and looks back at you submissively, too tired to
 	<<run repX(500, "event", $activeSlave)>>
 	<</replace>>
 <</link>>
-<br><<link "It can wait until after some lovemaking with the Concubine">>
+<br>
+<<link "It can wait until after some lovemaking with the Concubine">>
 	<<EventNameDelink $activeSlave>>
 	<<replace "#result">>
-	When you enter your suite, the dim light reveals $activeSlave.slaveName waiting with $his beautiful body laid across the bed. When $he <<if canSee($activeSlave)>>sees<<else>>figures out<</if>> the kind of lovemaking you're in the mood for, $he spreads $his arms for you, smiling gently. $He kisses you lovingly, <<if !canTalk($activeSlave)>>taking your hand in $hers and drawing a heart on your palm with one finger.<<else>><<say>>ing, "<<Master>>, I love you."<</if>> <<if ($PC.vagina == 1)>>$He lies on $his side and raises one leg for you so you can straddle the other, sliding up to press your pussy against $his submissive groin. You grind against $him; the stimulation is so strong that $he writhes into the sheets, panting and whining.<<if $PC.dick == 1>> Your stiff dick, unused for once, slides deliciously between your warm bodies.<</if>><<else>><<if ($activeSlave.vagina > 0)>>$His pussy is warm and very wet, making penetration easy; $he gasps and arches $his back, clasping you between $his legs as $his <<= App.Desc.eyeColor($activeSlave)>> eyes look deep into yours.<<elseif ($activeSlave.anus > 0)>>$His butt is relaxed and welcoming, and $he holds $his legs back to take missionary anal loving as $his <<= App.Desc.eyeColor($activeSlave)>> eyes look deep into yours.<<else>>$He holds $his thighs together for frottage so $he can love you without losing $his virginity.<</if>><</if>> You both know each other quite well, and maintain the gentle communion for a long time. When $he senses your climax building, $he lets $himself climb to orgasm with you, holding <<if ($PC.dick == 0)>>your hips in $his hands<<else>>you in $his arms<</if>>. $He quickly cleans you with $his mouth and heads to the shower. When $he gets out you're back at work, but $he comes out to @@.hotpink;plant another kiss on you.@@
+	When you enter your suite, the dim light reveals $activeSlave.slaveName waiting with $his beautiful body laid across the bed. When $he <<if canSee($activeSlave)>>sees<<else>>figures out<</if>> the kind of lovemaking you're in the mood for, $he spreads $his arms for you, smiling gently. $He kisses you lovingly, <<if !canTalk($activeSlave)>>taking your hand in $hers and drawing a heart on your palm with one finger.<<else>><<say>>ing, "<<Master>>, I love you."<</if>>
+	<<if ($PC.vagina == 1)>>
+		$He lies on $his side and raises one leg for you so you can straddle the other, sliding up to press your pussy against $his submissive groin. You grind against $him; the stimulation is so strong that $he writhes into the sheets, panting and whining.
+		<<if $PC.dick == 1>>
+			Your stiff dick, unused for once, slides deliciously between your warm bodies.
+		<</if>>
+	<<else>>
+		<<if ($activeSlave.vagina > 0)>>
+			$His pussy is warm and very wet, making penetration easy; $he gasps and arches $his back, clasping you between $his legs<<if canSee(activeSlave)>> as $his <<= App.Desc.eyeColor($activeSlave)>> eyes look deep into yours<</if>>.
+		<<elseif ($activeSlave.anus > 0)>>
+			$His butt is relaxed and welcoming, and $he holds $his legs back to take missionary anal loving<<if canSee(activeSlave)>> as $his <<= App.Desc.eyeColor($activeSlave)>> eyes look deep into yours<</if>>.
+		<<else>>
+			$He holds $his thighs together for frottage so $he can love you without losing $his virginity.
+		<</if>>
+	<</if>>
+	You both know each other quite well, and maintain the gentle communion for a long time. When $he senses your climax building, $he lets $himself climb to orgasm with you, holding <<if ($PC.dick == 0)>>your hips in $his hands<<else>>you in $his arms<</if>>. $He quickly cleans you with $his mouth and heads to the shower. When $he gets out you're back at work, but $he comes out to @@.hotpink;plant another kiss on you.@@
 	<<set $activeSlave.devotion += 10>>
 	<<set $activeSlave.counter.oral += 1>>
 	<<set $oralTotal += 1>>
diff --git a/src/uncategorized/RETS.tw b/src/uncategorized/RETS.tw
index 29789e07437..11470f89e6f 100644
--- a/src/uncategorized/RETS.tw
+++ b/src/uncategorized/RETS.tw
@@ -601,7 +601,7 @@ You look in on your slaves as a group of them heads for bed. $subSlave.slaveName
 <<else>>
 	skinny
 <</if>>
-waist to cup _his2 <<if $subSlave.dick > 0>>cock<<elseif $subSlave.vagina == -1>>asshole<<else>>pussy<</if>> possessively with one hand. $subSlave.slaveName closes _his2 <<= App.Desc.eyeColor($subSlave)>> eyes.
+waist to cup _his2 <<if $subSlave.dick > 0>>cock<<elseif $subSlave.vagina == -1>>asshole<<else>>pussy<</if>> possessively with one hand.<<if $subSlave.eyes != -4>> $subSlave.slaveName closes _his2 <<= App.Desc.eyeColor($subSlave)>> eyes.<</if>>
 <br><br>
 $activeSlave.slaveName chuckles into $subSlave.slaveName's ear, crooning,
 <<if $subSlave.bellyPreg >= 120000>>
diff --git a/src/uncategorized/multiImplant.tw b/src/uncategorized/multiImplant.tw
index 3e60acccb57..555f4b67c64 100644
--- a/src/uncategorized/multiImplant.tw
+++ b/src/uncategorized/multiImplant.tw
@@ -119,7 +119,7 @@ You head down to your <<if $surgeryUpgrade == 1>>heavily upgraded and customized
 	/* order here is important, do not change it without good reason */
 	/* eyes */
 	<<if _slaveOrgans.eyes != 0>>
-		<<if ($activeSlave.eyes == -2) && $activeSlave.origEye != "implant">>
+		<<if ($activeSlave.eyes == -2) && $activeSlave.eyesImplant == 0>>
 			<<run cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave)>>
 			<<set $activeSlave.eyes = 1>>
 			<<set $activeSlave.eyeColor = $activeSlave.origEye>>
@@ -131,12 +131,10 @@ You head down to your <<if $surgeryUpgrade == 1>>heavily upgraded and customized
 			<<set $surgeryType = "unblind">>
 			<br><hr>
 			<<include "Surgery Degradation">>
-		<<elseif $activeSlave.origEye == "implant">>
+		<<elseif $activeSlave.eyesImplant == 1>>
 			<<run cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave)>>
 			<<set $stockpile.ocularImplant++>>
 			<<set $activeSlave.eyes = 1>>
-			<<set _oldEyes = $genePool.find(function(s) { return s.ID = $activeSlave.ID; })>>
-			<<set $activeSlave.origEye = _oldEyes.origEye>>
 			<<set $activeSlave.eyeColor = $activeSlave.origEye>>
 			<<set $activeSlave.health -= 20>>
 			<<if $organFarmUpgrade == 2>>
diff --git a/src/uncategorized/remoteSurgery.tw b/src/uncategorized/remoteSurgery.tw
index 110ff0c8651..15418b37523 100644
--- a/src/uncategorized/remoteSurgery.tw
+++ b/src/uncategorized/remoteSurgery.tw
@@ -114,7 +114,7 @@ $His $activeSlave.faceShape face is
 	<</if>>
 <</if>>
 
-<<if $activeSlave.origEye == "implant">>
+<<if $activeSlave.eyesImplant == 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	$He has artificial eyes.
 <<elseif ($activeSlave.eyes <= -2)>>
@@ -125,12 +125,10 @@ $His $activeSlave.faceShape face is
 	$He has working
 	<<if $activeSlave.eyes == -1>>
 		eyes, but is nearsighted.
-		<<if ($activeSlave.origEye != "implant")>>
-			[[Correct eyesight|Surgery Degradation][$activeSlave.eyes = 1, cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 10, $surgeryType = "eyeFix"]]
-		<</if>>
+		[[Correct eyesight|Surgery Degradation][$activeSlave.eyes = 1, cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 10, $surgeryType = "eyeFix"]]
 	<<elseif $activeSlave.eyes == 1>>
 		eyes and good vision.
-		<<if ($seeExtreme == 1) && ($activeSlave.origEye != "implant") && $activeSlave.indentureRestrictions < 1>>
+		<<if ($seeExtreme == 1) && $activeSlave.indentureRestrictions < 1>>
 			[[Blur vision|Surgery Degradation][$activeSlave.eyes = -1, cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 10, $surgeryType = "eyeBlur"]]
 		<</if>>
 	<</if>>
@@ -138,19 +136,18 @@ $His $activeSlave.faceShape face is
 
 <<if ($seeExtreme == 1)>>
 	<<if $activeSlave.indentureRestrictions < 1>>
-		<<if $activeSlave.origEye != "implant">>
+		<<if $activeSlave.eyesImplant == 0>>
 			<<if ($activeSlave.eyes > -2)>>
 				| [[Blind|Surgery Degradation][$activeSlave.eyes = -2,$activeSlave.eyeColor = "dulled " + $activeSlave.origEye,$activeSlave.eyeColor = $activeSlave.origEye,cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 10,$surgeryType = "blind"]]
 			<</if>>
-			/*<<if ($activeSlave.eyes != -3)>>
-				<<if ($activeSlave.eyes >= -2)>> | <</if>>
-				| [[Remove eyes|Surgery Degradation][$activeSlave.eyeColor = "empty",$activeSlave.origEye = "none",cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "remove eyes"]]
-				<<if ($activeSlave.eyes != -2)>>//This will greatly restrict $him//<</if>>
-			<</if>>*/
-		<</if>>
-		<<if ($cyberMod == 1) && ($stockpile.ocularImplant > 0) && ($activeSlave.origEye != "implant")>>
-			<<if ($activeSlave.eyes != -3)>> <</if>>
-			| [["Give " + $him + " ocular implants"|Surgery Degradation][$activeSlave.origEye = "implant", $stockpile.ocularImplant--,cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "ocular implant"]]
+			<<if ($activeSlave.eyes > -3)>>
+				| [[Remove eyes|Surgery Degradation][/*$activeSlave.eyeColor = "empty",*/ $activeSlave.eyes = -3, cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20, $surgeryType = "remove eyes"]]
+				<<if ($activeSlave.eyes > -2)>>//This will greatly restrict $him//<</if>>
+			<</if>>
+			<<if ($cyberMod == 1) && ($stockpile.ocularImplant > 0)>>
+				<<if ($activeSlave.eyes != -3)>> <</if>>
+				| [["Give " + $him + " ocular implants"|Surgery Degradation][$activeSlave.eyesImplant = 1, $stockpile.ocularImplant--,cashX(forceNeg($surgeryCost), "slaveSurgery", $activeSlave), $activeSlave.health -= 20,$surgeryType = "ocular implant"]]
+			<</if>>
 		<</if>>
 	<</if>>
 <</if>>
diff --git a/src/uncategorized/saLiveWithHG.tw b/src/uncategorized/saLiveWithHG.tw
index 304520ec875..b0725992e91 100644
--- a/src/uncategorized/saLiveWithHG.tw
+++ b/src/uncategorized/saLiveWithHG.tw
@@ -747,14 +747,14 @@
 			<</if>>
 		<</if>>
 	<</if>>
-	<<if $slaves[$i].origEye == "none">>
+	<<if $slaves[$i].eyes <= -3>>
 		<<if !hasEyeColorRule($slaves[$i],$defaultRules)>>
-			<<if ($slaves[$i].eyeColor != $HeadGirl.eyeColor)>>
+			<<if ($slaves[$i].eyeColor != $HeadGirl.eyeColor, $slaves[$i].eyes = -3)>>
 				<<set $slaves[$i].eyeColor = $HeadGirl.eyeColor>>
 				$HeadGirl.slaveName gives $slaves[$i].slaveName $slaves[$i].eyeColor glass eyes, to match _his2 own eyes, since with nymphomania comes narcissism.
 			<</if>>
 		<</if>>
-	<<elseif $slaves[$i].origEye == "implant">>
+	<<elseif $slaves[$i].eyesImplant == 1>>
 		<<if !hasEyeColorRule($slaves[$i],$defaultRules)>>
 			<<if ($slaves[$i].eyeColor != $HeadGirl.eyeColor)>>
 				<<set $slaves[$i].eyeColor = $HeadGirl.eyeColor>>
diff --git a/src/uncategorized/salon.tw b/src/uncategorized/salon.tw
index 5cb722470de..ad001258685 100644
--- a/src/uncategorized/salon.tw
+++ b/src/uncategorized/salon.tw
@@ -25,7 +25,7 @@
 
 /* EYES */
 
-<<if $activeSlave.eyes > -3>> /* Begin eye check */
+<<if $activeSlave.eyes > -4>> /* Begin eye check */
 
 <br><br>
 <<if $activeSlave.pupil == "">>
@@ -34,7 +34,7 @@
 <<if $activeSlave.sclerae == "">>
 	<<set $activeSlave.sclerae = "white">>
 <</if>>
-<<if $activeSlave.origEye == "implant">>
+<<if $activeSlave.eyesImplant == 1>>
 	$He has artificial eyes, and $he
 	<<if $activeSlave.eyewear == "none">>
 		has no eyewear.
@@ -52,7 +52,6 @@
 	<<else>>
 		is wearing $activeSlave.eyewear. [[Remove|Salon][$activeSlave.eyewear = "none"]]
 	<</if>>
-	//Blurring options are annoying and impede performance on some assignments.//
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	Give $him: [[Cosmetic glasses|Salon][$activeSlave.eyewear = "glasses",cashX(forceNeg($modCost), "slaveMod", $activeSlave)]]
 <<elseif $activeSlave.eyes > -1>>
@@ -82,10 +81,10 @@
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 <</if>>
 
-<<if $activeSlave.origEye != "implant">>
+<<if $activeSlave.eyesImplant == 0>>
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;
 	Custom cosmetic lenses:
-	<<if $activeSlave.origEye != "none">>
+	<<if $activeSlave.eyes > -3>>
 		<<if $activeSlave.geneticQuirks.heterochromia != 0 && $activeSlave.geneticQuirks.heterochromia != 1 && $activeSlave.geneticQuirks.heterochromia != $activeSlave.origEye>>
 			$He has one $activeSlave.eyeColor eye and one $activeSlave.geneticQuirks.heterochromia eye.
 		<<else>>
@@ -96,12 +95,10 @@
 		<<else>>
 			//Choose $his cosmetic lenses://
 		<</if>>
+	<<elseif $activeSlave.eyes == -3>>
+		$His glass eyes are $activeSlave.eyeColor. [[Remove eyes|Salon][$activeSlave.eyeColor = "empty"]] or //choose new ones://
 	<<else>>
-		<<if $activeSlave.eyeColor == "empty">>
-			$He has no eyes. //Choose what kind of eyes you want $him to have://
-		<<else>>
-			$His glass eyes are $activeSlave.eyeColor. [[Remove eyes|Salon][$activeSlave.eyeColor = "empty"]] or //choose new ones://
-		<</if>>
+		$He has no eyes. //Choose what kind of eyes you want $him to have://
 	<</if>>
 
 	<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
@@ -157,7 +154,7 @@
 
 	<<if $artificialEyeColor != "">>
 		<br>&nbsp;&nbsp;&nbsp;&nbsp;
-		[[Give|Salon][$activeSlave.eyeColor = ($artificialEyeColor),$activeSlave.pupil = ($artificialEyeShape),$activeSlave.sclerae = ($artificialEyeFill),cashX(forceNeg($modCost), "slaveMod", $activeSlave), $artificialEyeColor = "", $artificialEyeShape = "", $artificialEyeFill = ""]] $him $artificialEyeColor <<if $activeSlave.origEye == "none">>glass eyes<<else>>lenses<</if>><<if $artificialEyeShape != "" || $artificialEyeFill != "">> with <<if $artificialEyeShape != "" >>$artificialEyeShape pupils<</if>><<if $artificialEyeShape != "" && $artificialEyeFill != "">> and <</if>><<if $artificialEyeFill != "" >>$artificialEyeFill sclerae<</if>><</if>>? //This will be applied in addition to eyewear choices.//
+		[[Give|Salon][$activeSlave.eyeColor = ($artificialEyeColor), $activeSlave.pupil = ($artificialEyeShape), $activeSlave.sclerae = ($artificialEyeFill), cashX(forceNeg($modCost), "slaveMod", $activeSlave), $artificialEyeColor = "", $artificialEyeShape = "", $artificialEyeFill = ""]] $him $artificialEyeColor <<if $activeSlave.eyes <= -3>>glass eyes<<else>>lenses<</if>><<if $artificialEyeShape != "" || $artificialEyeFill != "">> with <<if $artificialEyeShape != "" >>$artificialEyeShape pupils<</if>><<if $artificialEyeShape != "" && $artificialEyeFill != "">> and <</if>><<if $artificialEyeFill != "" >>$artificialEyeFill sclerae<</if>><</if>>? //This will be applied in addition to eyewear choices.//
 	<</if>>
 
 <<else>>
diff --git a/src/uncategorized/seExpiration.tw b/src/uncategorized/seExpiration.tw
index 5ac57d0b37a..92fa652cb8e 100644
--- a/src/uncategorized/seExpiration.tw
+++ b/src/uncategorized/seExpiration.tw
@@ -83,7 +83,13 @@ $activeSlave.slaveName's indentured servitude is ending this week, meaning that
 	<<if $cash > 1000>>
 		<<link "Enslave $him">>
 			<<replace "#result">>
-				$He's beside $himself with joy when you accept $his plea and enslave $him. $He's given you the finest proof of loyalty a slave possibly can, having tasted a moment of freedom under the law, and thrown it away with utter contempt. $His <<= App.Desc.eyeColor($activeSlave)>> eyes <<if canSee($activeSlave)>>watch you<<else>>are wide<</if>> with eager anticipation, radiating gladness that the prospect of separation from you has gone.
+				$He's beside $himself with joy when you accept $his plea and enslave $him. $He's given you the finest proof of loyalty a slave possibly can, having tasted a moment of freedom under the law, and thrown it away with utter contempt.
+				<<if $activeSlave.eyes > -4>>
+					$His <<= App.Desc.eyeColor($activeSlave)>> eyes <<if canSee($activeSlave)>>watch you<<else>>are wide<</if>> with
+				<<else>>
+					$His face shows
+				<</if>>
+				eager anticipation, radiating gladness that the prospect of separation from you has gone.
 				<<set $activeSlave.indenture = -1, $activeSlave.indentureRestrictions = 0>>
 				<<run cashX(-1000, "event", $activeSlave)>>
 				<<set $lowerClass -= 1>>
diff --git a/src/utility/descriptionWidgetsStyle.tw b/src/utility/descriptionWidgetsStyle.tw
index 546edf8dd0c..308c2c274b5 100644
--- a/src/utility/descriptionWidgetsStyle.tw
+++ b/src/utility/descriptionWidgetsStyle.tw
@@ -3464,7 +3464,7 @@ $His
 		<<case "a bunny outfit">>
 			A pair of bunny ears sprout from a headband atop $his head.
 		<</switch>>
-		<<if $activeSlave.origEye == "implant">>
+		<<if $activeSlave.eyesImplant == 1>>
 			$He has artificial eyes.
 		<</if>>
 		<<if ($activeSlave.eyewear == "corrective glasses") || ($activeSlave.eyewear == "blurring glasses") || ($activeSlave.eyewear == "glasses")>>
-- 
GitLab