:: FLips [nobr no-history]

<<set $AS = $activeSlave.ID>>
<<setLocalPronouns $activeSlave>>
<<set getSlave($AS).counter.oral++, $oralTotal++>>

You tell <<= getSlave($AS).slaveName>> to
<<if ($PC.dick != 0)>>
	blow you with $his
<<else>>
	please your pussy with $his
<</if>>
<<if (getSlave($AS).lips > 95)>>
	facepussy.
<<elseif (getSlave($AS).lips > 70)>>
	cartoonish lips.
<<elseif (getSlave($AS).lips > 20)>>
	dick-sucking lips.
<<elseif (getSlave($AS).lips > 10)>>
	pretty mouth.
<<else>>
	whore mouth.
<</if>>

<<if (getSlave($AS).fetish == "cumslut") && (getSlave($AS).devotion >= -20)>>
	$He's delighted at the prospect of $his favorite activity.
<</if>>

<<switch getSlave($AS).mouthAccessory>>
<<case "dildo gag">>
	<<if hasAnyArms(getSlave($AS))>>
		$He removes the dildo from $his throat, leaving the ring gag in place.
	<<else>>
		As an amputee, $he requires your assistance to get the dildo out of $his throat.
	<</if>>
	Able to breathe through $his mouth for the first time in a while, $he gasps gratefully, knowing the respite will be brief.
<<case "massive dildo gag">>
	<<if hasAnyArms(getSlave($AS))>>
		$He struggles to remove the dildo from $his throat, leaving $his mouth agape.
	<<else>>
		As an amputee, $he requires your assistance to get the dildo out of $his throat.
	<</if>>
	Able to breathe through $his mouth for the first time in a while, $he gasps gratefully, knowing the respite will be brief.
<<case "ball gag" "bit gag">>
	<<if hasAnyArms(getSlave($AS))>>
		$He unfastens $his gag and pulls it from $his mouth.
	<<else>>
		As an amputee, $he requires your assistance to get the gag unfastened.
	<</if>>
	Able to breathe through $his mouth for the first time in a while, $he gasps gratefully, knowing the respite will be brief.
<<case "ring gag">>
	<<if hasAnyArms(getSlave($AS))>>
		$He unfastens $his gag.
	<<else>>
		As an amputee, $he requires your assistance to get the gag unfastened.
	<</if>>
	Able to flew $his jaw for the first time in a while, $he swallows gratefully, knowing the respite will be brief.
<</switch>>

<<if (getSlave($AS).lipsTat == "tribal patterns")>>
	The tribal patterns on $his face enhance $his beauty.
<<elseif (getSlave($AS).lipsTat == "permanent makeup")>>
	$His tattooed-on makeup encourages it.
<<elseif (getSlave($AS).lipsTat == "degradation")>>
	The tattoos on $his face are asking for it, after all.
<</if>>

<<if (getSlave($AS).lipsPiercing + getSlave($AS).tonguePiercing > 2)>>
	The stimulation from $his many oral piercings should be great.
<<elseif (getSlave($AS).lipsPiercing + getSlave($AS).tonguePiercing > 0)>>
	The sensation of $his oral piercings should be quite nice.
<</if>>

<<if (getSlave($AS).teeth == "removable")>>
	<<if (getSlave($AS).devotion <= 20)>>
		You pull $his prosthetic teeth out of $his mouth so you can enjoy an extra-soft throatfuck.
	<<else>>
		$He slides $his prosthetic teeth out of $his mouth so $he can give you an extra-soft suck.
	<</if>>
<</if>>

<<if isAmputee(getSlave($AS))>>
	You set $his limbless torso on the
	<<if ($PC.dick != 0)>>
		edge of your desk with $him on $his back. $His head dangles off the edge of the desk, leaving $his <<if $seeRace == 1>><<= getSlave($AS).race>> <</if>>mouth at the perfect angle for use. As an amputee $he has absolutely no control over the depth or quickness of oral sex, so you are careful not to hurt $him. Even so, you take $him to the edge of gagging, enjoying the sight of $his <<= getSlave($AS).skin>> throat bulging. Eventually you shoot your load directly down $his gullet.
		<<if $PC.vagina != -1>>If $he thought that was it, $he's soon corrected: you hike yourself up further, and grind your pussy against $his face.<</if>>
	<<else>>
		floor next to your desk and kneel on $him with your legs on either side of $him, so your pussylips are hard against $his <<if $seeRace == 1>><<= getSlave($AS).race>> <</if>>mouth. $He desperately eats you out, trying to get you off as fast as possible so $he can get a bit more air, but you grind down without mercy, taking your pleasure.
	<</if>>
<<elseif tooBigBelly(getSlave($AS))>>
	You get $him situated on the edge of your desk, on $his back. This pins $him down, the massive weight of $his belly stopping $him from going anywhere at all. $His head dangles off the edge of the desk, leaving $his <<if $seeRace == 1>><<= getSlave($AS).race>> <</if>>mouth at the perfect angle for use.
	<<if ($PC.dick != 0)>>
		<<if getSlave($AS).bellyImplant >= 1500>>
			$He has absolutely no control over the depth or quickness of oral sex, so you are careful not to hurt $him. Even so, you take $him to the edge of gagging, enjoying the sight of the spasms running through $his stomach as $he struggles to breathe. Eventually you shoot your load directly down $his gullet.
		<<else>>
			$He has absolutely no control over the depth or quickness of oral sex, so you are careful not to hurt $him. Even so, you take $him to the edge of gagging, enjoying the sight of $his <<= getSlave($AS).skin>> throat bulging and every movement within $his overstuffed womb as $he struggles to breathe. Eventually you shoot your load directly down $his gullet.
		<</if>>
		<<if $PC.vagina != -1>>If $he thought that was it, $he's soon corrected: you hike yourself up further, and grind your pussy against $his face.<</if>>
	<<else>>
		<<if getSlave($AS).bellyImplant >= 1500>>
			$He has absolutely no control over how hard you grind your cunt against $his face, so you are careful not to suffocate $him. Even so, you take $him to the edge, enjoying the sight of the spasms running through $his stomach as $he struggles to breathe. Eventually you climax, giving $him a good <<if canTaste(getSlave($AS))>>taste<<else>>dose<</if>> of your femcum.
		<<else>>
			$He has absolutely no control over how hard you grind your cunt against $his face, so you are careful not to suffocate $him. Even so, you take $him to the edge, enjoying the sight of the movement within $his overstuffed womb as $he struggles to breathe. Eventually you climax, giving $him a good <<if canTaste(getSlave($AS))>>taste<<else>>dose<</if>> of your femcum.
		<</if>>
	<</if>>
<<elseif tooBigBreasts(getSlave($AS))>>
	You get $him situated on the edge of your desk, on $his back. This pins $him down, the massive weight of $his tits stopping $him from going anywhere at all. $His head dangles off the edge of the desk, leaving $his <<if $seeRace == 1>><<= getSlave($AS).race>> <</if>>mouth at the perfect angle for use.
	$He has absolutely no control over
	<<if ($PC.dick != 0)>>
		the depth or quickness of oral sex, so you are careful not to hurt $him. Even so, you take $him to the edge of gagging, enjoying the sight of $his <<= getSlave($AS).skin>> throat bulging and $his absurd boobs jiggling as $he struggles to breathe. Eventually you shoot your load directly down $his gullet.
		<<if $PC.vagina != -1>>If $he thought that was it, $he's soon corrected: you hike yourself up further, and grind your pussy against $his face.<</if>>
	<<else>>
		how hard you grind your cunt against $his face, so you are careful not to suffocate $him. Even so, you take $him to the edge, enjoying the sight of $his absurd boobs jiggling as $he struggles to breathe. Eventually you climax, giving $him a good <<if canTaste(getSlave($AS))>>taste<<else>>dose<</if>> of your femcum.
	<</if>>
<<elseif tooBigButt(getSlave($AS))>>
	You get $him situated on the edge of your desk, on $his back. This anchors $him, the massive weight of $his ass stopping $him from going anywhere at all. $His head dangles off the edge of the desk, leaving $his <<if $seeRace == 1>><<= getSlave($AS).race>> <</if>>mouth at the perfect angle for use.
	<<if ($PC.dick != 0)>>
		$He has absolutely no control over the depth or quickness of oral sex, so you are careful not to hurt $him. Even so, you take $him to the edge of gagging, enjoying the sight of $his <<= getSlave($AS).skin>> throat bulging and $his absurd rear jiggling as $he struggles to breathe. Eventually you shoot your load directly down $his gullet.
		<<if $PC.vagina != -1>>If $he thought that was it, $he's soon corrected: you hike yourself up further, and grind your pussy against $his face.<</if>>
	<<else>>
		$He has absolutely no control over how hard you grind your cunt against $his face, so you are careful not to suffocate $him. Even so, you take $him to the edge, enjoying the sight of $his absurd rear jiggling as $he struggles to breathe. Eventually you climax, giving $him a good <<if canTaste(getSlave($AS))>>taste<<else>>dose<</if>> of your femcum.
	<</if>>
<<elseif (getSlave($AS).fetish == "cumslut") && (getSlave($AS).fetishStrength > 60) && (getSlave($AS).fetishKnown == 1) && (getSlave($AS).dick != 0) && ($PC.dick != 0)>>
	$He comes over eagerly, with hunger <<if canSee(getSlave($AS))>>in $his eyes<<else>>on $his face<</if>>. $He gets to <<if hasBothLegs(getSlave($AS))>>$his knees<<else>>the floor<</if>>, hurriedly takes you into $his <<if $seeRace == 1>><<= getSlave($AS).race>> <</if>>mouth, and gives the blowjob $his all. As a cumslut $he's almost desperate to get your cum into $his mouth and <<if (getSlave($AS).chastityPenis == 1)>>(since $his cock is off limits) frantically rubs $his nipples and asspussy<<elseif canAchieveErection(getSlave($AS))>>jacks $himself off<<else>>rubs $his sadly limp member<</if>> in anticipation.<<if $PC.vagina != -1>> You have more than one variety of deliciousness for $him, and $he's careful not to neglect your wet cunt.<</if>> When you finish, $he sits back with an ecstatic look on $his face and lets your cum rest in $his mouth as $he climaxes into $his <<= getSlave($AS).skin>> hand. $He pours $his own cum from $his hand into $his mouth so it can mingle with yours.
<<elseif (getSlave($AS).fetish == "cumslut") && (getSlave($AS).fetishStrength > 60) && (getSlave($AS).fetishKnown == 1) && ($PC.dick != 0)>>
	$He comes over eagerly, with hunger <<if canSee(getSlave($AS))>>in $his eyes<<else>>on $his face<</if>>. $He gets to <<if hasAnyLegs(getSlave($AS))>>$his knee<<if hasBothLegs(getSlave($AS))>>s<</if>><<else>>the ground<</if>>, hurriedly takes you into $his <<if $seeRace == 1>><<= getSlave($AS).race>> <</if>>mouth, and gives the blowjob $his all. As a cumslut $he's almost desperate to get your cum into $his mouth and rubs $himself in anticipation.<<if $PC.vagina != -1>> You have more than one variety of deliciousness for $him, and $he's careful not to neglect your wet cunt.<</if>> When you finish, $he sits back with an ecstatic look on $his face and lets your cum rest in $his mouth as $he climaxes.
<<elseif getSlave($AS).devotion < -20>>
	$He tries to back away, so you
	<<if ($PC.dick != 0)>>
		<<if getSlave($AS).mouthAccessory == "dildo gag">>
			grab $him; $his <<if $seeRace == 1>><<= getSlave($AS).race>> <</if>>mouth is already held invitingly open by $his gag, and $he's prevented from biting. You push $him down to <<if hasAnyLegs(getSlave($AS))>>$his knee<<if hasBothLegs(getSlave($AS))>>s<</if>><<else>>the ground<</if>> with $his head against the couch next to your desk so you can give $him a good hard throat fuck. When you cum down $his <<= getSlave($AS).skin>> throat $he retches through $his tears.
			<<if $PC.vagina != -1>>$He has a mere moment to get $his breath back before you press your pussy against $his unwilling mouth.<</if>>
		<<elseif getSlave($AS).mouthAccessory == "massive dildo gag">>
			grab $him; $his <<if $seeRace == 1>><<= getSlave($AS).race>> <</if>>mouth is left agape, unable to close after being forced so widely open for so long, so $he is unlikely to bite. You push $him down to <<if hasAnyLegs(getSlave($AS))>>$his knee<<if hasBothLegs(getSlave($AS))>>s<</if>><<else>>the ground<</if>> with $his head against the couch next to your desk so you can give $him a good hard throat fuck. When you cum down $his <<= getSlave($AS).skin>> throat $he retches through $his tears.
			<<if $PC.vagina != -1>>$He has a mere moment to get $his breath back before you press your pussy against $his unwilling mouth.<</if>>
		<<else>>
			grab $him and force a ring gag into $his <<if $seeRace == 1>><<= getSlave($AS).race>> <</if>>mouth. Once you have the straps secured behind $his head, $he's prevented from biting. You push $him down to <<if hasAnyLegs(getSlave($AS))>>$his knee<<if hasBothLegs(getSlave($AS))>>s<</if>><<else>>the ground<</if>> with $his head against the couch next to your desk so you can give $him a good hard throat fuck. When you cum down $his <<= getSlave($AS).skin>> throat $he retches through $his tears.
			<<if $PC.vagina != -1>>$He has a mere moment to get $his breath back before you press your pussy against $his unwilling mouth.<</if>>
		<</if>>
	<<else>>
		seize $him and throw $him onto the couch face-up, and then kneel on $him with your legs on either side of $his crying body, so your pussylips are hard against $his <<if $seeRace == 1>><<= getSlave($AS).race>> <</if>>mouth. $He desperately eats you out, trying to get you off as fast as possible so $he can get a bit more air, but you grind down without mercy, taking your pleasure.
	<</if>>
<<elseif getSlave($AS).devotion <= 20>>
	$He comes over reluctantly and begins to
	<<if ($PC.dick != 0)>>
		give you a blowjob. Deciding that $he isn't showing the necessary enthusiasm, you hold $his head and fuck $his <<if $seeRace == 1>><<= getSlave($AS).race>> <</if>>face instead<<if $PC.vagina != -1>>, occasionally jerking your dick free to shove your pussy against $his face instead<</if>>. $He does $his best to follow your motions but still splutters and gags. You pull free to cum across $his <<= getSlave($AS).skin>> face and hair.
	<<else>>
		eat you out. Deciding that $he isn't showing the necessary enthusiasm, you hold $his head and grind your pussy against $his <<if $seeRace == 1>><<= getSlave($AS).race>> <</if>>face instead. $He does $his best to follow your motions but still splutters and gasps for air. You climax quickly and haul $him <<if hasBothLegs(getSlave($AS))>>to $his feet<<else>>upright<</if>>, kissing the bewildered $girl full on the mouth. You can taste yourself on $his lips.
	<</if>>
<<else>>
	$He licks $his lips <<if canSee(getSlave($AS))>>and looks you in the eyes <</if>>as $he gets to <<if hasBothLegs(getSlave($AS))>>$his knees<<else>>the floor<</if>>. $He
	<<if ($PC.dick != 0)>>
		gives you a long, deep blowjob. $He massages your balls<<if $PC.vagina != -1>> and pussy<</if>> with one hand and $his breasts with the other, giving you a show. $He sucks your head until you climax, letting your cock pop free of $his mouth to shoot pearly cum all across $his <<= getSlave($AS).skin>> face.
	<<else>>
		eats you out like $he's starving, moaning into your pussy to show off $his arousal and add to your pleasure. $He massages your perineum with one hand and $his breasts with the other, giving you a show. $He slowly concentrates more and more attention on your clit until you climax convulsively. You pull $him <<if hasBothLegs(getSlave($AS))>>to $his feet<<else>>upright<</if>>, kissing the compliant $girl full on the mouth. You can taste yourself on $his lips.
	<</if>>
<</if>>

<<if ["cosmetic braces", "fang", "fangs", "pointy", "straightening braces"].includes(getSlave($AS).teeth)>>
	<<if (getSlave($AS).skill.oral >= 100)>>
		$He's so orally skilled that $he had the confidence to lightly graze you with
		<<if (getSlave($AS).teeth == "pointy")>>
			$his sharp teeth
		<<elseif (getSlave($AS).teeth == "fangs")>>
			a fang
		<<elseif (getSlave($AS).teeth == "fang")>>
			$his fang
		<<else>>
			$his braces
		<</if>>
		on occasion, a delightfully scary sensation.
	<<elseif (getSlave($AS).skill.oral > 30)>>
		$He's sufficiently orally skilled that $he managed to accomplish all that without
		<<if (getSlave($AS).teeth == "pointy")>>
			$his sharp teeth
		<<elseif (getSlave($AS).teeth == "fangs")>>
			any fangs
		<<elseif (getSlave($AS).teeth == "fang")>>
			$his fang
		<<else>>
			$his braces
		<</if>>
		contacting your <<if ($PC.dick != 0)>>dick<<else>>pussy<</if>> once.
	<<elseif (getSlave($AS).skill.oral > 10)>>
		With $his basic oral skills, $he accidentally grazed you with $his
		<<if (getSlave($AS).teeth == "pointy")>>
			sharp teeth
		<<elseif (getSlave($AS).teeth == "fangs")>>
			fangs
		<<elseif (getSlave($AS).teeth == "fang")>>
			fang
		<<else>>
			braces
		<</if>>
		a few times, leaving your <<if ($PC.dick != 0)>>dick<<else>>pussy<</if>> slightly the worse for wear.
	<<else>>
		Since $he is orally unskilled, you were sporting with your <<if ($PC.dick != 0)>>dick<<else>>pussy<</if>> by using $his mouth. $He did $his best to keep $his
		<<if (getSlave($AS).teeth == "pointy")>>
			sharp teeth off
		<<elseif (getSlave($AS).teeth == "fangs")>>
			fangs out of
		<<elseif (getSlave($AS).teeth == "fang")>>
			fang out of
		<<else>>
			braces off
		<</if>>
		you, but you're bleeding a bit down there.
	<</if>>
<</if>>

<<if (random(1,100) > (100 + getSlave($AS).devotion))>>
	<<if (getSlave($AS).fetish != "cumslut") && (getSlave($AS).energy <= 95) && (getSlave($AS).sexualFlaw != "hates oral")>>
		Being facefucked by force has given $him a @@.flaw.gain;hatred of oral sex.@@
		<<set getSlave($AS).sexualFlaw = "hates oral">>
	<</if>>
<<elseif (random(1,100) > (110 - getSlave($AS).devotion))>>
	<<if ($PC.dick != 0) && (getSlave($AS).fetish == "none") && (getSlave($AS).sexualFlaw != "hates oral")>>
		Consummating an enjoyable sexual encounter by drinking your cum has @@.fetish.gain;encouraged $him to focus on oral sex.@@
		<<set getSlave($AS).fetish = "cumslut", getSlave($AS).fetishKnown = 1>>
	<</if>>
<</if>>

<<if passage() != "Slave Interact">>
	<<set _fl = $slaveIndices[getSlave($AS).ID]>>
	<<if def _fl>>
		<<set $slaves[_fl] = getSlave($AS)>>
	<</if>>
<</if>>

src/npc/interaction/fLips.tw