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)