From 663cd546285a76cc23baee06ce39687707de5e57 Mon Sep 17 00:00:00 2001
From: Skriv <skrivelese@gmail.com>
Date: Wed, 26 May 2021 01:37:02 +0000
Subject: [PATCH] RESS impregnation please to js

---
 src/events/RESS/impregnationPlease.js | 499 ++++++++++++++++++++++++++
 src/events/randomEvent.js             |   1 +
 src/js/eventSelectionJS.js            |  26 --
 src/uncategorized/RESS.tw             | 278 --------------
 4 files changed, 500 insertions(+), 304 deletions(-)
 create mode 100644 src/events/RESS/impregnationPlease.js

diff --git a/src/events/RESS/impregnationPlease.js b/src/events/RESS/impregnationPlease.js
new file mode 100644
index 00000000000..f843244da80
--- /dev/null
+++ b/src/events/RESS/impregnationPlease.js
@@ -0,0 +1,499 @@
+App.Events.RESSImpregnationPlease = class RESSImpregnationPlease extends App.Events.BaseEvent {
+	eventPrerequisites() {
+		return [
+			() => V.seePreg !== 0,
+			() => V.PC.dick !== 0,
+		]; // always valid if sufficient actors can be cast successfully
+	}
+
+	actorPrerequisites() {
+		return [
+			[ // single event slave
+				s => s.fetish !== "mindbroken",
+				s => (s.fetish === "pregnancy" || s.energy > 95),
+				s => s.devotion > 50,
+				s => s.vagina !== 0,
+				s => s.anus > 0,
+				hasAnyArms,
+				hasAnyLegs,
+				isFertile,
+				s => s.eggType === "human",
+				s => s.fetishKnown === 1,
+				s => !(s.geneticQuirks.superfetation === 2 && (s.intelligence + s.intelligenceImplant > 15) && s.womb.length > 0) || (s.belly < (s.pregAdaptation * 1750)) // Material conditional: only false if first condition is true and second is false
+			]
+		];
+	}
+
+	execute(node) {
+		/** @type {Array<App.Entity.SlaveState>} */
+		let [eventSlave] = this.actors.map(a => getSlave(a));
+		const {His, He, he, his, him, himself} = getPronouns(eventSlave);
+		const {title: Master} = getEnunciation(eventSlave);
+		const belly = bellyAdjective(eventSlave);
+
+		V.nextLink = "Next Week";
+
+		App.Events.drawEventArt(node, eventSlave);
+
+		let isFaceUp = true;
+		const isPregnantAndSuperfetation = (eventSlave.geneticQuirks.superfetation === 2 && eventSlave.pregKnown === 1);
+
+		let r = [];
+		r.push(App.UI.DOM.slaveDescriptionDialog(eventSlave)); // TODO: Integrate contextualIntro somewhere
+		if (isPregnantAndSuperfetation) {
+			if (eventSlave.belly >= 750000) {
+				r.push(`barely makes into your office before turning and leaning against ${his} ${belly} belly. Once ${he} manages to get comfortable against the strained mass, ${he} wiggles ${his} exposed`);
+				if (eventSlave.mpreg === 1) {
+					r.push(`asshole`);
+				} else {
+					r.push(`pussylips`);
+				}
+				r.push(`with a strange light`);
+				if (canSee(eventSlave)) {
+					r.push(`in ${his} eyes.`);
+				} else {
+					r.push(`on ${his} face.`);
+				}
+				isFaceUp = false;
+			} else if (eventSlave.belly >= 450000) {
+				r.push(`slowly waddles into your office with a strange light`);
+				if (canSee(eventSlave)) {
+					r.push(`in ${his} eyes.`);
+				} else {
+					r.push(`on ${his} face.`);
+				}
+				r.push(`${He} carefully turns before your desk and leans forward with a grunt against ${his} ${belly} belly, allowing it to part ${his} legs while exposing ${his}`);
+				if (eventSlave.mpreg === 1) {
+					r.push(`asshole`);
+				} else {
+					r.push(`pussylips`);
+				}
+				r.push(`to you. ${He} gingerly rubs ${his} agitated stomach as ${he} wiggles ${his} bottom at you.`);
+				isFaceUp = false;
+			} else if (eventSlave.belly >= 300000) {
+				r.push(`slowly waddles into your office with a strange light`);
+				if (canSee(eventSlave)) {
+					r.push(`in ${his} eyes.`);
+				} else {
+					r.push(`on ${his} face.`);
+				}
+				r.push(`${He} carefully turns before your desk and leans forward with a grunt against ${his} ${belly} belly, allowing it to part ${his} legs while exposing ${his}`);
+				if (eventSlave.mpreg === 1) {
+					r.push(`asshole`);
+				} else {
+					r.push(`pussylips`);
+				}
+				r.push(`to you.`);
+				isFaceUp = false;
+			} else if (eventSlave.belly >= 150000) {
+				r.push(`nearly trips under ${his} own weight as ${he} waddles into your office with a strange light`);
+				if (canSee(eventSlave)) {
+					r.push(`in ${his} eyes.`);
+				} else {
+					r.push(`on ${his} face.`);
+				}
+				r.push(`${He} maneuvers over to the couch, leans forward with a grunt as ${his} ${belly} belly pushes into the floor, spreading ${his} legs and exposing ${his}`);
+				if (eventSlave.mpreg === 1) {
+					r.push(`asshole`);
+				} else {
+					r.push(`pussylips`);
+				}
+				r.push(`to you.`);
+				isFaceUp = false;
+			} else if (eventSlave.belly >= 60000) {
+				r.push(`waddles into your office with a strange light`);
+				if (canSee(eventSlave)) {
+					r.push(`in ${his} eyes.`);
+				} else {
+					r.push(`on ${his} face.`);
+				}
+				r.push(`${He} maneuvers over to the couch, leans forward, spreads ${his} legs and exposes ${his}`);
+				if (eventSlave.mpreg === 1) {
+					r.push(`asshole`);
+				} else {
+					r.push(`pussylips`);
+				}
+				r.push(`to you.`);
+				isFaceUp = false;
+			} else if (eventSlave.belly >= 10000) {
+				r.push(`hastily waddles into your office with a strange light`);
+				if (canSee(eventSlave)) {
+					r.push(`in ${his} eyes.`);
+				} else {
+					r.push(`on ${his} face.`);
+				}
+				r.push(`${He} sits down on the couch and scoots down so ${his} butt is right at the edge of the couch and ${his} ${belly} belly is sticking up in the air. ${He} then spreads ${his} legs and exposes ${his}`);
+				if (eventSlave.mpreg === 1) {
+					r.push(`asshole`);
+				} else {
+					r.push(`pussylips`);
+				}
+				r.push(`to you.`);
+			} else {
+				r.push(`hurries into your office with a strange light`);
+				if (canSee(eventSlave)) {
+					r.push(`in ${his} eyes.`);
+				} else {
+					r.push(`on ${his} face.`);
+				}
+				r.push(`${He} sits down on the couch and scoots down so ${his} butt is right at the edge of the couch. ${He} then spreads ${his} legs and uses one hand to spread ${his}`);
+				if (eventSlave.mpreg === 1) {
+					r.push(`asshole`);
+				} else {
+					r.push(`pussylips`);
+				}
+				r.push(`for you.`);
+			}
+			if (!canTalk(eventSlave)) {
+				r.push(`${He} pantomimes pregnancy with`);
+				if (eventSlave.belly < 10000) {
+					r.push(`${his} other`);
+				} else {
+					r.push(`one`);
+				}
+				r.push(`hand, lewdly gesturing to ask you to cum inside ${his} still very fertile`);
+				if (eventSlave.mpreg === 1) {
+					r.push(`asspussy.`);
+				} else {
+					r.push(`pussy.`);
+				}
+			} else {
+				r.push(Spoken(eventSlave, `"Please put another baby in me, ${Master}, I have plenty of room still,"`));
+				if (eventSlave.lips > 70) {
+					r.push(`${he} begs through ${his} dick-sucking lips.`);
+				} else if (eventSlave.lipsPiercing+eventSlave.tonguePiercing > 2) {
+					r.push(`${he} begs through ${his} ridiculous piercings.`);
+				} else {
+					r.push(`${he} begs.`);
+				}
+				r.push(Spoken(eventSlave, `"I can't stand it. I need to make you another slave, ${Master}. Please stuff my body with as many future slaves as my womb can hold. Make me your slave production line."`));
+			}
+		} else {
+			r.push(`hurries into your office with a strange light`);
+			if (canSee(eventSlave)) {
+				r.push(`in ${his} eyes.`);
+			} else {
+				r.push(`on ${his} face.`);
+			}
+			r.push(`${He} sits down on the couch and scoots down so ${his} butt is right at the edge of the couch. ${He} then spreads ${his} legs and uses one hand to spread ${his}`);
+			if (eventSlave.mpreg === 1) {
+				r.push(`asshole`);
+			} else {
+				r.push(`pussylips`);
+			}
+			r.push(`for you.`);
+			App.Events.addParagraph(node, r);
+			r = [];
+
+			if (!canTalk(eventSlave)) {
+				r.push(`${He} pantomimes pregnancy with ${his} other hand, lewdly gesturing to ask you to cum inside ${his} fertile`);
+				if (eventSlave.mpreg === 1) {
+					r.push(`ass`);
+				}
+				r.push(`pussy.`);
+			} else {
+				r.push(Spoken(eventSlave, `"Please knock me up, ${Master},"`));
+				if (eventSlave.lips > 70) {
+					r.push(`${he} begs through ${his} dick-sucking lips.`);
+				} else if (eventSlave.lipsPiercing+eventSlave.tonguePiercing > 2) {
+					r.push(`${he} begs through ${his} ridiculous piercings.`);
+				} else {
+					r.push(`${he} begs.`);
+				}
+				r.push(Spoken(eventSlave, `"I can't stand it. I need to make you another slave, ${Master}. Please use my body as your slave factory."`));
+			}
+		}
+		if (canSee(eventSlave)) {
+			r.push(`${He} stares at you doe-eyed,`);
+		} else {
+			r.push(`${He} faces you with the look of a child begging for candy,`);
+		}
+		r.push(`desperately awaiting your answer.`);
+
+		let responses = [new App.Events.Result(`Put a slave in ${him}`, impregnate)];
+		if 	(eventSlave.mpreg === 0) {
+			responses.push(new App.Events.Result(`Use ${his} ass but give ${him} what ${he} wants`, impregnateAss));
+			responses.push(new App.Events.Result(`Sneak it into ${his} ass instead`, sneak));
+		} else {
+			responses.push(new App.Events.Result(`Use ${his} ass but finish across ${his} back`, back));
+		}
+		if (V.cumSlaves >= 5) {
+			responses.push(new App.Events.Result(`Use the Dairy cockmilk to impregnate ${him}`, dairy));
+		}
+		App.Events.addParagraph(node, r);
+		App.Events.addResponses(node, responses);
+
+		function impregnate() {
+			r = [];
+			if (eventSlave.mpreg === 1) {
+				if (!canDoAnal(eventSlave)) {
+					r.push(`You slowly undo ${his} chastity, allowing ${him} to be overwhelmed with anticipation of the deed to come.`);
+				}
+			} else if (eventSlave.chastityVagina) {
+				r.push(`You slowly undo ${his} chastity, allowing ${him} to be overwhelmed with anticipation of the deed to come.`);
+			}
+			r.push(`Despite ${himself}, ${he} breaks down when ${he} feels your cock enter ${his}`);
+			if (eventSlave.mpreg === 1) {
+				if (eventSlave.anus === 1) {
+					r.push(`deliciously tight`);
+				} else if (eventSlave.anus === 2) {
+					r.push(`well experienced`);
+				} else {
+					r.push(`fucked-out`);
+				}
+				r.push(`ass.`);
+			} else {
+				if (eventSlave.vagina === 1) {
+					r.push(`deliciously tight`);
+				} else if (eventSlave.vagina === 2) {
+					r.push(`well experienced`);
+				} else {
+					r.push(`fucked-out`);
+				}
+				r.push(`cunt.`);
+			}
+			if (isPregnantAndSuperfetation) {
+				r.push(`${He} grinds against you`);
+			} else {
+				r.push(`${He} smiles up reassuringly at you`);
+			}
+			r.push(`to let you know ${he}'s not in pain or anguish, blinking away ${his} happy tears.`);
+			if (isFaceUp) {
+				r.push(`${He} reaches up to hug ${himself} close to you,`);
+				if (eventSlave.belly >= 5000) {
+					r.push(`but the gravid swell of ${his} current pregnancy thwarts ${his} efforts as you take ${him}.`);
+				} else if ((eventSlave.boobs < 600) && eventSlave.belly < 5000) {
+					r.push(`and ${his} modest breasts let ${him} snuggle close to you, face-to-face, as you take ${him}.`);
+				} else if (eventSlave.belly >= 5000 && eventSlave.boobs < 600) { // FIXME: Impossible branch. Check for slave.inflationType instead?
+					r.push(`${his} big ${eventSlave.inflationType} stuffed belly pushing against you as you take ${him}.`);
+				} else if (eventSlave.boobs < 10000) {
+					r.push(`and ${his} big tits`);
+					if (eventSlave.belly >= 2000) {
+						r.push(`and ${eventSlave.inflationType} stuffed belly`);
+					}
+					r.push(`form a soft cushion between you as you take ${him}.`);
+				} else {
+					r.push(`but ${his} massive tits stop ${him} from bringing ${himself} too close to you as you take ${him}.`);
+				}
+			} else {
+				r.push(`${He} reaches back to take your hand, slowly bringing it back to the swell of ${his} baby bump.`);
+			}
+			r.push(`${He} enjoys ${himself} immensely, but ${he} loses it again when ${he} feels your`);
+			if (V.PC.balls >= 30) {
+				if (isPregnantAndSuperfetation) {
+					r.push(`seed inflating ${his} womb until ${his} stomach is`);
+					if (eventSlave.belly >= 2000) {
+						r.push(`noticeably larger than when ${he} started.`);
+					} else {
+						r.push(`distended and wobbling with cum.`);
+					}
+				} else {
+					r.push(`seed fill ${his} cramped womb and start to backflow.`);
+				}
+			} else if (V.PC.balls >= 14) {
+				r.push(`seed pumping into ${him} until ${his} womb is stuffed with cum.`);
+			} else if (V.PC.balls >= 9) {
+				r.push(`seed pouring into ${him}.`);
+			} else {
+				r.push(`seed.`);
+			}
+			r.push(`${He} starts blubbering inelegantly and`);
+			if (!canTalk(eventSlave)) {
+				r.push(`gesturing`);
+			} else if ((eventSlave.lips > 70) || (eventSlave.lipsPiercing+eventSlave.tonguePiercing > 2)) {
+				r.push(`lisping`);
+			} else {
+				r.push(`whimpering`);
+			}
+			r.push(`<span class="devotion inc">${his} thanks.</span>`);
+			eventSlave.devotion += 4;
+			if (eventSlave.mpreg === 1) {
+				seX(eventSlave, "anal", V.PC, "penetrative");
+			} else {
+				seX(eventSlave, "vaginal", V.PC, "penetrative");
+			}
+			knockMeUp(eventSlave, 50, 2, -1);
+			return r;
+		}
+
+		function impregnateAss() {
+			r = [];
+			r.push(`You tell ${him} that impregnation will be ${his} reward if ${he}'s a good little`);
+			if (eventSlave.chastityVagina || eventSlave.chastityAnus) {
+				r.push(`buttslut as you undo ${his} chastity.`);
+			} else {
+				r.push(`buttslut.`);
+			}
+			r.push(`${He} visibly resolves to do ${his} anal best. You recline on the couch and ${he} squats over you, one leg on the floor and the other bent up on the cushion, with one hand on the back of the couch and the other rubbing ${his} pussy. ${He}`);
+			if (eventSlave.anus === 1) {
+				r.push(`winces in pain as ${he} lowers ${his} tight`);
+			} else if (eventSlave.anus === 2) {
+				r.push(`moans with discomfort as ${he} lowers ${his} tight`);
+			} else {
+				r.push(`barely reacts as ${he} lowers ${his} huge`);
+			}
+			r.push(`butthole down onto your cock. ${He} gets quite a workout, raising and lowering ${his} body to fuck ${his} own ass on your stationary dick.`);
+			if (isFaceUp) {
+				r.push(`Since ${he}'s facing you, you get a great view of ${his} body in motion.`);
+			} else {
+				r.push(`${He}'s so heavy with child, you eventually have to give ${him} a hand as ${he} steadily tires.`);
+			}
+			r.push(`${His}`);
+			if (eventSlave.clit) {
+				r.push(`clitoral`);
+			}
+			r.push(`stimulation is having an effect, and after a while ${he}`);
+			if (!canTalk(eventSlave)) {
+				r.push(`takes ${his} hand away to make an unintelligible gesture. After ${he} repeats it, you figure out that ${he} means ${he} wishes ${he} could get pregnant anally.`);
+			} else {
+				r.push(`pants,`, Spoken(eventSlave, `"That's so good, ${Master}. I wish you could get my ass pregnant."`));
+			}
+			r.push(`When you're close, you scoot back to pull yourself out and ${he} spears ${his} cunt down onto your cock. The sudden difference of sensation brings you to violent climax, and ${he} <span class="devotion inc">cries with joy</span> at feeling your hot`);
+			if (V.PC.balls >= 30) {
+				if (isPregnantAndSuperfetation) {
+					r.push(`seed inflating ${his} womb until ${his} stomach is`);
+					if (eventSlave.belly >= 2000) {
+						r.push(`noticeably larger than when ${he} started.`);
+					} else {
+						r.push(`distended and wobbling with cum.`);
+					}
+				} else {
+					r.push(`seed fill ${his} cramped womb and start to backflow.`);
+				}
+			} else if (V.PC.balls >= 14) {
+				r.push(`seed pumping into ${him} until ${his} womb is stuffed with cum.`);
+			} else if (V.PC.balls >= 9) {
+				r.push(`seed pouring into ${him}.`);
+			} else {
+				r.push(`seed.`);
+			}
+			eventSlave.devotion += 4;
+			seX(eventSlave, "vaginal", V.PC, "penetrative");
+			seX(eventSlave, "anal", V.PC, "penetrative");
+			knockMeUp(eventSlave, 50, 0, -1);
+			return r;
+		}
+
+		function sneak() {
+			r = [];
+			r.push(`Despite ${himself}, ${he} breaks down when ${he}`);
+			if (canSee(eventSlave)) {
+				r.push(`sees`);
+			} else if (canHear(eventSlave)) {
+				r.push(`hears`);
+			} else {
+				r.push(`notices`);
+			}
+			r.push(`you coming over and kneeling down to line your cock up with the entrance to ${his}`);
+			if (eventSlave.vagina === 1) {
+				r.push(`deliciously tight`);
+			} else if (eventSlave.vagina === 2) {
+				r.push(`well experienced`);
+			} else {
+				r.push(`fucked-out`);
+			}
+			r.push(`cunt. ${His} happy tears turn to a ragged gasp of surprise and pain when you slide your dickhead down to ${his}`);
+			if (eventSlave.anus === 1) {
+				r.push(`painfully inexperienced`);
+			} else if (eventSlave.anus === 2) {
+				r.push(`tight`);
+			} else {
+				r.push(`loose`);
+			}
+			r.push(`ass and shove it up there instead. ${He} knows better than to protest, but the expression on ${his} face is a wonderful mix of submission, anguish and disappointment as ${he} takes the anal fuck. To stop ${his} fugue of disappointment you give ${him} a light slap on the cheek to get ${his} attention, and then instruct ${him} that it's not ${his} place`);
+			if (isPregnantAndSuperfetation) {
+				r.push(`to decide how pregnant he gets to be.`);
+			} else {
+				r.push(`to plan ${his} pregnancies.`);
+			}
+			r.push(`They'll happen when they happen, and until then ${he}'ll take it up the butt like a good slut. ${He} <span class="trust dec">nods and wipes ${his} eyes</span> even as`);
+			if (eventSlave.anus === 1) {
+				r.push(`${he} grimaces involuntarily at your painful use of ${his} tight butthole.`);
+			} else if (eventSlave.anus === 2) {
+				r.push(`${he} takes your cock up ${his} tight ass.`);
+			} else {
+				r.push(`${his} gaping anus makes occasional lewd noises as you pound it.`);
+			}
+			eventSlave.trust -= 5;
+			seX(eventSlave, "anal", V.PC, "penetrative");
+			return r;
+		}
+
+
+		function back() {
+			r = [];
+			r.push(`You tell ${him} that impregnation will be ${his} reward if ${he}'s a good little buttslut. ${He} visibly resolves to do ${his} anal best. You recline on the couch and ${he} squats over you, one leg on the floor and the other bent up on the cushion, with one hand on the back of the couch and the other`);
+			if (eventSlave.nipples !== "fuckable") {
+				r.push(`pinching`);
+			} else {
+				r.push(`fingering`);
+			}
+			r.push(`a nipple. ${He}`);
+			if (eventSlave.anus === 1) {
+				r.push(`winces in pain as ${he} lowers ${his} tight`);
+			} else if (eventSlave.anus === 2) {
+				r.push(`moans with discomfort as ${he} lowers ${his} tight`);
+			} else {
+				r.push(`barely reacts as ${he} lowers ${his} huge`);
+			}
+			r.push(`butthole down onto your cock. ${He} gets quite a workout, raising and lowering ${his} body to fuck ${his} own ass on your stationary dick.`);
+			if (isFaceUp) {
+				r.push(`Since ${he}'s facing you, you get a great view of ${his} body in motion.`);
+			} else {
+				r.push(`${He}'s so heavy with child, you eventually have to give ${him} a hand as ${he} steadily tires.`);
+			}
+			r.push(`${His} stimulation is having an effect, and after a while ${he}`);
+			if (!canTalk(eventSlave)) {
+				r.push(`takes ${his} hand away to make an unintelligible gesture. After ${he} repeats it, you figure out that ${he} means ${he} is thrilled to be able to get anally pregnant`);
+				if (isPregnantAndSuperfetation) {
+					r.push(`pregnant and is about to conceive again`);
+				} else {
+					r.push(`pregnant.`);
+				}
+			} else {
+				r.push(`pants,`, Spoken(eventSlave, `"That's so good, ${Master}. I'm so glad my ass is fertile."`));
+			}
+			r.push(`When you're at your limit, you quickly pull`);
+			if (isFaceUp) {
+				r.push(`out, slide slightly further under ${him}`);
+			} else {
+				r.push(`out`);
+			}
+			r.push(`and thrust up between ${his} asscheeks, blowing your hot seed`);
+			if (V.PC.balls >= 30) {
+				r.push(`across ${his} entire back.`);
+			} else if (V.PC.balls >= 9) {
+				r.push(`across ${his} back.`);
+			} else {
+				r.push(`across ${his} lower back.`);
+			}
+			r.push(`${He} stops riding you and`);
+			if (canSee(eventSlave)) {
+				r.push(`stares at`);
+			} else {
+				r.push(`faces`);
+			}
+			r.push(`you with a look of <span class="devotion dec">disbelief.</span> You shrug; it must have slipped out under all ${his} enthusiasm.`);
+			eventSlave.devotion -= 5;
+			seX(eventSlave, "anal", V.PC, "penetrative");
+			return r;
+		}
+
+		function dairy() {
+			r = [];
+			r.push(`You tell ${him} ${he}'ll be having everyone's children. ${He} looks puzzled until you put ${him} on the`);
+			if (hasBothLegs(eventSlave)) {
+				r.push(`couch, legs spread,`);
+			} else {
+				r.push(`couch`);
+			}
+			r.push(`and produce a large, soft injector full of fresh cum. At this ${he} giggles and thanks you; ${he} rapturously rubs ${his} belly belly as you gently push the injector home. For the rest of the week, ${he} appears in your office morning and night, receiving the seed of every slave you're currently having cockmilked. ${He} goes about ${his} other business with a <span class="devotion inc">deeply pleased</span> expression on ${his} face. Whenever ${he} has a spare moment ${he} steals down to the Dairy to hug the slaves there or otherwise show them a little affection.`);
+			eventSlave.devotion += 10;
+			const cumSlaves = V.slaves.filter(function(s) { return (s.assignment === Job.MILKED || s.assignment === Job.DAIRY) && s.balls > 0 && s.ballType === "human"; });
+			if (cumSlaves.length > 0) {
+				knockMeUp(eventSlave, 90, 2, cumSlaves.random().ID);
+			}
+			return r;
+		}
+	}
+};
diff --git a/src/events/randomEvent.js b/src/events/randomEvent.js
index 072492877bc..d5310f48b3b 100644
--- a/src/events/randomEvent.js
+++ b/src/events/randomEvent.js
@@ -25,6 +25,7 @@ App.Events.getIndividualEvents = function() {
 		new App.Events.RESSEscapee(),
 		new App.Events.RESSFrighteningDick(),
 		new App.Events.RESSHotPC(),
+		new App.Events.RESSImpregnationPlease(),
 		new App.Events.RESSImScared(),
 		new App.Events.RESSKitchenMolestation(),
 		new App.Events.RESSLazyEvening(),
diff --git a/src/js/eventSelectionJS.js b/src/js/eventSelectionJS.js
index c4242bccc77..fda14407631 100644
--- a/src/js/eventSelectionJS.js
+++ b/src/js/eventSelectionJS.js
@@ -842,32 +842,6 @@ if(eventSlave.drugs === "breast injections") {
 				}
 			}
 
-			if (V.seePreg !== 0) {
-				if (isFertile(eventSlave)) {
-					if (eventSlave.devotion > 50) {
-						if (V.PC.dick !== 0) {
-							if (eventSlave.fetish === "pregnancy" || eventSlave.energy > 95) {
-								if (eventSlave.eggType === "human") {
-									if (eventSlave.fetishKnown === 1) {
-										if (eventSlave.vagina !== 0) {
-											if (eventSlave.anus > 0) {
-												if (eventSlave.geneticQuirks.superfetation === 2 && (eventSlave.intelligence + eventSlave.intelligenceImplant > 15) && eventSlave.womb.length > 0) {
-													if (eventSlave.belly < (eventSlave.pregAdaptation * 1750)) {
-														V.RESSevent.push("impregnation please");
-													}
-												} else {
-													V.RESSevent.push("impregnation please");
-												}
-											}
-										}
-									}
-								}
-							}
-						}
-					}
-				}
-			}
-
 			if (plugWidth(eventSlave) > 1) {
 				if (eventSlave.assignment !== Job.CONFINEMENT && isSlaveAvailable(eventSlave)) {
 					if (eventSlave.devotion <= 20) {
diff --git a/src/uncategorized/RESS.tw b/src/uncategorized/RESS.tw
index e497162eecb..3ea2e41bba0 100644
--- a/src/uncategorized/RESS.tw
+++ b/src/uncategorized/RESS.tw
@@ -1293,65 +1293,6 @@ During a routine inspection, <<= App.UI.slaveDescriptionDialog($activeSlave)>> r
 	Can I get fucked in the pu<<ss>>y, to <<s>>pread it out a little?"
 <</if>>
 
-<<case "impregnation please">>
-
-<<set _faceUp = 1>>
-<<set _superfetation = ($activeSlave.geneticQuirks.superfetation == 2 && $activeSlave.pregKnown == 1) ? 1 : 0>>
-
-<<= App.UI.slaveDescriptionDialog($activeSlave)>>
-<<if _superfetation == 1>>
-	<<if $activeSlave.belly >= 750000>>
-		barely makes into your office before turning and leaning against $his _belly belly. Once $he manages to get comfortable against the strained mass, $he wiggles $his exposed <<if $activeSlave.mpreg == 1>>asshole<<else>>pussylips<</if>> with a strange light <<if canSee($activeSlave)>>in $his eyes<<else>>on $his face<</if>>.
-		<<set _faceUp = 0>>
-	<<elseif $activeSlave.belly >= 450000>>
-		slowly waddles into your office with a strange light <<if canSee($activeSlave)>>in $his eyes<<else>>on $his face<</if>>. $He carefully turns before your desk and leans forward with a grunt against $his _belly belly, allowing it to part $his legs while exposing $his <<if $activeSlave.mpreg == 1>>asshole<<else>>pussylips<</if>> to you. $He gingerly rubs $his agitated stomach as $he wiggles $his bottom at you.
-		<<set _faceUp = 0>>
-	<<elseif $activeSlave.belly >= 300000>>
-		slowly waddles into your office with a strange light <<if canSee($activeSlave)>>in $his eyes<<else>>on $his face<</if>>. $He carefully turns before your desk and leans forward with a grunt against $his _belly belly, allowing it to part $his legs while exposing $his <<if $activeSlave.mpreg == 1>>asshole<<else>>pussylips<</if>> to you.
-		<<set _faceUp = 0>>
-	<<elseif $activeSlave.belly >= 150000>>
-		nearly trips under $his own weight as $he waddles into your office with a strange light <<if canSee($activeSlave)>>in $his eyes<<else>>on $his face<</if>>. $He maneuvers over to the couch, leans forward with a grunt as $his _belly belly pushes into the floor, spreading $his legs and exposing $his <<if $activeSlave.mpreg == 1>>asshole<<else>>pussylips<</if>> to you.
-		<<set _faceUp = 0>>
-	<<elseif $activeSlave.belly >= 60000>>
-		waddles into your office with a strange light <<if canSee($activeSlave)>>in $his eyes<<else>>on $his face<</if>>. $He maneuvers over to the couch, leans forward, spreads $his legs and exposes $his <<if $activeSlave.mpreg == 1>>asshole<<else>>pussylips<</if>> to you.
-		<<set _faceUp = 0>>
-	<<elseif $activeSlave.belly >= 10000>>
-		hastily waddles into your office with a strange light <<if canSee($activeSlave)>>in $his eyes<<else>>on $his face<</if>>. $He sits down on the couch and scoots down so $his butt is right at the edge of the couch and $his _belly belly is sticking up in the air. $He then spreads $his legs and exposes $his <<if $activeSlave.mpreg == 1>>asshole<<else>>pussylips<</if>> to you.
-	<<else>>
-		hurries into your office with a strange light <<if canSee($activeSlave)>>in $his eyes<<else>>on $his face<</if>>. $He sits down on the couch and scoots down so $his butt is right at the edge of the couch. $He then spreads $his legs and uses one hand to spread $his <<if $activeSlave.mpreg == 1>>asshole<<else>>pussylips<</if>> for you.
-	<</if>>
-	<<if !canTalk($activeSlave)>>
-		$He pantomimes pregnancy with <<if $activeSlave.belly < 10000>>$his other<<else>>one<</if>> hand, lewdly gesturing to ask you to cum inside $his still very fertile <<if $activeSlave.mpreg == 1>>ass<</if>>pussy.
-	<<else>>
-		"Plea<<s>>e put another baby in me, <<Master>>, I have plenty of room <<s>>till,"
-		<<if ($activeSlave.lips > 70)>>
-			$he begs through $his dick-sucking lips.
-		<<elseif ($activeSlave.lipsPiercing+$activeSlave.tonguePiercing > 2)>>
-			$he begs through $his ridiculous piercings.
-		<<else>>
-			$he begs.
-		<</if>>
-		"I can't <<s>>tand it. I need to make you another <<s>>lave, <<Master>>. Plea<<s>>e <<s>>tuff my body with a<<s>> many future <<s>>laves a<<s>> my womb can hold. Make me your <<s>>lave production line."
-	<</if>>
-<<else>>
-	hurries into your office with a strange light <<if canSee($activeSlave)>>in $his eyes<<else>>on $his face<</if>>. $He sits down on the couch and scoots down so $his butt is right at the edge of the couch. $He then spreads $his legs and uses one hand to spread $his <<if $activeSlave.mpreg == 1>>asshole<<else>>pussylips<</if>> for you.
-	<br><br>
-	<<if !canTalk($activeSlave)>>
-		$He pantomimes pregnancy with $his other hand, lewdly gesturing to ask you to cum inside $his fertile <<if $activeSlave.mpreg == 1>>ass<</if>>pussy.
-	<<else>>
-		"Plea<<s>>e knock me up, <<Master>>,"
-		<<if ($activeSlave.lips > 70)>>
-			$he begs through $his dick-sucking lips.
-		<<elseif ($activeSlave.lipsPiercing+$activeSlave.tonguePiercing > 2)>>
-			$he begs through $his ridiculous piercings.
-		<<else>>
-			$he begs.
-		<</if>>
-		"I can't <<s>>tand it. I need to make you another <<s>>lave, <<Master>>. Plea<<s>>e u<<s>>e my body a<<s>> your <<s>>lave factory."
-	<</if>>
-<</if>>
-$He <<if canSee($activeSlave)>>stares at you doe-eyed<<else>>$he faces you with the look of a child begging for candy<</if>>, desperately awaiting your answer.
-
 <<case "fearful balls">>
 
 <<= App.UI.slaveDescriptionDialog($activeSlave)>> is still having obedience problems, particularly with $his proper role as a <<if $girl == "girl">>female <</if>>receptacle for cock. Though they're an almost too-obvious explanation, it's hard to avoid $his retention of $his gonads as a possible explanation for $his behavioral issues. They certainly contribute to $his less than perfectly feminine hormonal balance.
@@ -8034,225 +7975,6 @@ $He cranes $his neck, glancing over $his shoulder to give you a pleading look.
 	<</replace>>
 <</link>><<if ($activeSlave.chastityVagina)>> //This option will remove $his chastity belt//<</if>>
 
-<<case "impregnation please">>
-
-<<link "Put a slave in $him">>
-	<<if $activeSlave.mpreg == 1>>
-		<<if !canDoAnal($activeSlave)>>
-			You slowly undo $his chastity, allowing $him to be overwhelmed with anticipation of the deed to come.
-		<</if>>
-	<<else>>
-		<<if ($activeSlave.chastityVagina)>>
-			You slowly undo $his chastity, allowing $him to be overwhelmed with anticipation of the deed to come.
-		<</if>>
-	<</if>>
-	<<replace "#result">>
-		Despite $himself, $he breaks down when $he feels your cock enter $his
-		<<if $activeSlave.mpreg == 1>>
-			<<if ($activeSlave.anus == 1)>>
-				deliciously tight
-			<<elseif ($activeSlave.anus == 2)>>
-				well experienced
-			<<else>>
-				fucked-out
-			<</if>>
-			ass.
-		<<else>>
-			<<if ($activeSlave.vagina == 1)>>
-				deliciously tight
-			<<elseif ($activeSlave.vagina == 2)>>
-				well experienced
-			<<else>>
-				fucked-out
-			<</if>>
-			cunt.
-		<</if>>
-		$He <<if _superfetation == 1>>grinds against you<<else>>smiles up reassuringly at you<</if>> to let you know $he's not in pain or anguish, blinking away $his happy tears.
-		<<if _faceUp == 1>>
-			$He reaches up to hug $himself close to you,
-			<<if $activeSlave.belly >= 5000>>
-				but the gravid swell of $his current pregnancy thwarts $his efforts as you take $him.
-			<<elseif ($activeSlave.boobs < 600) && $activeSlave.belly < 5000>>
-				and $his modest breasts let $him snuggle close to you, face-to-face, as you take $him.
-			<<elseif $activeSlave.belly >= 5000 && $activeSlave.boobs < 600>>
-				$his big $activeSlave.inflationType stuffed belly pushing against you as you take $him.
-			<<elseif ($activeSlave.boobs < 10000)>>
-				and $his big tits <<if $activeSlave.belly >= 2000>>and $activeSlave.inflationType stuffed belly <</if>>form a soft cushion between you as you take $him.
-			<<else>>
-				but $his massive tits stop $him from bringing $himself too close to you as you take $him.
-			<</if>>
-		<<else>>
-			$He reaches back to take your hand, slowly bringing it back to the swell of $his baby bump.
-		<</if>>
-		$He enjoys $himself immensely, but $he loses it again when $he feels your
-		<<if $PC.balls >= 30>>
-			<<if _superfetation == 1>>
-				seed inflating $his womb until $his stomach is <<if $activeSlave.belly >= 2000>>noticeably larger than when $he started<<else>>distended and wobbling with cum<</if>>.
-			<<else>>
-				seed fill $his cramped womb and start to backflow.
-			<</if>>
-		<<elseif $PC.balls >= 14>>
-			seed pumping into $him until $his womb is stuffed with cum.
-		<<elseif $PC.balls >= 9>>
-			seed pouring into $him.
-		<<else>>
-			seed.
-		<</if>>
-		$He starts blubbering inelegantly and
-		<<if !canTalk($activeSlave)>>
-			gesturing
-		<<elseif ($activeSlave.lips > 70) || ($activeSlave.lipsPiercing+$activeSlave.tonguePiercing > 2)>>
-			lisping
-		<<else>>
-			whimpering
-		<</if>>
-		@@.hotpink;$his thanks.@@
-		<<set $activeSlave.devotion += 4>>
-		<<if $activeSlave.mpreg == 1>>
-			<<run seX($activeSlave, "anal", $PC, "penetrative")>>
-		<<else>>
-			<<run seX($activeSlave, "vaginal", $PC, "penetrative")>>
-		<</if>>
-		<<run knockMeUp($activeSlave, 50, 2, -1)>>
-	<</replace>>
-<</link>>
-<<if $activeSlave.mpreg == 0>>
-	<br><<link "Use $his ass but give $him what $he wants">>
-		<<replace "#result">>
-			You tell $him that impregnation will be $his reward if $he's a good little buttslut<<if ($activeSlave.chastityVagina) || ($activeSlave.chastityAnus)>> as you undo $his chastity<</if>>.
-			$He visibly resolves to do $his anal best. You recline on the couch and $he squats over you, one leg on the floor and the other bent up on the cushion, with one hand on the back of the couch and the other rubbing $his pussy. $He
-			<<if ($activeSlave.anus == 1)>>
-				winces in pain as $he lowers $his tight
-			<<elseif ($activeSlave.anus == 2)>>
-				moans with discomfort as $he lowers $his tight
-			<<else>>
-				barely reacts as $he lowers $his huge
-			<</if>>
-			butthole down onto your cock. $He gets quite a workout, raising and lowering $his body to fuck $his own ass on your stationary dick.
-			<<if _faceUp == 1>>
-				Since $he's facing you, you get a great view of $his body in motion.
-			<<else>>
-				$He's so heavy with child, you eventually have to give $him a hand as $he steadily tires.
-			<</if>>
-			$His <<if $activeSlave.clit>>clitoral <</if>>stimulation is having an effect, and after a while $he
-			<<if !canTalk($activeSlave)>>
-				takes $his hand away to make an unintelligible gesture. After $he repeats it, you figure out that $he means $he wishes $he could get pregnant anally.
-			<<else>>
-				pants, "That'<<s>> <<s>>o good, <<Master>>. I wi<<sh>> you could get my a<<ss>> pregnant."
-			<</if>>
-			When you're close, you scoot back to pull yourself out and $he spears $his cunt down onto your cock. The sudden difference of sensation brings you to violent climax, and $he @@.hotpink;cries with joy@@ at feeling your hot
-			<<if $PC.balls >= 30>>
-				<<if _superfetation == 1>>
-					seed inflating $his womb until $his stomach is <<if $activeSlave.belly >= 2000>>noticeably larger than when $he started<<else>>distended and wobbling with cum<</if>>.
-				<<else>>
-					seed fill $his cramped womb and start to backflow.
-				<</if>>
-			<<elseif $PC.balls >= 14>>
-				seed pumping into $him until $his womb is stuffed with cum.
-			<<elseif $PC.balls >= 9>>
-				seed pouring into $him.
-			<<else>>
-				seed.
-			<</if>>
-			<<set $activeSlave.devotion += 4>>
-			<<run seX($activeSlave, "vaginal", $PC, "penetrative")>>
-			<<run seX($activeSlave, "anal", $PC, "penetrative")>>
-			<<run knockMeUp($activeSlave, 50, 0, -1)>>
-		<</replace>>
-	<</link>>
-	<br><<link "Sneak it into $his ass instead">>
-		<<replace "#result">>
-			Despite $himself, $he breaks down when $he <<if canSee($activeSlave)>>sees<<elseif canHear($activeSlave)>>hears<<else>>notices<</if>> you coming over and kneeling down to line your cock up with the entrance to $his
-			<<if ($activeSlave.vagina == 1)>>
-				deliciously tight
-			<<elseif ($activeSlave.vagina == 2)>>
-				well experienced
-			<<else>>
-				fucked-out
-			<</if>>
-			cunt. $His happy tears turn to a ragged gasp of surprise and pain when you slide your dickhead down to $his
-			<<if ($activeSlave.anus == 1)>>
-				painfully inexperienced
-			<<elseif ($activeSlave.anus == 2)>>
-				tight
-			<<else>>
-				loose
-			<</if>>
-			ass and shove it up there instead. $He knows better than to protest, but the expression on $his face is a wonderful mix of submission, anguish and disappointment as $he takes the anal fuck. To stop $his fugue of disappointment you give $him a light slap on the cheek to get $his attention, and then instruct $him that it's not $his place
-			<<if _superfetation == 1>>
-				to decide how pregnant he gets to be.
-			<<else>>
-				to plan $his pregnancies.
-			<</if>>
-			They'll happen when they happen, and until then $he'll take it up the butt like a good slut. $He @@.gold;nods and wipes $his eyes@@ even as
-			<<if ($activeSlave.anus == 1)>>
-				$he grimaces involuntarily at your painful use of $his tight butthole.
-			<<elseif ($activeSlave.anus == 2)>>
-				$he takes your cock up $his tight ass.
-			<<else>>
-				$his gaping anus makes occasional lewd noises as you pound it.
-			<</if>>
-			<<set $activeSlave.trust -= 5>>
-			<<run seX($activeSlave, "anal", $PC, "penetrative")>>
-		<</replace>>
-	<</link>>
-<<else>>
-	<br><<link "Use $his ass but finish across $his back">>
-		<<replace "#result">>
-			You tell $him that impregnation will be $his reward if $he's a good little buttslut. $He visibly resolves to do $his anal best. You recline on the couch and $he squats over you, one leg on the floor and the other bent up on the cushion, with one hand on the back of the couch and the other <<if $activeSlave.nipples != "fuckable">>pinching<<else>>fingering<</if>> a nipple. $He
-			<<if ($activeSlave.anus == 1)>>
-				winces in pain as $he lowers $his tight
-			<<elseif ($activeSlave.anus == 2)>>
-				moans with discomfort as $he lowers $his tight
-			<<else>>
-				barely reacts as $he lowers $his huge
-			<</if>>
-			butthole down onto your cock. $He gets quite a workout, raising and lowering $his body to fuck $his own ass on your stationary dick.
-			<<if _faceUp == 1>>
-				Since $he's facing you, you get a great view of $his body in motion.
-			<<else>>
-				$He's so heavy with child, you eventually have to give $him a hand as $he steadily tires.
-			<</if>>
-			$His stimulation is having an effect, and after a while $he
-			<<if !canTalk($activeSlave)>>
-				takes $his hand away to make an unintelligible gesture. After $he repeats it, you figure out that $he means $he is thrilled to be able to get anally pregnant<<if _superfetation == 1>> and is about to conceive again<</if>>.
-			<<else>>
-				pants, "That'<<s>> <<s>>o good, <<Master>>. I'm <<s>>o glad my a<<ss>> i<<s>> fertile."
-			<</if>>
-			When you're at your limit, you quickly pull
-			<<if _faceUp == 1>>
-				out, slide slightly further under $him
-			<<else>>
-				out
-			<</if>>
-			and thrust up between $his asscheeks, blowing your hot seed
-			<<if $PC.balls >= 30>>
-				across $his entire back.
-			<<elseif $PC.balls >= 9>>
-				across $his back.
-			<<else>>
-				across $his lower back.
-			<</if>>
-			$He stops riding you and <<if canSee($activeSlave)>>stares at<<else>>faces<</if>> you with a look of @@.mediumorchid;disbelief.@@ You shrug; it must have slipped out under all $his enthusiasm.
-			<<set $activeSlave.devotion -= 5>>
-			<<run seX($activeSlave, "anal", $PC, "penetrative")>>
-		<</replace>>
-	<</link>>
-<</if>>
-<<if ($cumSlaves >= 5)>>
-	<br><<link "Use the Dairy cockmilk to impregnate $him">>
-		<<replace "#result">>
-			You tell $him $he'll be having everyone's children. $He looks puzzled until you put $him on the couch<<if hasBothLegs($activeSlave)>>, legs spread,<</if>> and produce a large, soft injector full of fresh cum. At this $he giggles and thanks you; $he rapturously rubs $his _belly belly as you gently push the injector home. For the rest of the week, $he appears in your office morning and night, receiving the seed of every slave you're currently having cockmilked. $He goes about $his other business with a @@.hotpink;deeply pleased@@ expression on $his face. Whenever $he has a spare moment $he steals down to the Dairy to hug the slaves there or otherwise show them a little affection.
-			<<set $activeSlave.devotion += 10>>
-			<<set _cumSlaves = $slaves.filter(function(s) { return (s.assignment == "get milked" || s.assignment == "work in the dairy") && s.balls > 0 && s.ballType == "human"; })>>
-			<<if _cumSlaves.length > 0>>
-				<<set _cumSlave = _cumSlaves.random()>>
-				<<run knockMeUp($activeSlave, 90, 2, _cumSlave.ID)>>
-			<</if>>
-		<</replace>>
-	<</link>>
-<</if>>
-
 <<case "fearful balls">>
 
 <<link "Threaten $him with castration">>
-- 
GitLab