From b9587e1aa50c22451c1a6886dffe50e539c3c654 Mon Sep 17 00:00:00 2001
From: Pregmodder <pregmodder@gmail.com>
Date: Fri, 3 Jul 2020 04:35:51 -0400
Subject: [PATCH] increase breast size immobility

---
 src/js/statsChecker/statsChecker.js    |  8 +--
 src/npc/descriptions/boobs/boobs.js    | 55 +++++++++--------
 src/uncategorized/saLongTermEffects.tw | 81 +++++++++++++-------------
 3 files changed, 76 insertions(+), 68 deletions(-)

diff --git a/src/js/statsChecker/statsChecker.js b/src/js/statsChecker/statsChecker.js
index 775b5ba9e7b..9ada0875804 100644
--- a/src/js/statsChecker/statsChecker.js
+++ b/src/js/statsChecker/statsChecker.js
@@ -904,13 +904,13 @@ globalThis.tooFatSlave = function(slave) {
 globalThis.tooBigBreasts = function(slave) {
 	if (!slave) {
 		return null;
-	} else if (slave.boobs > 30000 + (slave.muscles * 100) && slave.physicalAge >= 18) {
+	} else if (slave.boobs > 40000 + (slave.muscles * 200) && slave.physicalAge >= 18) {
 		return true;
-	} else if (slave.boobs > 5000 + (slave.muscles * 10) && slave.physicalAge <= 3) {
+	} else if (slave.boobs > 5000 + (slave.muscles * 20) && slave.physicalAge <= 3) {
 		return true;
-	} else if (slave.boobs > 10000 + (slave.muscles * 20) && slave.physicalAge <= 12) {
+	} else if (slave.boobs > 10000 + (slave.muscles * 50) && slave.physicalAge <= 12) {
 		return true;
-	} else if (slave.boobs > 20000 + (slave.muscles * 50) && slave.physicalAge < 18) {
+	} else if (slave.boobs > 25000 + (slave.muscles * 100) && slave.physicalAge < 18) {
 		return true;
 	}
 	return false;
diff --git a/src/npc/descriptions/boobs/boobs.js b/src/npc/descriptions/boobs/boobs.js
index e21664dd48a..e878a4808c5 100644
--- a/src/npc/descriptions/boobs/boobs.js
+++ b/src/npc/descriptions/boobs/boobs.js
@@ -1340,7 +1340,7 @@ App.Desc.boobs = function() {
 				r += App.Desc.boobBits.format("%ADJ %NOUN, would fill %CUPs", slave.boobs);
 			}
 			r += '.';
-		} else if (slave.boobs < 5000 + (slave.muscles * 10) && slave.physicalAge <= 3) {
+		} else if (slave.boobs < 5000 + (slave.muscles * 20) && slave.physicalAge <= 3) {
 			if (V.showBoobCCs) {
 				r += App.Desc.boobBits.format("%ADJ %NOUN, %VOLUME CCs each, would fill %CUPs", slave.boobs);
 			} else {
@@ -1354,29 +1354,29 @@ App.Desc.boobs = function() {
 				r += App.Desc.boobBits.format("%ADJ %NOUN, would fill %CUPs", slave.boobs);
 			}
 			r += '.';
-		} else if (slave.boobs < 10000 + (slave.muscles * 20) && slave.physicalAge <= 12) {
-			r += `${App.Desc.boobBits.noun(slave.boobs, false)} have ${slave.boobsImplant ? 'been altered' : 'grown'} past pretense of proportion. `;
+		} else if (slave.boobs < 10000 + (slave.muscles * 50) && slave.physicalAge <= 12) {
+			r += `${App.Desc.boobBits.noun(slave.boobs, false)} have ${slave.boobsImplant / slave.boobs >= .50 ? 'been altered' : 'grown'} past pretense of proportion. `;
 			if (V.showBoobCCs) {
 				r += `At ${num(slave.boobs)} CCs each, they`;
 			} else {
 				r += 'They';
 			}
 			r += ` are so large that ${walkingAbility(slave)}`;
-		} else if (slave.boobs < 20000 + (slave.muscles * 50) && slave.physicalAge < 18 && slave.physicalAge >= 13) {
-			r += `${App.Desc.boobBits.noun(slave.boobs, false)} have ${slave.boobsImplant ? 'been altered' : 'grown'} past any pretense of proportion. `;
+		} else if (slave.boobs < 25000 + (slave.muscles * 10) && slave.physicalAge < 18 && slave.physicalAge >= 13) {
+			r += `${App.Desc.boobBits.noun(slave.boobs, false)} have ${slave.boobsImplant / slave.boobs >= .50 ? 'been altered' : 'grown'} past any pretense of proportion. `;
 			if (V.showBoobCCs) {
 				r += `At ${num(slave.boobs)} CCs each, they`;
 			} else {
 				r += 'They';
 			}
 			r += ` are so large that ${walkingAbility(slave)}`;
-		} else if (slave.boobs < 20000) {
+		} else if (slave.boobs < 25000) {
 			r += `${App.Desc.boobBits.noun(slave.boobs, false)}`;
 			if (V.showBoobCCs) {
 				r += `, at ${num(slave.boobs)} CCs each,`;
 			}
-			r += ` have ${slave.boobsImplant ? 'been altered' : 'grown'} past any pretense of proportion. `;
-		} else if (slave.boobs < 30000 + (slave.muscles * 100) && slave.physicalAge >= 18) {
+			r += ` have ${slave.boobsImplant / slave.boobs >= .50 ? 'been altered' : 'grown'} past any pretense of proportion. `;
+		} else if (slave.boobs < 40000 + (slave.muscles * 200) && slave.physicalAge >= 18) {
 			r += App.Desc.boobBits.noun(slave.boobs, false);
 			if (V.showBoobCCs) {
 				r += `, ${num(slave.boobs)} CCs each,`;
@@ -1432,13 +1432,15 @@ App.Desc.boobsExtra = function(slave, {market, eventDescription} = {}) {
 	function walkingRestrictions(dairyTest) {
 		let r = '';
 		if (slave.muscles > 95) {
-			r += `However, ${he} is so powerfully built that ${he} can manage it with effort, using ${his} `;
+			r += `However, ${he} is so powerfully built that ${he} can manage to support them using only ${his} rippling back muscles.`;
+		} else if (slave.muscles > 50) {
+			r += `However, ${he} is so buff ${he} can manage it with effort, using ${his} `;
 			if (hasBothArms(slave)) {
 				r += `arms`;
 			} else if (hasAnyArms(slave)) {
 				r += `arm`;
 			} else {
-				r += `powerful back muscles`;
+				r += `strong back muscles`;
 			}
 			r += ` to support them.`;
 		} else if (slave.muscles > 30) {
@@ -1451,7 +1453,7 @@ App.Desc.boobsExtra = function(slave, {market, eventDescription} = {}) {
 				}
 				r += ` to help take their weight.`;
 			} else {
-				r += `greatly hunched over to help take the weight of ${his} tits.`;
+				r += `hunched over due to the weight of ${his} tits.`;
 			}
 		} else if (slave.muscles > 5) {
 			r += `${He} requires assistance to get to ${his} feet, and uses a stand to support them when ${he} must remain upright for more than a short time.`;
@@ -1464,20 +1466,20 @@ App.Desc.boobsExtra = function(slave, {market, eventDescription} = {}) {
 	}
 
 	/**
-	 * @param {number} unmovableLimit
+	 * @param {number} sizeLimit
 	 * @param {number} bodySize
 	 * @param {number} dwarfSize
 	 * @param {slaveTestCallback} dairyTest
 	 * @returns {string}
 	 */
-	function livingRestrictions(unmovableLimit, bodySize, dwarfSize, dairyTest) {
+	function livingRestrictions(sizeLimit, bodySize, dwarfSize, dairyTest) {
 		let res = [];
-		if (slave.boobs > unmovableLimit) {
+		if (slave.boobs > sizeLimit) {
 			if (slave.fuckdoll > 0) {
 				res.push(`The difficulties of having gigantic breasts are much reduced for a Fuckdoll, since ${he}'s almost always restrained, stationary, or both.`);
 			} else {
 				if (canWalk(slave)) {
-					res.push(`${His} breasts are so massive that it is difficult for ${him} to move.`);
+					res.push(`${His} breasts are so heavy that it is difficult for ${him} to move.`);
 					res.push(walkingRestrictions(dairyTest));
 				} else if (slave.boobs >= dwarfSize) {
 					res.push(`They each dwarf ${him}, making ${him} mostly boob.`);
@@ -1486,7 +1488,7 @@ App.Desc.boobsExtra = function(slave, {market, eventDescription} = {}) {
 				} else {
 					res.push(`Together they are nearly the same size as ${his} torso, making ${him} about half boob.`);
 				}
-				if (slave.boobs >= 15000) {
+				if (slave.boobs >= 25000) {
 					if ((slave.assignment !== App.Data.Facilities.dairy.jobs.cow.assignment) || (V.dairyRestraintsSetting < 2)) {
 						res.push(penthouseAccessibility());
 					}
@@ -1500,10 +1502,14 @@ App.Desc.boobsExtra = function(slave, {market, eventDescription} = {}) {
 	if (thisArcology.FSGenderFundamentalistLawBeauty + thisArcology.FSGenderRadicalistLawBeauty > 0) {
 		if (slave.boobs > 12000) {
 			r.push("They're so large that the fashionable feminine ideal is a bad joke here.");
-		} else if (slave.boobs > 1600 && thisArcology.FSAssetExpansionist !== "unset") {
-			r.push("They're too big for the fashionable feminine ideal.");
-		} else if (slave.boobs > 800 && thisArcology.FSAssetExpansionist !== "unset") {
-			r.push("They're bigger than expected for the fashionable feminine ideal, but given the average bust size in your arcology, it's not a surprise.");
+		} else if (thisArcology.FSAssetExpansionist !== "unset") {
+			if (slave.boobs > 4300) {
+				r.push("They're too big for the fashionable feminine ideal.");
+			} else if (slave.boobs >= 1600) {
+				r.push("They're bigger than expected for the fashionable feminine ideal, but given the average bust size in your arcology, it's not a surprise.");
+			} else {
+				r.push("They're too small for the fashionable feminine ideal.");
+			}
 		} else if (slave.boobs > 800) {
 			r.push("They're too big for the fashionable feminine ideal.");
 		} else if (slave.boobs < 500) {
@@ -1519,14 +1525,15 @@ App.Desc.boobsExtra = function(slave, {market, eventDescription} = {}) {
 		}
 	}
 
+	// trouble moving, same size as body, dwarfs body, pins to milker
 	if (slave.physicalAge <= 3) {
-		r.push(livingRestrictions(4000, 10000, 40000, s => s.boobs > 5100 + (s.muscles * 100)));
+		r.push(livingRestrictions(4000, 10000, 40000, s => s.boobs > 5100 + (s.muscles * 20)));
 	} else if (slave.physicalAge <= 12) {
-		r.push(livingRestrictions(8000, 20000, 100000, s => s.boobs > 7000 + (s.muscles * 200)));
+		r.push(livingRestrictions(8000, 20000, 100000, s => s.boobs > 11000 + (s.muscles * 50)));
 	} else if (slave.physicalAge < 18) {
-		r.push(livingRestrictions(15000, 30000, 250000, s => s.boobs > 9000 + (s.muscles * 500)));
+		r.push(livingRestrictions(15000, 30000, 250000, s => s.boobs > 26000 + (s.muscles * 100)));
 	} else { // slave.physicalAge >= 18
-		r.push(livingRestrictions(20000, 40000, 500000, s => s.boobs > 12000));
+		r.push(livingRestrictions(25000, 40000, 500000, s => s.boobs > 45000 + (s.muscles * 200)));
 	}
 
 	if (slave.fuckdoll === 0) {
diff --git a/src/uncategorized/saLongTermEffects.tw b/src/uncategorized/saLongTermEffects.tw
index 69e7de5aa80..caed0e41db1 100644
--- a/src/uncategorized/saLongTermEffects.tw
+++ b/src/uncategorized/saLongTermEffects.tw
@@ -1,5 +1,6 @@
 :: SA long term effects [nobr]
 
+<<set _actualBreastSize = $slaves[$i].boobs-$slaves[$i].boobsImplants-$slaves[$i].boobsMilk>>
 <<set _fetishChangeChance = fetishChangeChance($slaves[$i])>>
 <<set _bellyAccessory = $slaves[$i].bellyAccessory>>
 <<if _bellyAccessory == "a support band">>
@@ -7631,7 +7632,7 @@
 	<<set $slaves[$i].geneticQuirks.macromastia = 2>>
 <</if>>
 <<if $slaves[$i].geneticQuirks.macromastia == 2 && $slaves[$i].geneticQuirks.gigantomastia == 2>>
-	<<if $slaves[$i].boobs < 100000 && $slaves[$i].weight >= -95>>
+	<<if _actualBreastSize < 100000 && $slaves[$i].weight >= -95>>
 		<<if $geneticMappingUpgrade >= 1>>
 			$His @@.lime;breasts expand@@ due to $his abnormal strain of gigantomastia.
 		<<else>>
@@ -7640,7 +7641,7 @@
 		<<set $slaves[$i].boobs += 30>>
 	<</if>>
 <<elseif $slaves[$i].geneticQuirks.gigantomastia == 2>>
-	<<if $slaves[$i].boobs < 25000 && $slaves[$i].weight >= -95>>
+	<<if _actualBreastSize < 25000 && $slaves[$i].weight >= -95>>
 		<<if $geneticMappingUpgrade >= 1>>
 			$His @@.lime;breasts expand@@ due to $his gigantomastia.
 		<<else>>
@@ -7649,7 +7650,7 @@
 		<<set $slaves[$i].boobs += 20>>
 	<</if>>
 <<elseif $slaves[$i].geneticQuirks.macromastia == 2>>
-	<<if $slaves[$i].boobs < 5000 && $slaves[$i].weight >= -95>>
+	<<if _actualBreastSize < 5000 && $slaves[$i].weight >= -95>>
 		<<if $geneticMappingUpgrade >= 1>>
 			$His @@.lime;breasts expand@@ due to $his macromastia.
 		<</if>>
@@ -7754,7 +7755,7 @@
 			<</if>>
 		<<elseif !canWalk($slaves[$i]) && ($slaves[$i].diet != "muscle building")>>
 			<<if $slaves[$i].muscles > -80>>
-				Since $he is incapable of moving $himself,
+				Since $he is effectively incapable of moving $himself,
 				<<if $universalRulesImmobileSlavesMaintainMuscles == 1 && $slaves[$i].muscles >= 0>>
 					and is required to maintain $his musculature, $he regularly lifts weights<<if (!hasAnyArms($slaves[$i]))>> with $his leg<<if hasBothLegs($slaves[$i])>>s<</if>><</if>> to stave off muscular atrophy.
 				<<elseif $slaves[$i].muscles >= -5>>
@@ -7768,11 +7769,11 @@
 		<</if>>
 	<</if>>
 	<<if $slaves[$i].physicalAge >= 18>>
-		<<if ($slaves[$i].boobs > 30000+($slaves[$i].muscles*100))>>
+		<<if (_actualBreastSize > 30000)>>
 			<<if ($slaves[$i].assignment != "work in the dairy") || ($dairyRestraintsSetting < 2) || $arcologies[0].FSAssetExpansionistResearch == 0>>
 				<<if (($slaves[$i].drugs != "breast injections") && ($slaves[$i].drugs != "intensive breast injections") && ($arcologies[0].FSAssetExpansionistResearch == 0))>>
 					<<if (($slaves[$i].bellyPreg < 300000) && ($slaves[$i].hormoneBalance < 300) && _gigantomastiaMod != 3)>>
-						<<if $slaves[$i].boobs < (30000+($slaves[$i].muscles*100))*2>>
+						<<if _actualBreastSize < 30000*2>>
 							$His breasts are larger than $his body can possibly sustain without industrial intervention, and they @@.orange;naturally lose mass.@@
 							<<set $slaves[$i].boobs -= 25>>
 						<<else>>
@@ -7781,14 +7782,14 @@
 						<</if>>
 						<<if (($slaves[$i].geneMods.NCS == 1) && (random(1,100) > 50*_gigantomastiaMod))>>
 							This effect is massively compounded by $his @@.orange;NCS.@@
-							<<set $slaves[$i].boobs -= Math.round($slaves[$i].boobs * .1)>>
+							<<set $slaves[$i].boobs -= Math.round(_actualBreastSize * .1)>>
 						<</if>>
 					<</if>>
 				<</if>>
 			<</if>>
 		<</if>>
 		<<if isSlaveAvailable($slaves[$i])>>
-			<<if ($slaves[$i].boobs > 40000)>> /* raise me later */
+			<<if ($slaves[$i].boobs > 40000 + ($slaves[$i].muscles * 200))>>
 				$His immense breasts are so big they pin $him to the floor, taking the weight off $his body.
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
 					$He's perfectly fine with dragging them along as a testament to how much $he's managed to grow.
@@ -7863,11 +7864,11 @@
 			<</if>>
 		<</if>>
 	<<elseif $slaves[$i].physicalAge <= 3>>
-		<<if ($slaves[$i].boobs > (_gigantomastiaMod == 2 ? 25000 : 5000)+($slaves[$i].muscles*10))>>
+		<<if (_actualBreastSize > (_gigantomastiaMod == 2 ? 25000 : 7000))>>
 			<<if ($slaves[$i].assignment != "work in the dairy") || ($dairyRestraintsSetting < 2) || $arcologies[0].FSAssetExpansionistResearch == 0>>
 				<<if ($slaves[$i].drugs != "breast injections" && $slaves[$i].drugs != "intensive breast injections" && $arcologies[0].FSAssetExpansionistResearch == 0)>>
 					<<if $slaves[$i].bellyPreg < 300000 && $slaves[$i].hormoneBalance < 300 && _gigantomastiaMod != 3>>
-						<<if $slaves[$i].boobs < ((_gigantomastiaMod == 2 ? 25000 : 5000)+($slaves[$i].muscles*10))*2>>
+						<<if _actualBreastSize < (_gigantomastiaMod == 2 ? 25000 : 7000)*2>>
 							$His breasts are larger than $his body can possibly sustain without industrial intervention, and they @@.orange;naturally lose mass.@@
 							<<set $slaves[$i].boobs -= 25>>
 						<<else>>
@@ -7876,7 +7877,7 @@
 						<</if>>
 						<<if (($slaves[$i].geneMods.NCS == 1) && (random(1,100) > 50))>>
 							This effect is compounded by $his @@.orange;NCS.@@
-							<<set $slaves[$i].boobs -= Math.round($slaves[$i].boobs * .1)>>
+							<<set $slaves[$i].boobs -= Math.round(_actualBreastSize * .1)>>
 						<</if>>
 					<</if>>
 				<</if>>
@@ -7895,17 +7896,7 @@
 				<<else>>
 					$He finds pulling them along a big burden, but $his devotion to you is far stronger than $his discomfort.
 				<</if>>
-			<<elseif ($slaves[$i].boobs > 6000)>>
-				$His giant breasts are so big they pin $him to the floor, taking the weight off $his tiny body.
-				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					$He's perfectly fine with dragging them along as a testament to how much $he's managed to grow.
-				<<elseif $slaves[$i].devotion <= 50>>
-					$He finds pulling them along @@.mediumorchid;mildly annoying.@@
-					<<set $slaves[$i].devotion -= 1>>
-				<<else>>
-					$He finds pulling them along a little annoying, but your will is far more important to $him.
-				<</if>>
-			<<elseif ($slaves[$i].boobs > 5000)>>
+			<<elseif ($slaves[$i].boobs > 4700 + ($slaves[$i].muscles * 20))>>
 				<<if canWalk($slaves[$i])>>
 					<<if $slaves[$i].sexualFlaw == "breast growth">>
 						$His giant tits are debilitatingly big and a constant reminder of $his progress. No amount of discomfort or pain could dissuade $him from going bigger.
@@ -7924,6 +7915,16 @@
 					<<else>>
 						$His giant tits are debilitatingly big. $He does everything $he can to keep comfortable and pain free as to not bother you.
 					<</if>>
+				<<else>>
+					$His giant breasts are so big they pin $him to the floor, taking the weight off $his tiny body.
+					<<if $slaves[$i].sexualFlaw == "breast growth">>
+						$He's perfectly fine with dragging them along as a testament to how much $he's managed to grow.
+					<<elseif $slaves[$i].devotion <= 50>>
+						$He finds pulling them along @@.mediumorchid;mildly annoying.@@
+						<<set $slaves[$i].devotion -= 1>>
+					<<else>>
+						$He finds pulling them along a little annoying, but your will is far more important to $him.
+					<</if>>
 				<</if>>
 			<<elseif ($slaves[$i].boobs > 2500)>>
 				<<if ($slaves[$i].muscles <= 80)>>
@@ -7968,11 +7969,11 @@
 			<</if>>
 		<</if>>
 	<<elseif $slaves[$i].physicalAge <= 12>>
-		<<if ($slaves[$i].boobs > (_gigantomastiaMod == 2 ? 25000 : 10000)+($slaves[$i].muscles*20))>>
+		<<if (_actualBreastSize > (_gigantomastiaMod == 2 ? 25000 : 15000))>>
 			<<if ($slaves[$i].assignment != "work in the dairy") || ($dairyRestraintsSetting < 2) || $arcologies[0].FSAssetExpansionistResearch == 0>>
 				<<if ($slaves[$i].drugs != "breast injections" && $slaves[$i].drugs != "intensive breast injections" && $arcologies[0].FSAssetExpansionistResearch == 0)>>
 					<<if $slaves[$i].bellyPreg < 300000 && $slaves[$i].hormoneBalance < 300 && _gigantomastiaMod != 3>>
-						<<if ($slaves[$i].boobs > (_gigantomastiaMod == 2 ? 25000 : 10000)+($slaves[$i].muscles*20))>>
+						<<if (_actualBreastSize > (_gigantomastiaMod == 2 ? 25000 : 15000)*2)>>
 							$His breasts are larger than $his body can possibly sustain without industrial intervention, and they @@.orange;naturally lose mass.@@
 							<<set $slaves[$i].boobs -= 25>>
 						<<else>>
@@ -7981,7 +7982,7 @@
 						<</if>>
 						<<if (($slaves[$i].geneMods.NCS == 1) && (random(1,100) > 50))>>
 							This effect is compounded by $his @@.orange;NCS.@@
-							<<set $slaves[$i].boobs -= Math.round($slaves[$i].boobs * .1)>>
+							<<set $slaves[$i].boobs -= Math.round(_actualBreastSize * .1)>>
 						<</if>>
 					<</if>>
 				<</if>>
@@ -7998,17 +7999,7 @@
 				<<else>>
 					$He finds pulling them along a burden, but $his devotion to you is far stronger than $his discomfort.
 				<</if>>
-			<<elseif ($slaves[$i].boobs > 12000)>>
-				$His giant breasts are so big they pin $him to the floor, taking the weight off $his young body.
-				<<if $slaves[$i].sexualFlaw == "breast growth">>
-					$He's perfectly fine with dragging them along as a testament to how much $he's managed to grow.
-				<<elseif $slaves[$i].devotion <= 50>>
-					$He finds pulling them along @@.mediumorchid;mildly annoying.@@
-					<<set $slaves[$i].devotion -= 1>>
-				<<else>>
-					$He finds pulling them along a little annoying, but your will is far more important to $him.
-				<</if>>
-			<<elseif ($slaves[$i].boobs > 10000)>>
+			<<elseif ($slaves[$i].boobs > 9500 + ($slaves[$i].muscles * 50))>>
 				<<if canWalk($slaves[$i])>>
 					$His giant tits are debilitatingly big.
 					<<if $slaves[$i].sexualFlaw == "breast growth">>
@@ -8028,6 +8019,16 @@
 					<<else>>
 						$He does $his best to not let them get the better of $his youthful body.
 					<</if>>
+				<<else>>
+					$His giant breasts are so big they pin $him to the floor, taking the weight off $his young body.
+					<<if $slaves[$i].sexualFlaw == "breast growth">>
+						$He's perfectly fine with dragging them along as a testament to how much $he's managed to grow.
+					<<elseif $slaves[$i].devotion <= 50>>
+						$He finds pulling them along @@.mediumorchid;mildly annoying.@@
+						<<set $slaves[$i].devotion -= 1>>
+					<<else>>
+						$He finds pulling them along a little annoying, but your will is far more important to $him.
+					<</if>>
 				<</if>>
 			<<elseif ($slaves[$i].boobs > 5000)>>
 				<<if ($slaves[$i].muscles <= 80)>>
@@ -8074,11 +8075,11 @@
 			<</if>>
 		<</if>>
 	<<else>>
-		<<if ($slaves[$i].boobs > (_gigantomastiaMod == 2 ? 40000 : 20000)+($slaves[$i].muscles*50))>>
+		<<if (_actualBreastSize > 30000>>
 			<<if ($slaves[$i].assignment != "work in the dairy") || ($dairyRestraintsSetting < 2) || $arcologies[0].FSAssetExpansionistResearch == 0>>
 				<<if ($slaves[$i].drugs != "breast injections" && $slaves[$i].drugs != "intensive breast injections" && $arcologies[0].FSAssetExpansionistResearch == 0)>>
 					<<if $slaves[$i].bellyPreg < 300000 && $slaves[$i].hormoneBalance < 300 && _gigantomastiaMod != 3>>
-						<<if ($slaves[$i].boobs > (_gigantomastiaMod == 2 ? 40000 : 20000)+($slaves[$i].muscles*50))>>
+						<<if (_actualBreastSize > 30000 * 2>>
 							$His breasts are larger than $his body can possibly sustain without industrial intervention, and they @@.orange;naturally lose mass.@@
 							<<set $slaves[$i].boobs -= 25>>
 						<<else>>
@@ -8087,14 +8088,14 @@
 						<</if>>
 						<<if (($slaves[$i].geneMods.NCS == 1) && (random(1,100) > 50))>>
 							This effect is compounded by $his @@.orange;NCS.@@
-							<<set $slaves[$i].boobs -= Math.round($slaves[$i].boobs * .1)>>
+							<<set $slaves[$i].boobs -= Math.round(_actualBreastSize * .1)>>
 						<</if>>
 					<</if>>
 				<</if>>
 			<</if>>
 		<</if>>
 		<<if isSlaveAvailable($slaves[$i])>>
-			<<if ($slaves[$i].boobs > 25000)>>
+			<<if ($slaves[$i].boobs > 25000 + ($slaves[$i].muscles * 100))>>
 				$His immense breasts are so big they pin $him to the floor, taking the weight off $his youthful body.
 				<<if $slaves[$i].sexualFlaw == "breast growth">>
 					$He's perfectly fine with dragging them along as a testament to how much $he's managed to grow.
-- 
GitLab