From f1c39dff8a02d8859eafa10f668e494938f9a8e1 Mon Sep 17 00:00:00 2001
From: lowercasedonkey <lowercasedonkey@gmail.com>
Date: Sun, 10 Jan 2021 12:22:28 -0500
Subject: [PATCH] integrate servant gates into the standard check

---
 src/js/eventSelectionJS.js | 105 ++++++++++++++++++++++++++-----------
 1 file changed, 75 insertions(+), 30 deletions(-)

diff --git a/src/js/eventSelectionJS.js b/src/js/eventSelectionJS.js
index de1809507cc..ca88fca26ee 100644
--- a/src/js/eventSelectionJS.js
+++ b/src/js/eventSelectionJS.js
@@ -48,6 +48,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 					}
 				}
 
+				if (eventSlave.assignment !== Job.QUARTER) {
 				if (eventSlave.skill.entertainment >= 60 || ["a ballerina", "a camgirl", "a camwhore", "a cheerleader", "a classical dancer", "a dancer", "a house DJ", "a party girl", "an aspiring pop star", "an exotic dancer", "an idol"].includes(eventSlave.career)) {
 					if (canHear(eventSlave)) {
 						if (eventSlave.health.condition > 40) {
@@ -71,18 +72,19 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 						}
 					}
 				}
+				}
 
 				if (V.assistant.personality === 1) {
 					if (V.assistant.appearance !== "normal") {
 						if (eventSlave.devotion >= -20) {
 							if (canSee(eventSlave)) {
 								if (eventSlave.devotion <= 50) {
-									if (eventSlave.assignment === Job.HOUSE) {
+									if (eventSlave.assignment === Job.HOUSE || eventSlave.assignment === Job.QUARTER) {
 										if (canDoAnal(eventSlave) || canDoVaginal(eventSlave)) {
 											V.RESSevent.push("PA servant");
 										}
 									}
-								} else if (eventSlave.trust > 75) {
+								} else if (eventSlave.trust > 75 && eventSlave.assignment !== Job.QUARTER) {
 									if (eventSlave.energy > 60) {
 										if ((canDoAnal(eventSlave) && eventSlave.anus > 0) || (canDoVaginal(eventSlave) && eventSlave.vagina > 0)) {
 											V.RESSevent.push("PA flirting");
@@ -94,6 +96,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 					}
 				}
 
+				if (eventSlave.assignment !== Job.QUARTER) {
 				if (eventSlave.clothes === "a succubus outfit") {
 					if (eventSlave.devotion > 20) {
 						if (eventSlave.trust > 20) {
@@ -101,6 +104,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 						}
 					}
 				}
+			}
 
 				if (V.HeadGirlID !== 0) {
 					if (eventSlave.devotion <= 50) {
@@ -111,11 +115,13 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 							V.events.push("RE shower punishment");
 						}
 					}
+					if (eventSlave.assignment !== Job.QUARTER) {
 					if (eventSlave.ID === V.HeadGirlID) {
 						if (eventSlave.trust > 50) {
 							V.RESSevent.push("trusting HG");
 						}
 					}
+
 					if (eventSlave.ID !== V.HeadGirlID) {
 						if (canSee(eventSlave) && canWalk(eventSlave)) {
 							if (eventSlave.rules.speech !== "restrictive") {
@@ -134,7 +140,9 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 						}
 					}
 				}
+				}
 
+				if (eventSlave.assignment !== Job.QUARTER) {
 				if (eventSlave.rules.living === "spare") {
 					if (eventSlave.devotion <= 20) {
 						if (eventSlave.devotion > -10) {
@@ -161,6 +169,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 						}
 					}
 				}
+			}
 
 				if (V.RETasteTestSubIDs.length > 1) {
 					if (eventSlave.rules.living === "luxurious") {
@@ -174,6 +183,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 					}
 				}
 
+				if (eventSlave.assignment !== Job.QUARTER) {
 				if (V.modRequestsAllowed > 0) {
 					if (eventSlave.trust > 50) {
 						if (eventSlave.devotion > 20) {
@@ -252,6 +262,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 						}
 					}
 				}
+			}
 
 				if (V.weatherToday.severity <= 1) {
 					if (eventSlave.trust > 50) {
@@ -279,6 +290,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 					}
 				}
 
+if (eventSlave.assignment !== Job.QUARTER) {
 				if (eventSlave.relationship >= 2) {
 					if (eventSlave.relationship < 5) {
 						if (eventSlave.devotion > 20) {
@@ -288,14 +300,19 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 						}
 					}
 				}
+			}
 
 				if (eventSlave.devotion > 50) {
 					if (eventSlave.anus > 0) {
 						if (eventSlave.vagina !== 0) {
 							if (eventSlave.trust > 20) {
-								V.RESSevent.push("devoted exhibition");
+								if (eventSlave.assignment !== Job.QUARTER) {
+									V.RESSevent.push("devoted exhibition");
+								}
 								V.RESSevent.push("devoted lotion");
 							}
+
+							if (eventSlave.assignment !== Job.QUARTER) {
 							if (eventSlave.energy > 95 && canDoAnal(eventSlave)) {
 								V.RESSevent.push("devoted nympho");
 							}
@@ -307,16 +324,23 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 								}
 							}
 						}
+						}
 					}
 				}
 
-				if (eventSlave.trust < -50) {
-					if (eventSlave.devotion <= 20) {
-						V.RESSevent.push("terrified inspection");
+				if (eventSlave.assignment === Job.QUARTER) {
+					if (eventSlave.devotion <= 95) {
+						if (eventSlave.intelligence + eventSlave.intelligenceImplant < -50) {
+							V.RESSevent.push("cooler lockin");
+						}
 					}
-				}
-
-				/*
+				} else {
+					if (eventSlave.trust < -50) {
+						if (eventSlave.devotion <= 20) {
+							V.RESSevent.push("terrified inspection");
+						}
+					}
+									/*
 				if(eventSlave.drugs === "breast injections") {
 					if(eventSlave.anus > 0 || eventSlave.vagina > 0) {
 						if(eventSlave.devotion <= 50) {
@@ -339,6 +363,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 						}
 					}
 				}
+				}
 
 				if (V.universalRulesConsent === 0) {
 					if (eventSlave.devotion > 50) {
@@ -360,6 +385,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 					}
 				}
 
+				if (eventSlave.assignment !== Job.QUARTER) {
 				if (eventSlave.devotion < -50) {
 					if (eventSlave.trust >= -20) {
 						if (eventSlave.rules.speech === "restrictive") {
@@ -367,6 +393,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 						}
 					}
 				}
+			}
 
 				if (V.boobAccessibility !== 1 && V.ballsAccessibility !== 1 && V.pregAccessibility !== 1) {
 					if (eventSlave.boobs > 10000) {
@@ -380,6 +407,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 					}
 				}
 
+				if (eventSlave.assignment !== Job.QUARTER) {
 				if (eventSlave.physicalAge > 30) {
 					if (eventSlave.ageImplant > 0) {
 						if (eventSlave.devotion > 20) {
@@ -387,6 +415,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 						}
 					}
 				}
+			}
 
 				if (V.seeAge !== 0) {
 					if (eventSlave.devotion > 50) {
@@ -406,6 +435,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 					}
 				}
 
+				if (eventSlave.assignment !== Job.QUARTER) {
 				if (eventSlave.clothes === "a penitent nuns habit") {
 					if (eventSlave.anus > 0) {
 						if (eventSlave.devotion >= -20) {
@@ -415,6 +445,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 						}
 					}
 				}
+			}
 
 				if (eventSlave.slaveName !== eventSlave.birthName && eventSlave.birthName !== "") {
 					if (eventSlave.devotion <= 20) {
@@ -539,7 +570,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 						}
 					}
 				}
-
+				if (eventSlave.assignment !== Job.QUARTER) {
 				if (eventSlave.drugs === "intensive breast injections" || eventSlave.drugs === "hyper breast injections") {
 					if (eventSlave.boobs <= 8000) {
 						if (eventSlave.boobs > 2000) {
@@ -577,7 +608,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 						}
 					}
 				}
-
+			}
 				if (eventSlave.fetish === "sadist") {
 					if (eventSlave.fetishStrength > 20) {
 						if (App.Entity.facilities.arcade.established) {
@@ -591,7 +622,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 						}
 					}
 				}
-
+				if (eventSlave.assignment !== Job.QUARTER) {
 				if (eventSlave.dick === 0) {
 					if (eventSlave.vagina === -1) {
 						if (canDoAnal(eventSlave)) {
@@ -625,7 +656,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 						}
 					}
 				}
-
+			}
 				if (V.PC.vagina > -1) {
 					if (eventSlave.devotion <= 20) {
 						if ((eventSlave.trust >= -20 && eventSlave.behavioralFlaw === "arrogant") || (eventSlave.trust > 20)) {
@@ -651,6 +682,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 				}
 			}
 
+			if (eventSlave.assignment !== Job.QUARTER) {
 			if (eventSlave.devotion <= 20) {
 				if (eventSlave.trust <= -20) {
 					if (eventSlave.genes === "XY") {
@@ -666,7 +698,8 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 					}
 				}
 			}
-
+		}
+		
 			if (V.seeAge === 1) {
 				if (eventSlave.actualAge < 18) {
 					if (eventSlave.devotion > 20) {
@@ -698,7 +731,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 					V.events.push("RE standard punishment");
 				}
 			}
-
+			if (eventSlave.assignment !== Job.QUARTER) {
 			if (eventSlave.boobs > 600) {
 				if (eventSlave.boobShape === "torpedo-shaped") {
 					if (eventSlave.devotion >= -50) {
@@ -730,7 +763,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 					}
 				}
 			}
-
+		}
 			if (eventSlave.trust > 20) {
 				if (eventSlave.devotion > 50) {
 					if (V.PC.belly < 5000) {
@@ -813,7 +846,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 					}
 				}
 			}
-
+			if (eventSlave.assignment !== Job.QUARTER) {
 			if (eventSlave.voice > 0) {
 				if (eventSlave.lips <= 95) {
 					if (eventSlave.mouthAccessory === "none") {
@@ -829,6 +862,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 					}
 				}
 			}
+		}
 
 			if (eventSlave.trust <= 20) {
 				if (eventSlave.trust >= -75) {
@@ -839,7 +873,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 					}
 				}
 			}
-
+			if (eventSlave.assignment !== Job.QUARTER) {
 			if (eventSlave.boobs >= 2000) {
 				if (eventSlave.boobsImplant === 0) {
 					if (eventSlave.nipples !== "tiny" && eventSlave.nipples !== "fuckable") {
@@ -857,6 +891,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 					}
 				}
 			}
+		}
 
 			if (eventSlave.devotion < -20) {
 				if (eventSlave.trust >= -20) {
@@ -933,6 +968,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 				}
 			}
 
+			if (eventSlave.assignment !== Job.QUARTER) {
 			if (eventSlave.skill.entertainment >= 100) {
 				if (eventSlave.trust > 50) {
 					if (eventSlave.assignment === Job.PUBLIC) {
@@ -948,6 +984,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 					}
 				}
 			}
+		}
 
 			if (eventSlave.dick > 0) {
 				if (eventSlave.balls === 0) {
@@ -1088,15 +1125,13 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 				}
 			}
 
+			if (eventSlave.assignment !== Job.QUARTER) {
 			if (eventSlave.rules.speech === "restrictive") {
 				if (eventSlave.devotion > 60) {
 					if (eventSlave.trust >= -20) {
 						V.RESSevent.push("restricted profession");
 					}
 				}
-			}
-
-			if (eventSlave.rules.speech === "restrictive") {
 				if (eventSlave.intelligence > 15) {
 					if (eventSlave.trust >= -20) {
 						if (eventSlave.devotion <= 20) {
@@ -1105,6 +1140,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 					}
 				}
 			}
+		}
 
 			if (V.expansionRequestsAllowed > 0) {
 				if (eventSlave.drugs === "no drugs") {
@@ -1122,12 +1158,13 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 				}
 			}
 		} /* closes mute exempt */
-
+		if (eventSlave.assignment !== Job.QUARTER) {
 		if (eventSlave.boobs > 25000) {
 			if (eventSlave.belly < 100000) {
 				V.RESSevent.push("tittymonster inspection");
 			}
 		}
+	}
 
 		if (V.assistant.personality === 1) {
 			if (eventSlave.fetishKnown === 1) {
@@ -1141,6 +1178,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 			}
 		}
 
+		if (eventSlave.assignment !== Job.QUARTER) {
 		if (eventSlave.devotion > 50) {
 			if (eventSlave.trust > 50) {
 				if ([Job.CONCUBINE, Job.FUCKTOY, Job.MASTERSUITE].includes(eventSlave.assignment)) {
@@ -1148,6 +1186,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 				}
 			}
 		}
+	}
 
 		if (eventSlave.minorInjury === "sore ass") {
 			if (eventSlave.devotion <= 50) {
@@ -1163,6 +1202,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 			}
 		}
 
+		if (eventSlave.assignment !== Job.QUARTER) {
 		if (V.seeExtreme === 1) {
 			if (eventSlave.balls > 1) {
 				if (eventSlave.scrotum > 0) {
@@ -1176,21 +1216,21 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 				}
 			}
 		}
+	}
 
+	if (eventSlave.assignment === Job.QUARTER || eventSlave.assignment === Job.HOUSE) {
 		if (eventSlave.devotion <= 50) {
-			if (eventSlave.assignment === Job.QUARTER || eventSlave.assignment === Job.HOUSE) {
-				V.RESSevent.push("scrubbing");
-			}
+			V.RESSevent.push("scrubbing");
 		}
 
 		if (eventSlave.devotion <= 20) {
-			if (eventSlave.assignment === Job.QUARTER || eventSlave.assignment === Job.HOUSE) {
-				if (eventSlave.clothes === "a slutty maid outfit" || eventSlave.clothes === "a nice maid outfit") {
-					V.RESSevent.push("servant maid");
-				}
+			if (eventSlave.clothes === "a slutty maid outfit" || eventSlave.clothes === "a nice maid outfit") {
+				V.RESSevent.push("servant maid");
 			}
 		}
+	}
 
+	if (eventSlave.assignment !== Job.QUARTER) {
 		if (eventSlave.rules.speech !== "restrictive") {
 			if (canDoVaginal(eventSlave)) {
 				if (eventSlave.fetish !== "buttslut") {
@@ -1204,6 +1244,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 				}
 			}
 		}
+	}
 
 		if (eventSlave.aphrodisiacs > 1 || eventSlave.inflationType === "aphrodisiac") {
 			if (eventSlave.rules.speech === "restrictive" && eventSlave.rules.release.master === 1 && App.Utils.releaseRestricted(eventSlave)) {
@@ -1257,6 +1298,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 			}
 		}
 
+		if (eventSlave.assignment !== Job.QUARTER) {
 		if (isAmputee(eventSlave)) {
 			if (eventSlave.devotion > 20) {
 				if (eventSlave.anus > 0 && canDoAnal(eventSlave)) {
@@ -1267,6 +1309,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 				V.RESSevent.push("resting amp");
 			}
 		}
+	}
 
 		if (eventSlave.boobs > 1200) {
 			if (eventSlave.areolaeShape !== "circle") {
@@ -1276,6 +1319,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 			}
 		}
 
+		if (eventSlave.assignment !== Job.QUARTER) {
 		if (eventSlave.behavioralFlaw === "arrogant") {
 			if (eventSlave.devotion < -50) {
 				if (eventSlave.trust >= -50) {
@@ -1283,6 +1327,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 				}
 			}
 		}
+	}
 
 		if (V.seePreg !== 0) {
 			if (eventSlave.bellyPreg >= 10000) {
@@ -1354,7 +1399,7 @@ globalThis.generateRandomEventPoolStandard = function(eventSlave) {
 			}
 		}
 
-		if (eventSlave.prestige === 0) {
+		if (eventSlave.prestige === 0 && eventSlave.assignment !== Job.QUARTER) {
 			if (eventSlave.devotion > 50) {
 				if (eventSlave.trust > 50) {
 					if (eventSlave.skill.entertainment >= 100) {
-- 
GitLab