From 3ca73761432ed3cb256ab92ae9f6819fbd9d139c Mon Sep 17 00:00:00 2001
From: hexall90 <hexall90@gmail.com>
Date: Sun, 10 Sep 2017 17:38:42 +0200
Subject: [PATCH] Added to the incubator option for admministering stimulants
 to the children. Logic is still missing.

---
 src/init/storyInit.tw          |  1 +
 src/pregmod/incubator.tw       | 27 +++++++++++++++++++++++++++
 src/pregmod/incubatorReport.tw | 23 +++++++++++++++++++++++
 3 files changed, 51 insertions(+)

diff --git a/src/init/storyInit.tw b/src/init/storyInit.tw
index 1f607721e48..dd3bc19bc3a 100644
--- a/src/init/storyInit.tw
+++ b/src/init/storyInit.tw
@@ -464,6 +464,7 @@ DairyRestraintsSetting($dairyRestraintsSetting)
 <<set $incubatorMusclesSetting = 0>>
 <<set $incubatorGrowthStimsSetting = 0>>
 <<set $incubatorReproductionSetting = 0>>
+<<set $growthStimMod = 0>>
 <<set $incubatorName = "the Incubator">>
 <<set $incubatorNameCaps = "The Incubator">>
 <<set $reservedChildren = 0>>
diff --git a/src/pregmod/incubator.tw b/src/pregmod/incubator.tw
index 300a7800aaf..576ba4cb484 100644
--- a/src/pregmod/incubator.tw
+++ b/src/pregmod/incubator.tw
@@ -186,6 +186,13 @@ Target age for release: <<textbox "$targetAge" $targetAge "Incubator">> [[Minimu
 	There are no systems in place to control a growing child's musculature; they will likely come out frail and weak from rapidly growing. [[Upgrade the growth tanks with muscle monitoring systems|Incubator][$cash -= Math.trunc(20000*$upgradeMultiplierArcology), $incubatorUpgradeMuscles = 1]] //Costs ¤<<print Math.trunc(20000*$upgradeMultiplierArcology)>> and will increase upkeep costs//
 <</if>>
 
+<br>
+<<if $incubatorUpgradeGrowthStims == 1>>
+	Advanced monitoring and stimulants injection systems have been installed in the tanks to monitor and maintain a developing child's height.
+<<else>>
+	There are no systems in place to control a growing child's height. [[Upgrade the growth tanks with stimulants injection systems|Incubator][$cash -= Math.trunc(20000*$upgradeMultiplierArcology), $incubatorUpgradeGrowthStims = 1]] //Costs ¤<<print Math.trunc(20000*$upgradeMultiplierArcology)>> and will increase upkeep costs//
+<</if>>
+
 <br>
 <<if $incubatorUpgradeReproduction == 1>>
 	Advanced monitoring and hormone injection systems have been installed in the tanks to influence a developing child's reproductive organs.
@@ -221,6 +228,16 @@ Target age for release: <<textbox "$targetAge" $targetAge "Incubator">> [[Minimu
 				Strength management systems are offline; she will likely be released extremely weak.
 			<</if>>
 		<</if>>
+		<<if $incubatorUpgradeGrowthStims == 1>>
+			<br>
+			<<if $incubatorGrowthStimsSetting == 2>>
+				She is injected with higher than reccomended amounts of stimulants; exceeding expected final height is likely.
+			<<elseif $incubatorGrowthStimsSetting == 1>>
+				She is injected with the reccomended amounts of stimulants; she will grow to her full expected height.
+			<<elseif $incubatorGrowthStimsSetting == 0>>
+				Growth stimulants injection systems are offline; she will develop normally.
+			<</if>>
+		<</if>>
 		<<if $incubatorUpgradeReproduction == 1>>
 			<br>
 			<<if $incubatorReproductionSetting == 2>>
@@ -256,6 +273,16 @@ Target age for release: <<textbox "$targetAge" $targetAge "Incubator">> [[Minimu
 	<</if>>
 <</if>>
 <br>
+<<if $incubatorUpgradeGrowthStims == 1>>
+	<<if $incubatorGrowthStimsSetting == 2>>
+		She is injected with higher than reccomended amounts of stimulants; exceeding expected final height is likely. [[Limit|Incubator][$incubatorGrowthStimsSetting = 1]] | [[Disable|Incubator][$incubatorGrowthStimsSetting = 0]]
+	<<elseif $incubatorGrowthStimsSetting == 1>>
+		She is injected with the reccomended amounts of stimulants; she will grow to her full expected height. [[Overload|Incubator][$incubatorGrowthStimsSetting = 2]] | [[Disable|Incubator][$incubatorGrowthStimsSetting = 0]]
+	<<elseif $incubatorGrowthStimsSetting == 0>>
+		Growth stimulants injection systems are offline; she will develop normally. [[Activate|Incubator][$incubatorGrowthStimsSetting = 1]]
+	<</if>>
+<</if>>
+<br>
 <<if $incubatorUpgradeReproduction == 1>>
 	<<if $incubatorReproductionSetting == 2>>
 		Hormone levels are purposefully set higher than recommended; over-active reproductive systems likely. [[Limit|Incubator][$incubatorReproductionSetting = 1]] | [[Disable|Incubator][$incubatorReproductionSetting = 0]]
diff --git a/src/pregmod/incubatorReport.tw b/src/pregmod/incubatorReport.tw
index fd372cca6fb..2e5a1e50029 100644
--- a/src/pregmod/incubatorReport.tw
+++ b/src/pregmod/incubatorReport.tw
@@ -138,6 +138,29 @@
 		<</if>>
 	<</if>>
 
+	<<if $incubatorUpgradeGrowthStims == 1>>
+		<br>
+		<<if $tanks[_inc].height >= Math.clamp((Height.mean($slaves[$i]) * 1.25),0,274)>>
+			The monitoring system detects her body is not able to support further increases in height.
+		<<elseif $incubatorGrowthStimsSetting == 2>>
+			The monitoring system floods her body with growth stimulants, causing @@.green;a sharp increase in growth.@@
+			<<set $growthStimMod = 3>>
+		<<elseif $incubatorGrowthStimsSetting == 1>>
+			<<if $tanks[_inc].height > Height.forAge($slaves[$i].height, $slaves[$i])>>
+				The monitoring system detects her body is struggling to keep up with her growth and @@.green;decreases her growth stimulants dosage.@@
+				<<set $growthStimMod = 1>>
+			<<else>>
+				The monitoring system detects her body is capable of developing more rapidly and @@.green;increases her growth stimulants dosage.@@
+				<<set $growthStimMod = 2>>
+			<</if>>
+		<<elseif $incubatorGrowthStimsSetting == 0>>
+			With the stimulants injections offline, her body is left to develop naturally.
+			<<if $growthStimMod != 0>>
+				<<set $growthStimMod = 0>>
+			<</if>>
+		<</if>>
+	<</if>>
+	
 	<<if $incubatorUpgradeReproduction == 1>>
 		<br>
 		<<if $incubatorReproductionSetting == 2>>
-- 
GitLab