From dc664e99c68902cfa8e1a412d2483a5c9dfa01db Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Mon, 24 Feb 2020 16:28:29 -0500
Subject: [PATCH] fixes

---
 Changelog.txt                              |   5 ++
 src/js/generateMarketSlave.js              | 100 ++++++++++++---------
 src/npc/startingGirls/moreCustomOptions.tw |  12 ++-
 3 files changed, 71 insertions(+), 46 deletions(-)

diff --git a/Changelog.txt b/Changelog.txt
index df1a49e7477..65b0c9908fe 100644
--- a/Changelog.txt
+++ b/Changelog.txt
@@ -2,6 +2,11 @@ Pregmod
 
 0.10.7.1-3.3.x
 	
+	
+	1
+	-added a follow up event to "snatch and grab"
+	-fixes
+	
 	2/23/2020
 	
 	0
diff --git a/src/js/generateMarketSlave.js b/src/js/generateMarketSlave.js
index a12ffb24da8..dce29196d57 100644
--- a/src/js/generateMarketSlave.js
+++ b/src/js/generateMarketSlave.js
@@ -497,13 +497,70 @@ window.generateMarketSlave = function(market = "kidnappers", numArcology = 1) {
 			if (V.arcologies[market].FSSubjugationist > 20) {
 				r += `They're universally ${V.arcologies[market].FSSubjugationistRace}. `;
 			}
+			if (V.arcologies[market].FSYouthPreferentialist > 20) {
+				r += `They're usually on the younger side. `;
+				if (V.activeSlave.actualAge > 30) {
+					if (jsRandom(0, 1) === 0) {
+						V.activeSlave.actualAge = jsRandom(18, 25);
+						V.activeSlave.visualAge = V.activeSlave.actualAge;
+						V.activeSlave.physicalAge = V.activeSlave.actualAge;
+						V.activeSlave.ovaryAge = V.activeSlave.actualAge;
+						if (V.activeSlave.boobs > 400) {
+							V.activeSlave.boobs -= 100*jsRandom(0, 2);
+						}
+						if (V.activeSlave.butt > 3) {
+							V.activeSlave.butt -= jsRandom(0, 2);
+						}
+					} else if (V.arcologies[market].FSYouthPreferentialistResearch === 1) {
+						if (V.activeSlave.actualAge > 30) {
+							r += `Well, all of them certainly look it. Always best to check their ages before buying. `;
+							V.activeSlave.visualAge = jsRandom(18, 25);
+							V.activeSlave.chem += jsRandom(10, 40);
+						}
+					} else {
+						r += `And if they aren't, they sure don't look their age. `;
+						V.activeSlave.faceImplant += jsRandom(10, 30);
+						applyAgeImplant(V.activeSlave);
+					}
+				}
+			} else if (V.arcologies[market].FSMaturityPreferentialist > 20) {
+				r += `They're usually on the more mature side. `;
+				if (V.activeSlave.actualAge < 30) {
+					if (jsRandom(0, 1) === 0) {
+						V.activeSlave.actualAge = jsRandom(36, V.retirementAge);
+						V.activeSlave.visualAge = V.activeSlave.actualAge;
+						V.activeSlave.physicalAge = V.activeSlave.actualAge;
+						V.activeSlave.ovaryAge = V.activeSlave.actualAge;
+						if (V.activeSlave.boobs < 400) {
+							V.activeSlave.boobs += 100*jsRandom(0, 2);
+						}
+						if (V.activeSlave.butt < 3) {
+							V.activeSlave.butt += jsRandom(0, 2);
+						}
+					}
+				}
+			}
 			if (V.arcologies[market].FSRepopulationFocus > 50) {
 				r += `They are exclusively female and all extremely pregnant. `;
+				V.activeSlave.genes = "XX";
 				V.activeSlave.ovaries = 1;
 				V.activeSlave.vagina = either(0, 1, 1, 1, 1, 2, 2, 3, 3, 3, 3);
 				V.activeSlave.dick = 0;
 				V.activeSlave.balls = 0;
 				V.activeSlave.scrotum = 0;
+				if (V.activeSlave.physicalAge < V.fertilityAge) {
+					if (V.precociousPuberty === 0) {
+						V.activeSlave.physicalAge = V.fertilityAge;
+						V.activeSlave.visualAge = V.fertilityAge;
+						V.activeSlave.actualAge = V.fertilityAge;
+						V.activeSlave.ovaryAge = V.fertilityAge;
+					}
+				}
+				V.activeSlave.pubertyXX = 1;
+				if (V.activeSlave.ovaryAge >= 42) {
+					/* corrects menopausal mothers */
+					V.activeSlave.ovaryAge = 40;
+				}
 				V.activeSlave.preg = 0; /* removing contraception of default slave generation so isFertile can work right*/
 				if (isFertile(V.activeSlave)) {
 					V.activeSlave.vagina = jsRandom(1, 4);
@@ -805,49 +862,6 @@ window.generateMarketSlave = function(market = "kidnappers", numArcology = 1) {
 					V.activeSlave.buttImplantType = "hyper fillable";
 				}
 			}
-			if (V.arcologies[market].FSYouthPreferentialist > 20) {
-				r += `They're usually on the younger side. `;
-				if (V.activeSlave.actualAge > 30) {
-					if (jsRandom(0, 1) === 0) {
-						V.activeSlave.actualAge = jsRandom(18, 25);
-						V.activeSlave.visualAge = V.activeSlave.actualAge;
-						V.activeSlave.physicalAge = V.activeSlave.actualAge;
-						V.activeSlave.ovaryAge = V.activeSlave.actualAge;
-						if (V.activeSlave.boobs > 400) {
-							V.activeSlave.boobs -= 100*jsRandom(0, 2);
-						}
-						if (V.activeSlave.butt > 3) {
-							V.activeSlave.butt -= jsRandom(0, 2);
-						}
-					} else if (V.arcologies[market].FSYouthPreferentialistResearch === 1) {
-						if (V.activeSlave.actualAge > 30) {
-							r += `Well, all of them certainly look it. Always best to check their ages before buying. `;
-							V.activeSlave.visualAge = jsRandom(18, 25);
-							V.activeSlave.chem += jsRandom(10, 40);
-						}
-					} else {
-						r += `And if they aren't, they sure don't look their age. `;
-						V.activeSlave.faceImplant += jsRandom(10, 30);
-						applyAgeImplant(V.activeSlave);
-					}
-				}
-			} else if (V.arcologies[market].FSMaturityPreferentialist > 20) {
-				r += `They're usually on the more mature side. `;
-				if (V.activeSlave.actualAge < 30) {
-					if (jsRandom(0, 1) === 0) {
-						V.activeSlave.actualAge = jsRandom(36, V.retirementAge);
-						V.activeSlave.visualAge = V.activeSlave.actualAge;
-						V.activeSlave.physicalAge = V.activeSlave.actualAge;
-						V.activeSlave.ovaryAge = V.activeSlave.actualAge;
-						if (V.activeSlave.boobs < 400) {
-							V.activeSlave.boobs += 100*jsRandom(0, 2);
-						}
-						if (V.activeSlave.butt < 3) {
-							V.activeSlave.butt += jsRandom(0, 2);
-						}
-					}
-				}
-			}
 			if (V.arcologies[market].FSPetiteAdmiration > 20) {
 				r += `They tend to be short, some far more than others. `;
 				if (V.activeSlave.height >= 160) {
diff --git a/src/npc/startingGirls/moreCustomOptions.tw b/src/npc/startingGirls/moreCustomOptions.tw
index d4c2c5715ae..998d51757bb 100644
--- a/src/npc/startingGirls/moreCustomOptions.tw
+++ b/src/npc/startingGirls/moreCustomOptions.tw
@@ -12,6 +12,12 @@
 	<</if>>
 	<<set $activeSlave.counter.birthsTotal = Math.clamp($activeSlave.counter.birthsTotal, 0, (($activeSlave.actualAge-$activeSlave.pubertyAgeXX)*50))>>
 <</if>>
+<<if $activeSlave.slaveName === "">>
+	<<set $activeSlave.slaveName = "Nameless">>
+<</if>>
+<<if $activeSlave.slaveSurname === "">>
+	<<set $activeSlave.slaveSurname = 0>>
+<</if>>
 <<setLocalPronouns $activeSlave>>
 
 ''Birth name:'' <<textbox "$activeSlave.birthName" $activeSlave.birthName "More customization options">>
@@ -33,11 +39,11 @@
 <br>''Sclera color:'' <<textbox "$sclerae_temp" $activeSlave.eye.left.sclera "More customization options">>
 <br>Custom tattoo: <<textbox "$activeSlave.custom.tattoo" $activeSlave.custom.tattoo "More customization options">> //Use complete, capitalized and punctuated sentences.//
 <br>Custom origin story: <<textbox "$activeSlave.origin" $activeSlave.origin "More customization options">> //Use complete, capitalized and punctuated sentences.//
-<br>
+<br>Origin overide:
 <<if $originOveride == 0>>
-	[[Origin Override|More customization options][$originOveride = 1]] //Will keep your custom origin and tattoo from being overwritten.//
+	@@.red;Disabled@@ [[Enable|More customization options][$originOveride = 1]] //Enabling will keep your custom origin and tattoo from being overwritten by Starting Girls.//
 <<else>>
-	[[Disable Override|More customization options][$originOveride = 0]] //Will unlock origin and allow slavegen to overwrite it and its related tattoo.//
+	@@.green;Enabled@@ [[Disable|More customization options][$originOveride = 0]] //Disabling will allow Starting Girls to overwrite origins and tattoos with its defaults.//
 <</if>>
 <<if $activeSlave.prestige>>
 	<br>Reason for prestigiousness: <<textbox "$activeSlave.prestigeDesc" $activeSlave.prestigeDesc>> //Use complete, capitalized and punctuated sentences.//
-- 
GitLab