diff --git a/hyperstation/code/modules/arousal/arousalhud.dm b/hyperstation/code/modules/arousal/arousalhud.dm
index ae9b814e4..c51887b1a 100644
--- a/hyperstation/code/modules/arousal/arousalhud.dm
+++ b/hyperstation/code/modules/arousal/arousalhud.dm
@@ -48,15 +48,14 @@
if(user.pulling)
- dat += "Climax over [user.pulling]" //you can cum on objects if you really want...
- dat += "(Orgasm over a person or object.)
"
- if(isliving(user.pulling))
+ if(!(isliving(user.pulling) && !iscarbon(user.pulling))) // do not fuck animals
+ dat += "Climax over [user.pulling]" //you can cum on objects if you really want...
+ dat += "(Orgasm over a person or object.)
"
if(iscarbon(user.pulling))
dat += "Climax with [user.pulling]"
dat += {"(Orgasm with another person.)
"}
-
var/mob/living/carbon/human/H = user.pulling
- if(H.breedable && P && H)
+ if(H && H.breedable && P)
dat += "Impregnate [U.pulling] ([clamp(U.impregchance,0,100)]%)"
dat += "(Climax inside another person, and attempt to knock them up.)
"
else
@@ -140,7 +139,7 @@
T.toggle_visibility(picked_visibility)
if(href_list["masturbate"])
- if (H.arousalloss >= H.isPercentAroused(33)) //requires 33% arousal.
+ if (H.isPercentAroused(33)) //requires 33% arousal.
H.solomasturbate()
return
else
@@ -148,7 +147,7 @@
return
if(href_list["container"])
- if (H.arousalloss >= H.isPercentAroused(33)) //requires 33% arousal.
+ if (H.isPercentAroused(33)) //requires 33% arousal.
H.cumcontainer()
return
else
@@ -156,7 +155,7 @@
return
if(href_list["clothesplosion"])
- if (H.arousalloss >= H.isPercentAroused(33)) //Requires 33% arousal.
+ if (H.isPercentAroused(33)) //Requires 33% arousal.
H.clothesplosion()
return
else
@@ -164,7 +163,7 @@
return
if(href_list["climaxself"])
- if (H.arousalloss >= H.isPercentAroused(33)) //requires 33% arousal.
+ if (H.isPercentAroused(33)) //requires 33% arousal.
H.climaxself()
return
else
@@ -172,7 +171,7 @@
return
if(href_list["climax"])
- if (H.arousalloss >= H.isPercentAroused(33)) //requires 33% arousal.
+ if (H.isPercentAroused(33)) //requires 33% arousal.
H.climaxalone(FALSE)
return
else
@@ -180,7 +179,7 @@
return
if(href_list["climaxover"])
- if (H.arousalloss >= H.isPercentAroused(33)) //requires 33% arousal.
+ if (H.isPercentAroused(33)) //requires 33% arousal.
H.climaxover(usr.pulling)
return
else
@@ -188,7 +187,7 @@
return
if(href_list["climaxwith"])
- if (H.arousalloss >= H.isPercentAroused(33)) //requires 33% arousal.
+ if (H.isPercentAroused(33)) //requires 33% arousal.
H.climaxwith(usr.pulling)
return
else
@@ -196,7 +195,7 @@
return
if(href_list["impreg"])
- if (H.arousalloss >= H.isPercentAroused(33)) //requires 33% arousal.
+ if (H.isPercentAroused(33)) //requires 33% arousal.
H.impregwith(usr.pulling)
return
else
@@ -385,7 +384,7 @@ obj/screen/arousal/proc/kiss()
to_chat(src, "You cannot climax without choosing genitals.")
return
src << browse(null, "window=arousal") //alls fine, we can close the window now.
- if(!partner)
+ if(!partner || !iscarbon(partner))
to_chat(src, "You cannot do this alone.")
return
var/obj/item/organ/genital/penis/P = picked_organ
@@ -397,6 +396,7 @@ obj/screen/arousal/proc/kiss()
return
mob_climax_partner(picked_organ, partner, FALSE, FALSE, TRUE)
+
/mob/living/carbon/human/proc/clothesplosion()
if(usr.restrained(TRUE))
to_chat(usr, "You can't do that while restrained!")