From e67362cf39c566349dfb116c0a34a6615cd82d41 Mon Sep 17 00:00:00 2001
From: kopareigns <kopareigns@gmail.com>
Date: Sun, 14 Oct 2018 18:44:04 -0400
Subject: [PATCH] apply AgePenalty to .intelligenceImplant, and NaN fix

---
 devNotes/twine JS.txt                       | 17 +++++++++++++----
 src/js/slaveGenerationJS.tw                 | 17 +++++++++++++----
 src/npc/acquisition.tw                      |  6 ++++--
 src/uncategorized/BackwardsCompatibility.tw |  5 ++++-
 src/uncategorized/nextWeek.tw               |  6 ++++--
 5 files changed, 38 insertions(+), 13 deletions(-)

diff --git a/devNotes/twine JS.txt b/devNotes/twine JS.txt
index 18946b5943a..80cd464ea90 100644
--- a/devNotes/twine JS.txt	
+++ b/devNotes/twine JS.txt	
@@ -30701,10 +30701,19 @@ window.generateNationality = function generateNationality(slave) {
 window.generateIntelligence = function generateIntelligence(slave) {
 	const gaussian = gaussianPair();
 	slave.intelligence = Intelligence.random();
-	if (gaussian[0] < gaussian[1] + slave.intelligence/29 - 0.35) { /* 40.23% chance if intelligence is 0, 99.26% chance if intelligence is 100 */
-		slave.intelligenceImplant = 15;
-		if (jsRandom(15,150) < slave.intelligence) {
-			slave.intelligenceImplant = 30;
+	if (State.variables.AgePenalty == 1 && slave.actualAge <= 24) {
+		if (gaussian[0] < gaussian[1] + slave.intelligence/29 + (slave.actualAge - 24)/8 - 0.35) {
+			slave.intelligenceImplant = 15;
+			if (slave.intelligenceImplant > 0 && jsRandom(15,150) < slave.intelligence) {
+				slave.intelligenceImplant = 30;
+			}
+		}
+	} else {
+		if (gaussian[0] < gaussian[1] + slave.intelligence/29 - 0.35) { /* 40.23% chance if intelligence is 0, 99.26% chance if intelligence is 100 */
+			slave.intelligenceImplant = 15;
+			if (slave.intelligenceImplant > 0 && jsRandom(15,150) < slave.intelligence) {
+				slave.intelligenceImplant = 30;
+			}
 		}
 	}
 };
diff --git a/src/js/slaveGenerationJS.tw b/src/js/slaveGenerationJS.tw
index 725ce64cc84..49d8ebb991c 100644
--- a/src/js/slaveGenerationJS.tw
+++ b/src/js/slaveGenerationJS.tw
@@ -1415,10 +1415,19 @@ window.generateNationality = function generateNationality(slave) {
 window.generateIntelligence = function generateIntelligence(slave) {
 	const gaussian = gaussianPair();
 	slave.intelligence = Intelligence.random();
-	if (gaussian[0] < gaussian[1] + slave.intelligence/29 - 0.35) { /* 40.23% chance if intelligence is 0, 99.26% chance if intelligence is 100 */
-		slave.intelligenceImplant = 15;
-		if (jsRandom(15,150) < slave.intelligence) {
-			slave.intelligenceImplant = 30;
+	if (State.variables.AgePenalty == 1 && slave.actualAge <= 24) {
+		if (gaussian[0] < gaussian[1] + slave.intelligence/29 + (slave.actualAge - 24)/8 - 0.35) {
+			slave.intelligenceImplant = 15;
+			if (slave.intelligenceImplant > 0 && jsRandom(15,150) < slave.intelligence) {
+				slave.intelligenceImplant = 30;
+			}
+		}
+	} else {
+		if (gaussian[0] < gaussian[1] + slave.intelligence/29 - 0.35) { /* 40.23% chance if intelligence is 0, 99.26% chance if intelligence is 100 */
+			slave.intelligenceImplant = 15;
+			if (slave.intelligenceImplant > 0 && jsRandom(15,150) < slave.intelligence) {
+				slave.intelligenceImplant = 30;
+			}
 		}
 	}
 };
diff --git a/src/npc/acquisition.tw b/src/npc/acquisition.tw
index 4521c529455..c716220f582 100644
--- a/src/npc/acquisition.tw
+++ b/src/npc/acquisition.tw
@@ -684,8 +684,10 @@ The previous owner seems to have left in something of a hurry.
 		<</for>>
 	<</for>>
 <</if>>
-<<set $averageTrust = $averageTrust/_slavesContributing>>
-<<set $averageDevotion = $averageDevotion/_slavesContributing>>
+<<if _slavesContributing != 0>>
+	<<set $averageTrust = $averageTrust/_slavesContributing>>
+	<<set $averageDevotion = $averageDevotion/_slavesContributing>>
+<</if>>
 <<set $enduringTrust = $averageTrust>>
 <<set $enduringDevotion = $averageDevotion>>
 
diff --git a/src/uncategorized/BackwardsCompatibility.tw b/src/uncategorized/BackwardsCompatibility.tw
index 4957ab1e9ae..f411dd07205 100644
--- a/src/uncategorized/BackwardsCompatibility.tw
+++ b/src/uncategorized/BackwardsCompatibility.tw
@@ -205,7 +205,10 @@
 <<if def $vaginaTotal>>
 	<<unset $vaginaTotal>>
 <</if>>
-
+<<set $enduringTrust = Number($enduringTrust) || 0>>
+<<set $enduringDevotion = Number($enduringDevotion) || 0>>
+<<set $averageTrust = Number($averageTrust) || 0>>
+<<set $averageDevotion = Number($averageDevotion) || 0>>
 
 /* pregmod stuff */
 
diff --git a/src/uncategorized/nextWeek.tw b/src/uncategorized/nextWeek.tw
index 7d5a7b7da8c..249d530cc45 100644
--- a/src/uncategorized/nextWeek.tw
+++ b/src/uncategorized/nextWeek.tw
@@ -158,8 +158,10 @@
 		<<if $slaves[_i].pornTypePregnancy > 0>><<set $pornStarPregnancySluts++>><</if>>
 	<</if>>
 <</for>>
-<<set $averageTrust = $averageTrust/_slavesContributing>>
-<<set $averageDevotion = $averageDevotion/_slavesContributing>>
+<<if _slavesContributing != 0>>
+	<<set $averageTrust = $averageTrust/_slavesContributing>>
+	<<set $averageDevotion = $averageDevotion/_slavesContributing>>
+<</if>>
 <<set $enduringTrust = ($averageTrust+($enduringTrust*3))/4>>
 <<set $enduringDevotion = ($averageDevotion+($enduringDevotion*3))/4>>
 
-- 
GitLab