From 52af0777aded3b7e6d9b62408661fd3e7d3e3ba5 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Fri, 11 Jan 2019 12:57:53 -0500
Subject: [PATCH] v1.5.6

---
 devNotes/VersionChangeLog-Premod+LoliMod.txt | 7 ++++++-
 devNotes/twine JS.txt                        | 7 ++++++-
 src/init/setupVars.tw                        | 2 +-
 src/js/DefaultRules.tw                       | 2 +-
 src/js/rulesAssistantOptions.tw              | 1 +
 src/js/utilJS.tw                             | 4 ++++
 src/pregmod/seDeath.tw                       | 7 ++++++-
 src/uncategorized/slaveInteract.tw           | 2 +-
 src/uncategorized/wardrobeUse.tw             | 2 +-
 9 files changed, 27 insertions(+), 7 deletions(-)

diff --git a/devNotes/VersionChangeLog-Premod+LoliMod.txt b/devNotes/VersionChangeLog-Premod+LoliMod.txt
index 2939bb60e1b..b0296d9bcb5 100644
--- a/devNotes/VersionChangeLog-Premod+LoliMod.txt
+++ b/devNotes/VersionChangeLog-Premod+LoliMod.txt
@@ -2,9 +2,14 @@
 
 0.10.7.1-1.5.x
 
+01/11/2019
+
+	6
+	-now with even more fixes and cleaning
+
 01/09/2019
 
-	4
+	5
 	-more fixes and cleaning
 
 01/08/2019
diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 5f20f3ef7dd..b6929a48cc1 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -4450,20 +4450,24 @@ window.originPronounReplace = function(slave) {
 		case "She was the private slave of a con artist cult leader before he had to abandon her and flee.":
 		case "You helped her give birth, leaving her deeply indebted to you.":
 		case "You purchased her from a King after she expressed knowledge of the prince's affair with another servant.":
+			/*
 			r = r.replace(/(?<=\s)herself(?=\s|,|\.|;|\?|!)/g, slave.objectReflexive);
 			r = r.replace(/(?<=\s|^)Herself(?=\s|,|\.|;|\?|!)/g, capFirstChar(slave.objectReflexive));
 			r = r.replace(/(?<=\s)she(?=\s|,|\.|;|\?|!)/g, slave.pronoun);
 			r = r.replace(/(?<=\s|^)She(?=\s|,|\.|;|\?|!)/g, capFirstChar(slave.pronoun));
 			r = r.replace(/(?<=\s)her(?=\s|,|\.|;|\?|!)/g, slave.object);
 			r = r.replace(/(?<=\s|^)Her(?=\s|,|\.|;|\?|!)/g, capFirstChar(slave.object));
+			*/
 			return r;
 		default:
+			/*
 			r = r.replace(/(?<=\s)herself(?=\s|,|\.|;|\?|!)/g, slave.objectReflexive);
 			r = r.replace(/(?<=\s|^)Herself(?=\s|,|\.|;|\?|!)/g, capFirstChar(slave.objectReflexive));
 			r = r.replace(/(?<=\s)she(?=\s|,|\.|;|\?|!)/g, slave.pronoun);
 			r = r.replace(/(?<=\s|^)She(?=\s|,|\.|;|\?|!)/g, capFirstChar(slave.pronoun));
 			r = r.replace(/(?<=\s)her(?=\s|,|\.|;|\?|!)/g, slave.possessive);
 			r = r.replace(/(?<=\s|^)Her(?=\s|,|\.|;|\?|!)/g, capFirstChar(slave.possessive));
+			*/
 			return r;
 	}
 };
@@ -15151,7 +15155,7 @@ window.DefaultRules = (function() {
 		if ((rule.collar !== undefined) && (rule.collar != "no default setting")) {
 			if ((slave.collar !== rule.collar)) {
 				r += '<br>';
-				if ((rule.collar == "preg biometrics" && slave.preg <= -1)) {
+				if (rule.collar == "preg biometrics" && slave.preg <= -1 && slave.ovaries === 0 && slave.mpreg === 0) {
 					slave.collar = "none";
 					r += `${slave.slaveName} cannot utilize preg biometrics. `;
 				} else if ((rule.collar == "massive dildo gag" && slave.oralSkill <= 50)) {
@@ -18511,6 +18515,7 @@ window.rulesAssistantOptions = (function() {
 			const hcollars = [];
 			setup.harshCollars.forEach(item => {
 				if (item.fs === "seeage" && V.seeAge === 0) return;
+				else if (item.fs === "seePreg" && V.seePreg === 0) return;
 				else if (item.rs === "buyGag" && V.toysBoughtGags !== 1) return;
 				else hcollars.push([item.name, item.value]);
 			});
diff --git a/src/init/setupVars.tw b/src/init/setupVars.tw
index c0129c3c92a..24934d79dc6 100644
--- a/src/init/setupVars.tw
+++ b/src/init/setupVars.tw
@@ -2036,7 +2036,7 @@ Then pick _namePool.random(), or display those names as possible choices, or do
 	{name: "Tight steel", value: "tight steel"},
 	{name: "Cruel retirement counter", value: "cruel retirement counter", fs: "seeage"},
 	{name: "Uncomfortable leather", value: "uncomfortable leather"},
-	{name: "Pregnancy biometrics", value: "preg biometrics"},
+	{name: "Pregnancy biometrics", value: "preg biometrics", fs: "seePreg"},
 	{name: "Shock punishment", value: "shock punishment"},
 	{name: "Dildo gag", value: "dildo gag"},
 	{name: "Massive dildo gag", value: "massive dildo gag", rs: "buyGag"},
diff --git a/src/js/DefaultRules.tw b/src/js/DefaultRules.tw
index 3baf4a4b50e..af07393eebb 100644
--- a/src/js/DefaultRules.tw
+++ b/src/js/DefaultRules.tw
@@ -358,7 +358,7 @@ window.DefaultRules = (function() {
 		if ((rule.collar !== undefined) && (rule.collar != "no default setting")) {
 			if ((slave.collar !== rule.collar)) {
 				r += '<br>';
-				if ((rule.collar == "preg biometrics" && slave.preg <= -1)) {
+				if (rule.collar == "preg biometrics" && slave.preg <= -1 && slave.ovaries === 0 && slave.mpreg === 0) {
 					slave.collar = "none";
 					r += `${slave.slaveName} cannot utilize preg biometrics. `;
 				} else if ((rule.collar == "massive dildo gag" && slave.oralSkill <= 50)) {
diff --git a/src/js/rulesAssistantOptions.tw b/src/js/rulesAssistantOptions.tw
index cdac390187a..f47aba1563b 100644
--- a/src/js/rulesAssistantOptions.tw
+++ b/src/js/rulesAssistantOptions.tw
@@ -1239,6 +1239,7 @@ window.rulesAssistantOptions = (function() {
 			const hcollars = [];
 			setup.harshCollars.forEach(item => {
 				if (item.fs === "seeage" && V.seeAge === 0) return;
+				else if (item.fs === "seePreg" && V.seePreg === 0) return;
 				else if (item.rs === "buyGag" && V.toysBoughtGags !== 1) return;
 				else hcollars.push([item.name, item.value]);
 			});
diff --git a/src/js/utilJS.tw b/src/js/utilJS.tw
index 982e9bf3f96..a8f4d647cc0 100644
--- a/src/js/utilJS.tw
+++ b/src/js/utilJS.tw
@@ -1219,20 +1219,24 @@ window.originPronounReplace = function(slave) {
 		case "She was the private slave of a con artist cult leader before he had to abandon her and flee.":
 		case "You helped her give birth, leaving her deeply indebted to you.":
 		case "You purchased her from a King after she expressed knowledge of the prince's affair with another servant.":
+			/*
 			r = r.replace(/(?<=\s)herself(?=\s|,|\.|;|\?|!)/g, slave.objectReflexive);
 			r = r.replace(/(?<=\s|^)Herself(?=\s|,|\.|;|\?|!)/g, capFirstChar(slave.objectReflexive));
 			r = r.replace(/(?<=\s)she(?=\s|,|\.|;|\?|!)/g, slave.pronoun);
 			r = r.replace(/(?<=\s|^)She(?=\s|,|\.|;|\?|!)/g, capFirstChar(slave.pronoun));
 			r = r.replace(/(?<=\s)her(?=\s|,|\.|;|\?|!)/g, slave.object);
 			r = r.replace(/(?<=\s|^)Her(?=\s|,|\.|;|\?|!)/g, capFirstChar(slave.object));
+			*/
 			return r;
 		default:
+			/*
 			r = r.replace(/(?<=\s)herself(?=\s|,|\.|;|\?|!)/g, slave.objectReflexive);
 			r = r.replace(/(?<=\s|^)Herself(?=\s|,|\.|;|\?|!)/g, capFirstChar(slave.objectReflexive));
 			r = r.replace(/(?<=\s)she(?=\s|,|\.|;|\?|!)/g, slave.pronoun);
 			r = r.replace(/(?<=\s|^)She(?=\s|,|\.|;|\?|!)/g, capFirstChar(slave.pronoun));
 			r = r.replace(/(?<=\s)her(?=\s|,|\.|;|\?|!)/g, slave.possessive);
 			r = r.replace(/(?<=\s|^)Her(?=\s|,|\.|;|\?|!)/g, capFirstChar(slave.possessive));
+			*/
 			return r;
 	}
 };
diff --git a/src/pregmod/seDeath.tw b/src/pregmod/seDeath.tw
index 861e0dd7d48..1d4d3e82cb3 100644
--- a/src/pregmod/seDeath.tw
+++ b/src/pregmod/seDeath.tw
@@ -1,4 +1,4 @@
-:: SE Death [nobr] 
+:: SE Death [nobr]
  
 <<set $nextButton = "Continue", $nextLink = "Scheduled Event">>
 
@@ -23,6 +23,11 @@
 			<<set _killedSlaves.push(_slave)>>
 	<</switch>>
 <</foreach>>
+<<if _killedSlaves.length == 0>>
+	/* if something beats this to the slaves, this should kick the player along instead of leaving them at a blank screen */
+	<<set $slaveDeath = 0>>
+	<<goto "Scheduled Event">>
+<</if>>
 <<foreach _slave of _killedSlaves>>
 	<<set $activeSlave = _slave>>
 	<<include "Remove activeSlave">>
diff --git a/src/uncategorized/slaveInteract.tw b/src/uncategorized/slaveInteract.tw
index dfbb6af83bf..b34f0a06bc6 100644
--- a/src/uncategorized/slaveInteract.tw
+++ b/src/uncategorized/slaveInteract.tw
@@ -954,7 +954,7 @@
 		| <<link "Cruel retirement counter">><<set $activeSlave.collar = "cruel retirement counter">><<replace "#collar">>$activeSlave.collar<</replace>><</link>>
 	<</if>>
 	| <<link "Uncomfortable leather">><<set $activeSlave.collar = "uncomfortable leather">><<replace "#collar">>$activeSlave.collar<</replace>><</link>>
-	<<if $activeSlave.preg > -1 && $seePreg != 0>>
+	<<if $activeSlave.preg > -1 && ($activeSlave.ovaries == 1 || $activeSlave.mpreg == 1) && $seePreg != 0>>
 	| <<link "Pregnancy biometrics">><<set $activeSlave.collar = "preg biometrics">><<replace "#collar">>$activeSlave.collar<</replace>><</link>>
 	<</if>>
 	| <<link "Shock punishment">><<set $activeSlave.collar = "shock punishment">><<replace "#collar">>$activeSlave.collar<</replace>><</link>>
diff --git a/src/uncategorized/wardrobeUse.tw b/src/uncategorized/wardrobeUse.tw
index dbc25bd7756..93cc0311d09 100644
--- a/src/uncategorized/wardrobeUse.tw
+++ b/src/uncategorized/wardrobeUse.tw
@@ -847,7 +847,7 @@ Clothes: ''<span id="clothes">$activeSlave.clothes</span>.''
 	<<replace "#collar">>$activeSlave.collar<</replace>>
 	<<replace "#collarDescription">><br>//<<collarDescription>>//<</replace>>
 <</link>>
-<<if $activeSlave.preg > -1>>
+<<if $activeSlave.preg > -1 && ($activeSlave.ovaries == 1 || $activeSlave.mpreg == 1) && $seePreg != 0>>
 	| <<link "Pregnancy biometrics">>
 		<<set $activeSlave.collar = "preg biometrics">>
 		<<replace "#collar">>$activeSlave.collar<</replace>>
-- 
GitLab