diff --git a/src/npc/interaction/fSuckDick.js b/src/npc/interaction/fSuckDick.js
index 828bc7ba48b5a9ca7e865b3fb38511d367646064..8e00c687a1f053158090e1386fcd480e2fcf80fb 100644
--- a/src/npc/interaction/fSuckDick.js
+++ b/src/npc/interaction/fSuckDick.js
@@ -267,7 +267,6 @@ App.Interact.fSuckDick = function(slave) {
 			liquid = "urine";
 
 			r.push(cleanup())
-			App.Events.addParagraph(node, r);
 
 			if (V.policies.sexualOpenness === 0) {
 				r = [];
@@ -277,6 +276,8 @@ App.Interact.fSuckDick = function(slave) {
 				V.PC.degeneracy += 3;
 			}
 
+			App.Events.addParagraph(node, r);
+
 			return node;
 
 		} else { // Player fails to orally please the slave
@@ -286,7 +287,33 @@ App.Interact.fSuckDick = function(slave) {
 			r = [];
 
 			r.push(cleanup())
+
+			if (V.policies.sexualOpenness === 0) {
+				r = [];
+				r.push(rumors())
+				App.Events.addParagraph(node, r);
+		
+				V.PC.degeneracy += 2;
+			}
+
+			App.Events.addParagraph(node, r);
+
+			return node;
+		}
+
+		if (isMindbroken(slave)) {
+			r.push(`Without any warning, ${his} ${dickAdj} flaccid dick begins to release cum into your mouth. At the moment, you move away.`);
+			r.push(`You should have known this would happen with a mindbroken slave. You turn your head away, releasing what you have in your mouth.`);
+			r.push(cumFinal());
+		
 			App.Events.addParagraph(node, r);
+			r = [];
+
+			r.push(`It is not worth scolding ${him}, ${his} mental state won't allow ${him} to understand it.`)
+
+			liquid = "cum";
+
+			r.push(cleanup())
 
 			if (V.policies.sexualOpenness === 0) {
 				r = [];
@@ -296,7 +323,34 @@ App.Interact.fSuckDick = function(slave) {
 				V.PC.degeneracy += 2;
 			}
 
+			App.Events.addParagraph(node, r);
+
 			return node;
+
+		} else {
+			r.push(`You continue to suck ${hi} flaccid ${dickAdj} cock, determined to extract ${his} sperm. At one point you feel an almost imperceptible throb in ${his} member and ${he} lets you know that ${his} orgasm is imminent. You take one last firm suck before slowly letting the glans out of your mouth and taking the base of ${his} ${dickAdj} member ${slave.dick > 2 ? "with your hand" : "with your forefinger and thumb"}, toying the soft shaft with your ${lipsLong}, just in time.`);
+			r.push(cumFinal());
+			r.push(`He didn't enjoy being forced to come.`);
+
+			App.Events.addParagraph(node, r);
+			r = [];
+
+			r.push(cleanup());
+
+			if (V.policies.sexualOpenness === 0) {
+				r = [];
+				r.push(rumors());
+				App.Events.addParagraph(node, r);
+		
+				V.PC.degeneracy += 2;
+			}
+
+			slave.trust -= 2;
+			slave.devotion -= 5;
+
+			App.Events.addParagraph(node, r);
+			return node;
+
 		}
 	} else {
 		r.push(`You continue sucking on the ${dickAdj} slave's member for some time, using your tongue and lips, making sure to keep it well lubricated with your saliva. Soft moans escape ${his} lips. At one moment, the cock in your mouth becomes even more rigid, and you know that the excellent worship you are giving this cock is going to bring its owner a powerful orgasm.`);
@@ -351,7 +405,6 @@ App.Interact.fSuckDick = function(slave) {
 			liquid = "cum";
 
 			r.push(cleanup())
-			App.Events.addParagraph(node, r);
 
 			if (V.policies.sexualOpenness === 0) {
 				r = [];
@@ -361,6 +414,7 @@ App.Interact.fSuckDick = function(slave) {
 				V.PC.degeneracy += 2;
 			}
 
+			App.Events.addParagraph(node, r);
 			return node;
 
 		} else if ((disobedience(slave) > 0 || (slave.fetish === Fetish.DOM && slave.devotion < 40 && slave.trust > -30)) && hasAnyArms(slave)) { // Disobedient slaves try to force the player to swallow, dominant slaves have a plus
@@ -413,7 +467,6 @@ App.Interact.fSuckDick = function(slave) {
 			liquid = "cum";
 
 			r.push(cleanup())
-			App.Events.addParagraph(node, r);
 
 			if (V.policies.sexualOpenness === 0) {
 				r = [];
@@ -425,7 +478,9 @@ App.Interact.fSuckDick = function(slave) {
 
 			slave.trust += 10;
 
+			App.Events.addParagraph(node, r);
 			return node;			
+			
 		} else if (!hasAnyArms(slave)) { // Slaves with no arms
 			r.push(`You continue sucking ${him} until ${he} warns you that ${his} orgasm is imminent. You pull your mouth away and take hold of the base of ${his} member ${slave.dick > 2 ? "with your hand" : "with your forefinger and thumb"}, just in time to feel the first contraction.`);
 
@@ -435,7 +490,6 @@ App.Interact.fSuckDick = function(slave) {
 			r = [];
 
 			r.push(cleanup())
-			App.Events.addParagraph(node, r);
 
 			if (V.policies.sexualOpenness === 0) {
 				r = [];
@@ -448,6 +502,7 @@ App.Interact.fSuckDick = function(slave) {
 			slave.trust += 2;
 			slave.devotion += 2;
 
+			App.Events.addParagraph(node, r);
 			return node;			
 
 		} else if (slave.skill.oral < 30 || (slave.skill.oral < 70 && jsRandom(1,100) > 70)) { //Player decides to give an oral lesson to the slave
@@ -464,7 +519,6 @@ App.Interact.fSuckDick = function(slave) {
 			r = [];
 
 			r.push(cleanup())
-			App.Events.addParagraph(node, r);
 
 			if (V.policies.sexualOpenness === 0) {
 				r = [];
@@ -477,6 +531,7 @@ App.Interact.fSuckDick = function(slave) {
 			slave.trust += 2;
 			slave.devotion += 2;
 
+			App.Events.addParagraph(node, r);
 			return node;			
 
 		} else if (isHorny(slave) && slave.devotion < 50 && slave.trust > 50 && jsRandom(1, 100) > 50) { // Slaves unable to warn with time enough
@@ -575,7 +630,6 @@ App.Interact.fSuckDick = function(slave) {
 			r = [];
 
 			r.push(cleanup());
-			App.Events.addParagraph(node, r);
 
 			if (V.policies.sexualOpenness === 0) {
 				r = [];
@@ -587,6 +641,10 @@ App.Interact.fSuckDick = function(slave) {
 
 			slave.trust += 2;
 			slave.devotion += 5;
+
+			App.Events.addParagraph(node, r);
+			return node;
+
 		}			
 	}