diff --git a/hyperstation/code/modules/arousal/arousalhud.dm b/hyperstation/code/modules/arousal/arousalhud.dm
index b183c3181..1b49efdc1 100644
--- a/hyperstation/code/modules/arousal/arousalhud.dm
+++ b/hyperstation/code/modules/arousal/arousalhud.dm
@@ -351,17 +351,14 @@ obj/screen/arousal/proc/kiss()
/mob/living/carbon/human/proc/kisstarget(mob/living/L)
src << browse(null, "window=arousal") //closes the arousal window, if its open, mainly to stop spam
- if(isliving(L)) //is your target living? Living people can resist your advances if they want to via moving.
- if(iscarbon(L))
- src.visible_message("[src] is about to kiss [L]!", \
- "You're attempting to kiss [L]!", \
- "You're attempting to kiss with something!")
- SEND_SIGNAL(L, COMSIG_ADD_MOOD_EVENT, "kissed", /datum/mood_event/kiss) //how cute, affection is nice.
- //Well done you kissed it/them!
+
+ M.adjustPainLoss(-5, 0) //mommas kisses always stop alittle pain..
+ SEND_SIGNAL(L, COMSIG_ADD_MOOD_EVENT, "kissed", /datum/mood_event/kiss) //how cute, affection is nice.
src.visible_message("[src] kisses [L]!", \
"You kiss [L]!", \
"You kiss something!")
+
/mob/living/carbon/human/proc/climaxalone()
//we dont need hands to climax alone, its hands free!
var/obj/item/organ/genital/picked_organ
diff --git a/hyperstation/code/modules/mob/living/carbon/carbon.dm b/hyperstation/code/modules/mob/living/carbon/carbon.dm
index 13d565fc2..29282c038 100644
--- a/hyperstation/code/modules/mob/living/carbon/carbon.dm
+++ b/hyperstation/code/modules/mob/living/carbon/carbon.dm
@@ -36,23 +36,18 @@
if (BP.pain_dam && pain_effect > 10 && (stat != DEAD))
var pain_level = (round(BP.pain_dam / 10))
- if (pain_level <= 4)
- switch(pain_level) //for every 10 points of damage minor -> major
- if(1)//start at 10 just so it doesnt get annoying with micro damage
- to_chat(src, "You feel minor pain in your [BP.name].")
- if(2)
- to_chat(src, "You feel pain in your [BP.name].")
- if(3)
- to_chat(src, "You feel severe pain in your [BP.name].")
- if(4)
- to_chat(src, "You feel overwhelming pain in your [BP.name].")
- jitteriness += 2
- stuttering += 2
+ switch(pain_level) //for every 10 points of damage minor -> major
+ if(1)//start at 10 just so it doesnt get annoying with micro damage
+ to_chat(src, "You feel minor pain in your [BP.name].")
+ if(2)
+ to_chat(src, "You feel pain in your [BP.name].")
+ if(3)
+ to_chat(src, "You feel severe pain in your [BP.name].")
+ if(4 to 99)
+ to_chat(src, "You feel overwhelming pain in your [BP.name].")
+ jitteriness += 2
+ stuttering += 2
- else //god damn.. thats alot of pain owe.
- to_chat(src, "You cant handle the pain in your [BP.name].")
- jitteriness += 2
- stuttering += 2
total_pain = pain_amount
@@ -70,15 +65,24 @@
pain_effect = 0 //reset the timer 10 seconds.
if(stat != DEAD)
//status effects for pain..
+ var/mob/living/H = src
if (total_pain > 50 && total_pain < 80)
- to_chat(src, "You cant handle the pain...")
+ if(HAS_TRAIT(H, TRAIT_MASO)) //just because your into it doesnt give you a advantage..
+ to_chat(src, "You love this pain, it excites you...")
+ H.adjustArousalLoss(6)
+ else
+ to_chat(src, "You cant handle the pain...")
if(prob(20))
emote("scream")
jitteriness += 3 //shake
stuttering += 3 //stutter words, your in pain bro.
if (total_pain > 80) //your in trouble. fainting..
- to_chat(src, "You cant handle the intense pain...")
+ if(HAS_TRAIT(H, TRAIT_MASO))
+ to_chat(src, "You love this intense pain, it excites you...")
+ H.adjustArousalLoss(12)
+ else
+ to_chat(src, "You cant handle the intense pain...")
if(prob(20)) //chance of fainting..
visible_message("[src] collapses!")
Unconscious(100)