diff --git a/code/modules/arousal/arousal.dm b/code/modules/arousal/arousal.dm index b1d8815696..8ed482789b 100644 --- a/code/modules/arousal/arousal.dm +++ b/code/modules/arousal/arousal.dm @@ -105,21 +105,38 @@ to_chat(src, span_userlove("You climax[isturf(loc) ? " onto [loc]" : ""] with your [G.name].")) do_climax(fluid_source, loc, G) -/mob/living/carbon/human/proc/mob_climax_partner(obj/item/organ/genital/G, mob/living/L, spillage = TRUE, mb_time = 30, obj/item/organ/genital/Lgen = null) //Used for climaxing with any living thing +/mob/living/carbon/human/proc/mob_climax_partner(obj/item/organ/genital/G, mob/living/L, spillage = TRUE, mb_time = 30, obj/item/organ/genital/Lgen = null, forced = FALSE, anonymous = FALSE) //Used for climaxing with any living thing var/datum/reagents/fluid_source = G.climaxable(src) if(!fluid_source) return + var/user_name + var/user_p_their + var/target_name + var/target_p_their + var/target_p_them + if(anonymous) + user_name = "Someone" + target_name = "someone" + user_p_their = "their" + target_p_their = "their" + target_p_them = "them" + else + user_name = "[src]" + target_name = "[L]" + user_p_their = p_their() + target_p_their = L.p_their() + target_p_them = L.p_them() if(mb_time) //Skip warning if this is an instant climax. - to_chat(src, span_userlove("You're about to climax [(Lgen) ? "in [L]'s [Lgen.name]" : "with [L]"]!")) - to_chat(L, span_userlove("[src] is about to climax [(Lgen) ? "in your [Lgen.name]" : "with you"]!")) + to_chat(src, span_userlove("You're about to climax [(Lgen) ? "in [target_name]'s [Lgen.name]" : "with [L]"]!")) + to_chat(L, span_userlove("[user_name] is about to climax [(Lgen) ? "in your [Lgen.name]" : "with you"]!")) if(!do_after(src, mb_time, target = src) || !in_range(src, L) || !G.climaxable(src, TRUE)) return if(spillage) - to_chat(src, span_userlove("You orgasm with [L], spilling out of [(Lgen) ? "[L.p_their()] [Lgen.name]" : "[L.p_them()]"], using your [G.name].")) - to_chat(L, span_userlove("[src] climaxes [(Lgen) ? "in your [Lgen.name]" : "with you"], overflowing and spilling, using [p_their()] [G.name]!")) + to_chat(src, span_userlove("You orgasm with [target_name], spilling out of [(Lgen) ? "[target_p_their] [Lgen.name]" : "[target_p_them]"], using your [G.name].")) + to_chat(L, span_userlove("[user_name] climaxes [(Lgen) ? "in your [Lgen.name]" : "with you"], overflowing and spilling, using [user_p_their] [G.name]!")) else //knots and other non-spilling orgasms - to_chat(src, span_userlove("You climax [(Lgen) ? "in [L]'s [Lgen.name]" : "with [L]"], your [G.name] spilling nothing.")) - to_chat(L, span_userlove("[src] climaxes [(Lgen) ? "in your [Lgen.name]" : "with you"], [p_their()] [G.name] spilling nothing!")) + to_chat(src, span_userlove("You climax [(Lgen) ? "in [target_name]'s [Lgen.name]" : "with [target_name]"], your [G.name] spilling nothing.")) + to_chat(L, span_userlove("[user_name] climaxes [(Lgen) ? "in your [Lgen.name]" : "with you"], [user_p_their] [G.name] spilling nothing!")) //SEND_SIGNAL(L, COMSIG_ADD_MOOD_EVENT, "orgasm", /datum/mood_event/orgasm) //Sandstorm edit do_climax(fluid_source, spillage ? loc : L, G, spillage,, Lgen) //L.receive_climax(src, Lgen, G, spillage) @@ -215,7 +232,7 @@ //Here's the main proc itself //skyrat edit - forced partner and spillage -/mob/living/carbon/human/proc/mob_climax(forced_climax=FALSE,cause = "", var/mob/living/forced_partner = null, var/forced_spillage = TRUE, var/obj/item/organ/genital/forced_receiving_genital = null) //Forced is instead of the other proc, makes you cum if you have the tools for it, ignoring restraints +/mob/living/carbon/human/proc/mob_climax(forced_climax=FALSE,cause = "", var/mob/living/forced_partner = null, var/forced_spillage = TRUE, var/obj/item/organ/genital/forced_receiving_genital = null, anonymous = FALSE) //Forced is instead of the other proc, makes you cum if you have the tools for it, ignoring restraints set waitfor = FALSE if(mb_cd_timer > world.time) if(!forced_climax) //Don't spam the message to the victim if forced to come too fast @@ -261,7 +278,7 @@ // if(partner) //Did they pass the clothing checks? //skyrat edit - mob_climax_partner(G, partner, spillage = forced_spillage, mb_time = 0, Lgen = forced_receiving_genital, forced = forced_climax) //Instant climax due to forced + mob_climax_partner(G, partner, forced_spillage, 0, forced_receiving_genital, forced_climax, anonymous) //Instant climax due to forced // continue //You've climaxed once with this organ, continue on //not exposed OR if no partner was found while exposed, climax alone diff --git a/modular_sand/code/datums/interactions/lewd_definitions.dm b/modular_sand/code/datums/interactions/lewd_definitions.dm index f8d68dfce7..d3dbccfdb7 100644 --- a/modular_sand/code/datums/interactions/lewd_definitions.dm +++ b/modular_sand/code/datums/interactions/lewd_definitions.dm @@ -406,12 +406,12 @@ audible_message(span_lewd("[src] [pick("mimes a pleasured moan","moans in silence")].")) lastmoan = moan -/mob/living/proc/cum(mob/living/partner, target_orifice, cum_inside = FALSE) //SPLURT EDIT - extra argument `cum_inside` +/mob/living/proc/cum(mob/living/partner, target_orifice, cum_inside = FALSE, anonymous = FALSE) //SPLURT EDIT - extra argument `cum_inside` and 'anonymous' var/message var/u_His = p_their() var/u_He = p_they() var/u_S = p_s() - var/t_His = partner?.p_their() + //var/t_His = partner?.p_their() //SPLURT EDIT - unused var/cumin = cum_inside // SPLURT EDIT - defaults to argument `cum_inside` rather than FALSE var/partner_carbon_check = FALSE var/obj/item/organ/genital/target_gen = null @@ -420,6 +420,16 @@ if(iscarbon(partner)) c_partner = partner partner_carbon_check = TRUE + + // SPLURT EDIT- new variables that are used in place of [partner_t_His] and [partner] in message strings to support anonymity + var/partner_name + var/partner_t_His + if(anonymous) + partner_name = "someone" + partner_t_His = "their" + else + partner_name = "\the [partner]" + partner_t_His = partner?.p_their() if(src != partner) if(!last_genital) @@ -429,77 +439,77 @@ switch(target_orifice) if(CUM_TARGET_MOUTH) if(partner.has_mouth() && partner.mouth_is_free()) - message = "cums right in \the [partner]'s mouth." + message = "cums right in [partner_name]'s mouth." cumin = TRUE else - message = "cums on \the [partner]'s face." + message = "cums on [partner_name]'s face." if(CUM_TARGET_THROAT) if(partner.has_mouth() && partner.mouth_is_free()) - message = "shoves deep into \the [partner]'s throat and cums." + message = "shoves deep into [partner_name]'s throat and cums." cumin = TRUE else - message = "cums on \the [partner]'s face." + message = "cums on [partner_name]'s face." if(CUM_TARGET_VAGINA) if(partner.has_vagina(REQUIRE_EXPOSED)) if(partner_carbon_check) target_gen = c_partner.getorganslot(ORGAN_SLOT_VAGINA) - message = "cums in \the [partner]'s pussy." + message = "cums in [partner_name]'s pussy." cumin = TRUE else - message = "cums on \the [partner]'s belly." + message = "cums on [partner_name]'s belly." if(CUM_TARGET_ANUS) if(partner.has_anus(REQUIRE_EXPOSED)) - message = "cums in \the [partner]'s asshole." + message = "cums in [partner_name]'s asshole." cumin = TRUE else - message = "cums on \the [partner]'s backside." + message = "cums on [partner_name]'s backside." if(CUM_TARGET_HAND) if(partner.has_hand(REQUIRE_ANY)) - message = "cums in \the [partner]'s hand." + message = "cums in [partner_name]'s hand." else - message = "cums on \the [partner]." + message = "cums on [partner_name]." if(CUM_TARGET_BREASTS) if(partner.has_breasts(REQUIRE_EXPOSED)) - message = "cums onto \the [partner]'s breasts." + message = "cums onto [partner_name]'s breasts." else - message = "cums on \the [partner]'s chest and neck." + message = "cums on [partner_name]'s chest and neck." if(NUTS_TO_FACE) if(partner.has_mouth() && partner.mouth_is_free()) - message = "vigorously ruts [u_His] nutsack into \the [partner]'s mouth before shooting [u_His] thick, sticky jizz all over [t_His] eyes and hair." + message = "vigorously ruts [u_His] nutsack into [partner_name]'s mouth before shooting [u_His] thick, sticky jizz all over [partner_t_His] eyes and hair." if(THIGH_SMOTHERING) if(has_penis(REQUIRE_EXPOSED)) //it already checks for the cock before, why the hell would you do this redundant shit - message = "keeps \the [partner] locked in [u_His] thighs as [u_His] cock throbs, dumping its heavy load all over [t_His] face." + message = "keeps [partner_name] locked in [u_His] thighs as [u_His] cock throbs, dumping its heavy load all over [partner_t_His] face." else - message = "reaches [u_His] peak, locking [u_His] legs around \the [partner]'s head extra hard as [u_He] cum[u_S] straight onto the head stuck between [u_His] thighs" + message = "reaches [u_His] peak, locking [u_His] legs around [partner_name]'s head extra hard as [u_He] cum[u_S] straight onto the head stuck between [u_His] thighs" cumin = TRUE if(CUM_TARGET_FEET) if(!last_lewd_datum.require_target_num_feet) if(partner.has_feet()) - message = "cums on \the [partner]'s [partner.has_feet() == 1 ? pick("foot", "sole") : pick("feet", "soles")]." + message = "cums on [partner_name]'s [partner.has_feet() == 1 ? pick("foot", "sole") : pick("feet", "soles")]." else message = "cums on the floor!" else if(partner.has_feet()) - message = "cums on \the [partner]'s [last_lewd_datum.require_target_feet == 1 ? pick("foot", "sole") : pick("feet", "soles")]." + message = "cums on [partner_name]'s [last_lewd_datum.require_target_feet == 1 ? pick("foot", "sole") : pick("feet", "soles")]." else message = "cums on the floor!" //weird shit goes here if(CUM_TARGET_EARS) if(partner.has_ears()) - message = "cums inside \the [partner]'s ear." + message = "cums inside [partner_name]'s ear." else - message = "cums inside \the [partner]'s earsocket." + message = "cums inside [partner_name]'s earsocket." cumin = TRUE if(CUM_TARGET_EYES) if(partner.has_eyes()) - message = "cums on \the [partner]'s eyeball." + message = "cums on [partner_name]'s eyeball." else - message = "cums inside \the [partner]'s eyesocket." + message = "cums inside [partner_name]'s eyesocket." cumin = TRUE // if(CUM_TARGET_PENIS) if(partner.has_penis(REQUIRE_EXPOSED)) - message = "cums on \the [partner]." + message = "cums on [partner_name]." else message = "cums on the floor!" else @@ -511,72 +521,72 @@ switch(target_orifice) if(CUM_TARGET_MOUTH) if(partner.has_mouth() && partner.mouth_is_free()) - message = "squirts right in \the [partner]'s mouth." + message = "squirts right in [partner_name]'s mouth." cumin = TRUE else - message = "squirts on \the [partner]'s face." + message = "squirts on [partner_name]'s face." if(CUM_TARGET_THROAT) if(partner.has_mouth() && partner.mouth_is_free()) - message = "rubs [u_His] vagina against \the [partner]'s mouth and cums." + message = "rubs [u_His] vagina against [partner_name]'s mouth and cums." cumin = TRUE else - message = "squirts on \the [partner]'s face." + message = "squirts on [partner_name]'s face." if(CUM_TARGET_VAGINA) if(partner.has_vagina(REQUIRE_EXPOSED)) - message = "squirts on \the [partner]'s pussy." + message = "squirts on [partner_name]'s pussy." cumin = TRUE else - message = "squirts on \the [partner]'s belly." + message = "squirts on [partner_name]'s belly." if(CUM_TARGET_ANUS) if(partner.has_anus(REQUIRE_EXPOSED)) - message = "squirts on \the [partner]'s asshole." + message = "squirts on [partner_name]'s asshole." cumin = TRUE else - message = "squirts on \the [partner]'s backside." + message = "squirts on [partner_name]'s backside." if(CUM_TARGET_HAND) if(partner.has_hand(REQUIRE_ANY)) - message = "squirts on \the [partner]'s hand." + message = "squirts on [partner_name]'s hand." else - message = "squirts on \the [partner]." + message = "squirts on [partner_name]." if(CUM_TARGET_BREASTS) if(partner.has_breasts(REQUIRE_EXPOSED)) - message = "squirts onto \the [partner]'s breasts." + message = "squirts onto [partner_name]'s breasts." else - message = "squirts on \the [partner]'s chest and neck." + message = "squirts on [partner_name]'s chest and neck." if(NUTS_TO_FACE) if(partner.has_mouth() && partner.mouth_is_free()) - message = "vigorously ruts [u_His] clit into \the [partner]'s mouth before shooting [u_His] femcum all over [t_His] eyes and hair." + message = "vigorously ruts [u_His] clit into [partner_name]'s mouth before shooting [u_His] femcum all over [partner_t_His] eyes and hair." if(THIGH_SMOTHERING) - message = "keeps \the [partner] locked in [u_His] thighs as [u_He] orgasm[u_S], squirting over [t_His] face." + message = "keeps [partner_name] locked in [u_His] thighs as [u_He] orgasm[u_S], squirting over [partner_t_His] face." cumin = TRUE if(CUM_TARGET_FEET) if(!last_lewd_datum.require_target_num_feet) if(partner.has_feet()) - message = "squirts on \the [partner]'s [partner.has_feet() == 1 ? pick("foot", "sole") : pick("feet", "soles")]." + message = "squirts on [partner_name]'s [partner.has_feet() == 1 ? pick("foot", "sole") : pick("feet", "soles")]." else message = "squirts on the floor!" else if(partner.has_feet()) - message = "squirts on \the [partner]'s [last_lewd_datum.require_target_feet == 1 ? pick("foot", "sole") : pick("feet", "soles")]." + message = "squirts on [partner_name]'s [last_lewd_datum.require_target_feet == 1 ? pick("foot", "sole") : pick("feet", "soles")]." else message = "squirts on the floor!" //weird shit goes here if(CUM_TARGET_EARS) if(partner.has_ears()) - message = "squirts on \the [partner]'s ear." + message = "squirts on [partner_name]'s ear." else - message = "squirts on \the [partner]'s earsocket." + message = "squirts on [partner_name]'s earsocket." cumin = TRUE if(CUM_TARGET_EYES) if(partner.has_eyes()) - message = "squirts on \the [partner]'s eyeball." + message = "squirts on [partner_name]'s eyeball." else - message = "squirts on \the [partner]'s eyesocket." + message = "squirts on [partner_name]'s eyesocket." cumin = TRUE // if(CUM_TARGET_PENIS) if(partner.has_penis(REQUIRE_EXPOSED)) - message = "squirts on \the [partner]'s penis" + message = "squirts on [partner_name]'s penis" else message = "squirts on the floor!" else @@ -593,77 +603,77 @@ switch(target_orifice) if(CUM_TARGET_MOUTH) if(partner.has_mouth() && partner.mouth_is_free()) - message = "cums right in \the [partner]'s mouth." + message = "cums right in [partner_name]'s mouth." cumin = TRUE else - message = "cums on \the [partner]'s face." + message = "cums on [partner_name]'s face." if(CUM_TARGET_THROAT) if(partner.has_mouth() && partner.mouth_is_free()) - message = "shoves deep into \the [partner]'s throat and cums." + message = "shoves deep into [partner_name]'s throat and cums." cumin = TRUE else - message = "cums on \the [partner]'s face." + message = "cums on [partner_name]'s face." if(CUM_TARGET_VAGINA) if(partner.has_vagina(REQUIRE_EXPOSED)) if(partner_carbon_check) target_gen = c_partner.getorganslot(ORGAN_SLOT_VAGINA) - message = "cums in \the [partner]'s pussy." + message = "cums in [partner_name]'s pussy." cumin = TRUE else - message = "cums on \the [partner]'s belly." + message = "cums on [partner_name]'s belly." if(CUM_TARGET_ANUS) if(partner.has_anus(REQUIRE_EXPOSED)) - message = "cums in \the [partner]'s asshole." + message = "cums in [partner_name]'s asshole." cumin = TRUE else - message = "cums on \the [partner]'s backside." + message = "cums on [partner_name]'s backside." if(CUM_TARGET_HAND) if(partner.has_hand()) - message = "cums in \the [partner]'s hand." + message = "cums in [partner_name]'s hand." else - message = "cums on \the [partner]." + message = "cums on [partner_name]." if(CUM_TARGET_BREASTS) if(partner.is_topless() && partner.has_breasts()) - message = "cums onto \the [partner]'s breasts." + message = "cums onto [partner_name]'s breasts." else - message = "cums on \the [partner]'s chest and neck." + message = "cums on [partner_name]'s chest and neck." if(NUTS_TO_FACE) if(partner.has_mouth() && partner.mouth_is_free()) - message = "vigorously ruts [u_His] nutsack into \the [partner]'s mouth before shooting [u_His] thick, sticky jizz all over [t_His] eyes and hair." + message = "vigorously ruts [u_His] nutsack into [partner_name]'s mouth before shooting [u_His] thick, sticky jizz all over [partner_t_His] eyes and hair." if(THIGH_SMOTHERING) if(has_penis()) //it already checks for the cock before, why the hell would you do this redundant shit - message = "keeps \the [partner] locked in [u_His] thighs as [u_His] cock throbs, dumping its heavy load all over [t_His] face." + message = "keeps [partner_name] locked in [u_His] thighs as [u_His] cock throbs, dumping its heavy load all over [partner_t_His] face." else - message = "reaches [u_His] peak, locking [u_His] legs around \the [partner]'s head extra hard as [u_He] cum[u_S] straight onto the head stuck between [u_His] thighs" + message = "reaches [u_His] peak, locking [u_His] legs around [partner_name]'s head extra hard as [u_He] cum[u_S] straight onto the head stuck between [u_His] thighs" cumin = TRUE if(CUM_TARGET_FEET) if(!last_lewd_datum || !last_lewd_datum.require_target_num_feet) if(partner.has_feet()) - message = "cums on \the [partner]'s [partner.has_feet() == 1 ? pick("foot", "sole") : pick("feet", "soles")]." + message = "cums on [partner_name]'s [partner.has_feet() == 1 ? pick("foot", "sole") : pick("feet", "soles")]." else message = "cums on the floor!" else if(partner.has_feet()) - message = "cums on \the [partner]'s [last_lewd_datum.require_target_feet == 1 ? pick("foot", "sole") : pick("feet", "soles")]." + message = "cums on [partner_name]'s [last_lewd_datum.require_target_feet == 1 ? pick("foot", "sole") : pick("feet", "soles")]." else message = "cums on the floor!" //weird shit goes here if(CUM_TARGET_EARS) if(partner.has_ears()) - message = "cums inside \the [partner]'s ear." + message = "cums inside [partner_name]'s ear." else - message = "cums inside \the [partner]'s earsocket." + message = "cums inside [partner_name]'s earsocket." cumin = TRUE if(CUM_TARGET_EYES) if(partner.has_eyes()) - message = "cums on \the [partner]'s eyeball." + message = "cums on [partner_name]'s eyeball." else - message = "cums inside \the [partner]'s eyesocket." + message = "cums inside [partner_name]'s eyesocket." cumin = TRUE // if(CUM_TARGET_PENIS) if(partner.has_penis(REQUIRE_EXPOSED)) - message = "cums on \the [partner]." + message = "cums on [partner_name]." else message = "cums on the floor!" else @@ -675,73 +685,73 @@ switch(target_orifice) if(CUM_TARGET_MOUTH) if(partner.has_mouth() && partner.mouth_is_free()) - message = "squirts right in \the [partner]'s mouth." + message = "squirts right in [partner_name]'s mouth." cumin = TRUE else - message = "squirts on \the [partner]'s face." + message = "squirts on [partner_name]'s face." if(CUM_TARGET_THROAT) if(partner.has_mouth() && partner.mouth_is_free()) - message = "rubs [u_His] vagina against \the [partner]'s mouth and cums." + message = "rubs [u_His] vagina against [partner_name]'s mouth and cums." cumin = TRUE else - message = "squirts on \the [partner]'s face." + message = "squirts on [partner_name]'s face." if(CUM_TARGET_VAGINA) if(partner.has_vagina(REQUIRE_EXPOSED)) - message = "squirts on \the [partner]'s pussy." + message = "squirts on [partner_name]'s pussy." cumin = TRUE else - message = "squirts on \the [partner]'s belly." + message = "squirts on [partner_name]'s belly." if(CUM_TARGET_ANUS) if(partner.has_anus(REQUIRE_EXPOSED)) - message = "squirts on \the [partner]'s asshole." + message = "squirts on [partner_name]'s asshole." cumin = TRUE else - message = "squirts on \the [partner]'s backside." + message = "squirts on [partner_name]'s backside." if(CUM_TARGET_HAND) if(partner.has_hand()) - message = "squirts on \the [partner]'s hand." + message = "squirts on [partner_name]'s hand." else - message = "squirts on \the [partner]." + message = "squirts on [partner_name]." if(CUM_TARGET_BREASTS) if(partner.has_breasts(REQUIRE_EXPOSED)) - message = "squirts onto \the [partner]'s breasts." + message = "squirts onto [partner_name]'s breasts." else - message = "squirts on \the [partner]'s chest and neck." + message = "squirts on [partner_name]'s chest and neck." if(NUTS_TO_FACE) if(partner.has_mouth() && partner.mouth_is_free()) - message = "vigorously ruts [u_His] clit into \the [partner]'s mouth before shooting [u_His] femcum all over [t_His] eyes and hair." + message = "vigorously ruts [u_His] clit into [partner_name]'s mouth before shooting [u_His] femcum all over [partner_t_His] eyes and hair." if(THIGH_SMOTHERING) - message = "keeps \the [partner] locked in [u_His] thighs as [u_He] orgasm[u_S], squirting over [t_His] face." + message = "keeps [partner_name] locked in [u_His] thighs as [u_He] orgasm[u_S], squirting over [partner_t_His] face." if(CUM_TARGET_FEET) if(!last_lewd_datum || !last_lewd_datum.require_target_num_feet) if(partner.has_feet()) - message = "squirts on \the [partner]'s [partner.has_feet() == 1 ? pick("foot", "sole") : pick("feet", "soles")]." + message = "squirts on [partner_name]'s [partner.has_feet() == 1 ? pick("foot", "sole") : pick("feet", "soles")]." else message = "squirts on the floor!" else if(partner.has_feet()) - message = "squirts on \the [partner]'s [last_lewd_datum.require_target_feet == 1 ? pick("foot", "sole") : pick("feet", "soles")]." + message = "squirts on [partner_name]'s [last_lewd_datum.require_target_feet == 1 ? pick("foot", "sole") : pick("feet", "soles")]." else message = "squirts on the floor!" //weird shit goes here if(CUM_TARGET_EARS) if(partner.has_ears()) - message = "squirts on \the [partner]'s ear." + message = "squirts on [partner_name]'s ear." else - message = "squirts on \the [partner]'s earsocket." + message = "squirts on [partner_name]'s earsocket." cumin = TRUE if(CUM_TARGET_EYES) if(partner.has_eyes()) - message = "squirts on \the [partner]'s eyeball." + message = "squirts on [partner_name]'s eyeball." else - message = "squirts on \the [partner]'s eyesocket." + message = "squirts on [partner_name]'s eyesocket." cumin = TRUE // if(CUM_TARGET_PENIS) if(partner.has_penis(REQUIRE_EXPOSED)) - message = "squirts on \the [partner]'s penis" + message = "squirts on [partner_name]'s penis" else message = "squirts on the floor!" else @@ -774,7 +784,7 @@ if(!partner) H.mob_climax(TRUE, "masturbation", "none") else - H.mob_climax(TRUE, "sex", partner, !cumin, target_gen) + H.mob_climax(TRUE, "sex", partner, !cumin, target_gen, anonymous) set_lust(0) SEND_SIGNAL(src, COMSIG_MOB_CAME, target_orifice, partner) @@ -803,7 +813,7 @@ return txt /// Handles the sex, if cumming returns true. -/mob/living/proc/handle_post_sex(amount, orifice, mob/living/partner, cum_inside = FALSE) //SPLURT EDIT - extra argument `cum_inside` +/mob/living/proc/handle_post_sex(amount, orifice, mob/living/partner, cum_inside = FALSE, anonymous = FALSE) //SPLURT EDIT - extra argument `cum_inside` if(stat != CONSCIOUS) return FALSE @@ -814,7 +824,7 @@ to_chat(src, "You struggle to not orgasm!") return FALSE if(lust >= get_lust_tolerance()*3) - cum(partner, orifice, cum_inside) //SPLURT EDIT - extra argument `cum_inside` + cum(partner, orifice, cum_inside, anonymous) //SPLURT EDIT - extra argument `cum_inside` return TRUE else moan() diff --git a/modular_sand/code/game/objects/items/fleshlight.dm b/modular_sand/code/game/objects/items/fleshlight.dm index f2d8dbdf4d..a3aaeda737 100644 --- a/modular_sand/code/game/objects/items/fleshlight.dm +++ b/modular_sand/code/game/objects/items/fleshlight.dm @@ -420,7 +420,7 @@ if(user_message) if(portal_target && (portal_target?.client?.prefs.toggles & VERB_CONSENT || !portal_target.ckey)) user.visible_message("[user] [user_message].") - if(M.can_penetrating_genital_cum() && M.handle_post_sex(user_lust_amt, target, portal_target, TRUE)) + if(M.can_penetrating_genital_cum() && M.handle_post_sex(user_lust_amt, target, portal_target, TRUE, TRUE)) switch(target) if(CUM_TARGET_PENIS) switch(portalunderwear.targetting) @@ -464,7 +464,7 @@ playlewdinteractionsound(loc, 'modular_sand/sound/interactions/champ_fingering.ogg', 50, 1, -1) to_chat(portal_target, "Someone uses the linked [name], they [target_message].") - if(portal_target.handle_post_sex(target_lust_amt, portalunderwear.targetting, M, TRUE)) + if(portal_target.handle_post_sex(target_lust_amt, portalunderwear.targetting, M, TRUE, TRUE)) switch(portalunderwear.targetting) if(CUM_TARGET_VAGINA) switch(target) diff --git a/modular_splurt/code/modules/arousal/arousal.dm b/modular_splurt/code/modules/arousal/arousal.dm index b5370894f0..d7dc12060e 100644 --- a/modular_splurt/code/modules/arousal/arousal.dm +++ b/modular_splurt/code/modules/arousal/arousal.dm @@ -1,4 +1,4 @@ -/mob/living/carbon/human/mob_climax_partner(obj/item/organ/genital/G, mob/living/L, spillage, mb_time, obj/item/organ/genital/Lgen, forced = FALSE) +/mob/living/carbon/human/mob_climax_partner(obj/item/organ/genital/G, mob/living/L, spillage = TRUE, mb_time = 30, obj/item/organ/genital/Lgen = null, forced = FALSE, anonymous = FALSE) . = ..() L.receive_climax(src, Lgen, G, spillage, forced = forced) if(iswendigo(L))