From c2a388f1f036e5fb4ba3e5a14a6e70fa422d98a3 Mon Sep 17 00:00:00 2001
From: Vasileios Pasialiokis <whiterocket@outlook.com>
Date: Fri, 29 Jun 2018 22:46:49 +0300
Subject: [PATCH] more bugs

---
 src/js/DefaultRules.tw          | 107 ++++++++++++++++----------------
 src/js/rulesAssistantOptions.tw |   6 +-
 2 files changed, 55 insertions(+), 58 deletions(-)

diff --git a/src/js/DefaultRules.tw b/src/js/DefaultRules.tw
index 7760a72717b..fcfdba60287 100644
--- a/src/js/DefaultRules.tw
+++ b/src/js/DefaultRules.tw
@@ -1098,65 +1098,62 @@ window.DefaultRules = (function() {
 
 	function ProcessOtherDrugs(slave, rule) {
 		// Other Drugs 
-		const drugs = new Set(["psychosuppressants", "no drugs", "steroids", "hormone enhancers", "hormone blockers", "anti-aging cream", "growth stimulants", "sag-B-gone", "male hormone injections", "female hormone injections", "none"]);
-		if (drugs.has(rule.drug)) {
-			if (drugs.has(slave.drugs) && (slave.drugs != rule.drug)) {
-				switch (rule.drug) {
-				case "anti-aging cream":
-					if (slave.visualAge > 18) {
-						slave.drugs = rule.drug ;
-						r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
-					} else {
-						slave.drugs = "no drugs" ;
-						r += `<br>${slave.slaveName} cannot benefit from her assigned drug and has been defaulted to ${slave.drugs}.`;
-					}
-					break;
-
-				case "growth stimulants":
-					if (slave.height < 274 && slave.height < Math.clamp((Height.mean(slave) * 1.25),0,274)) {
-						slave.drugs = rule.drug;
-						r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
-					} else {
-						slave.drugs = "no drugs";
-						r += `<br>${slave.slaveName} cannot benefit from her assigned drug and has been defaulted to ${slave.drugs}.`;
-					}
-					break;
+		if (rule.drug !== "no default setting" && slave.drugs !== rule.drug) {
+			switch (rule.drug) {
+			case "anti-aging cream":
+				if (slave.visualAge > 18) {
+					slave.drugs = rule.drug ;
+					r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
+				} else {
+					slave.drugs = "no drugs" ;
+					r += `<br>${slave.slaveName} cannot benefit from her assigned drug and has been defaulted to ${slave.drugs}.`;
+				}
+				break;
 
-				case "sag-B-gone":
-					if (slave.boobs > 250 && slave.boobShape != "saggy") {
-						slave.drugs = rule.drug;
-						r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
-					} else {
-						slave.drugs = "no drugs";
-						r += `<br>${slave.slaveName} cannot benefit from her assigned drug and has been defaulted to ${slave.drugs}.`;
-					}
-					break;
+			case "growth stimulants":
+				if (slave.height < 274 && slave.height < Math.clamp((Height.mean(slave) * 1.25),0,274)) {
+					slave.drugs = rule.drug;
+					r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
+				} else {
+					slave.drugs = "no drugs";
+					r += `<br>${slave.slaveName} cannot benefit from her assigned drug and has been defaulted to ${slave.drugs}.`;
+				}
+				break;
 
-				case "female hormone injections":
-					if (slave.breedingMark != 1 && (slave.ovaries == 1 || slave.mpreg == 1) && slave.pubertyXX === 0) {
-						slave.drugs = rule.drug ;
-						r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
-					} else {
-						slave.drugs = "no drugs";
-						r += `<br>${slave.slaveName} cannot benefit from her assigned drug and has been defaulted to ${slave.drugs}.`;
-					}
-					break;
+			case "sag-B-gone":
+				if (slave.boobs > 250 && slave.boobShape != "saggy") {
+					slave.drugs = rule.drug;
+					r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
+				} else {
+					slave.drugs = "no drugs";
+					r += `<br>${slave.slaveName} cannot benefit from her assigned drug and has been defaulted to ${slave.drugs}.`;
+				}
+				break;
 
-				case "male hormone injections":
-					if (slave.breedingMark != 1 && slave.balls > 0 && slave.pubertyXY === 0) {
-						slave.drugs = rule.drug ;
-						r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
-					} else {
-						slave.drugs = "no drugs";
-						r += `<br>${slave.slaveName} cannot benefit from her assigned drug and has been defaulted to ${slave.drugs}.`;
-					}
-					break;
+			case "female hormone injections":
+				if (slave.breedingMark != 1 && (slave.ovaries == 1 || slave.mpreg == 1) && slave.pubertyXX === 0) {
+					slave.drugs = rule.drug ;
+					r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
+				} else {
+					slave.drugs = "no drugs";
+					r += `<br>${slave.slaveName} cannot benefit from her assigned drug and has been defaulted to ${slave.drugs}.`;
+				}
+				break;
 
-				default:
-					slave.drugs = rule.drug;
+			case "male hormone injections":
+				if (slave.breedingMark != 1 && slave.balls > 0 && slave.pubertyXY === 0) {
+					slave.drugs = rule.drug ;
 					r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
-					break;
+				} else {
+					slave.drugs = "no drugs";
+					r += `<br>${slave.slaveName} cannot benefit from her assigned drug and has been defaulted to ${slave.drugs}.`;
 				}
+				break;
+
+			default:
+				slave.drugs = rule.drug;
+				r += `<br>${slave.slaveName} has been put on ${slave.drugs}.`;
+				break;
 			}
 		}
 	}
@@ -1330,10 +1327,10 @@ window.DefaultRules = (function() {
 			}
 		}
 
-		if (slave.drugs === "appetite suppressors" && slave.diet !== "slimming") {
+		if (slave.drugs === "appetite suppressors" && slave.diet !== "restricted") {
 			slave.drugs = "no drugs";
 			r += `<br>${slave.slaveName} is no longer losing weight, so she's no longer being given appetite suppressors.`;
-		} else if (slave.diet === "slimming" && V.arcologies[0].FSSlimnessEnthusiastResearch == 1 && (slave.drugs == "no drugs" || slave.drugs == "none")) {
+		} else if (slave.diet === "restricted" && V.arcologies[0].FSSlimnessEnthusiastResearch == 1 && (slave.drugs == "no drugs" || slave.drugs == "none")) {
 			slave.drugs = "appetite suppressors";
 			r += `<br>${slave.slaveName} is losing weight so she will be given weight loss pills.`;
 		}
diff --git a/src/js/rulesAssistantOptions.tw b/src/js/rulesAssistantOptions.tw
index c9410d4cc87..8b54164871a 100644
--- a/src/js/rulesAssistantOptions.tw
+++ b/src/js/rulesAssistantOptions.tw
@@ -644,7 +644,7 @@ window.rulesAssistantOptions = (function() {
 			const elem = document.createElement("div");
 			const textarea = document.createElement("textarea");
 			textarea.innerHTML = data;
-			textarea.onblur = () => current_rule.condition.data = elem.value;
+			textarea.onblur = () => current_rule.condition.data = textarea.value;
 			elem.appendChild(textarea);
 			const explanation = document.createElement("div");
 			explanation.innerHTML = "Insert a valid <a target='_blank' class='link-external' href='https://www.w3schools.com/js/js_comparisons.asp'>JavaScript comparison and/or logical operation</a>.";
@@ -1616,9 +1616,9 @@ window.rulesAssistantOptions = (function() {
 			}
 			if (V.purchasedSagBGone === 1)
 				drugs.push(["Sag-B-gone (Product)", "sag-B-gone"]);
-			if (V.arcologies[0].FSSlimnessEnthusiast === 1)
+			if (V.arcologies[0].FSSlimnessEnthusiastResearch === 1)
 				drugs.push(["Weight loss pills (FS)", "appetite suppressors"]);
-			if (V.arcologies[0].FSYouthPreferentialist === 1)
+			if (V.arcologies[0].FSYouthPreferentialistResearch === 1)
 				drugs.push(["Anti-aging cream (FS)", "anti-aging cream"]);
 			if (V.seeHyperPreg === 1 && V.superFertilityDrugs === 1)
 				drugs.push(["Super fertility drugs", "super fertility drugs"]);
-- 
GitLab