diff --git a/code/__DEFINES/hyper_arousal.dm b/code/__DEFINES/hyper_arousal.dm index 6b16fba9b..438a97898 100644 --- a/code/__DEFINES/hyper_arousal.dm +++ b/code/__DEFINES/hyper_arousal.dm @@ -6,4 +6,9 @@ #define BUTT_MIN_SIZE 0 #define BUTT_MAX_SIZE_SELECTABLE 5 -#define BUTT_MAX_SIZE 8 \ No newline at end of file +#define BUTT_MAX_SIZE 8 + + +#define GENITALS_HIDDEN "hidden" +#define GENITALS_CLOTHES "clothes" +#define GENITALS_VISIBLE "visible" diff --git a/hyperstation/code/modules/arousal/arousalhud.dm b/hyperstation/code/modules/arousal/arousalhud.dm index 375728cf5..757fd2330 100644 --- a/hyperstation/code/modules/arousal/arousalhud.dm +++ b/hyperstation/code/modules/arousal/arousalhud.dm @@ -11,7 +11,15 @@ for(var/obj/item/organ/genital/G in U.internal_organs) if(!G.nochange) if(!G.dontlist) - dat += "[G.mode == "hidden" ? "[G.name] (Hidden)" : (G.mode == "clothes" ? "[G.name] (Hidden by Clothes)" : (G.mode == "visable" ? "[G.name] (Visible)" : "[G.name] (Visible)"))]
" + var/genital_visibility = "[G.name] (Visible)" + switch(G.mode) + if(GENITALS_HIDDEN) + genital_visibility = "[G.name] (Hidden)" + if(GENITALS_CLOTHES) + genital_visibility = "[G.name] (Hidden by Clothes)" + if(GENITALS_VISIBLE) + genital_visibility = "[G.name] (Visible)" + dat += "[genital_visibility]
" dat += {"
Contexual Options

"} var/obj/item/organ/genital/penis/P = user.getorganslot("penis") diff --git a/modular_citadel/code/modules/arousal/arousal.dm b/modular_citadel/code/modules/arousal/arousal.dm index d465c1f61..e7f8b4f17 100644 --- a/modular_citadel/code/modules/arousal/arousal.dm +++ b/modular_citadel/code/modules/arousal/arousal.dm @@ -489,11 +489,9 @@ /mob/living/carbon/human/proc/pick_masturbate_genitals() var/obj/item/organ/genital/ret_organ var/list/genitals_list = list() - var/list/worn_stuff = get_equipped_items() - for(var/obj/item/organ/genital/G in internal_organs) if(G.can_masturbate_with) //filter out what you can't masturbate with - if(G.is_exposed(worn_stuff)) //Nude or through_clothing + if(G.is_exposed()) //Nude or through_clothing if(!G.dontlist) genitals_list += G if(genitals_list.len) @@ -504,10 +502,8 @@ /mob/living/carbon/human/proc/target_genitals(mob/living/carbon/human/T) //used for targeting others var/obj/item/organ/genital/ret_organ var/list/genitals_list = list() - var/list/worn_stuff = get_equipped_items() - for(var/obj/item/organ/genital/G in T.internal_organs) - if(G.is_exposed(worn_stuff)) //Nude or through_clothing + if(G.is_exposed()) //Nude or through_clothing if(!G.dontlist) genitals_list += G if(genitals_list.len) @@ -518,13 +514,9 @@ /mob/living/carbon/human/proc/pick_climax_genitals() var/obj/item/organ/genital/ret_organ var/list/genitals_list = list() - var/list/worn_stuff = get_equipped_items() - for(var/obj/item/organ/genital/G in internal_organs) - if(G.can_climax) //filter out what you can't masturbate with - if(G.is_exposed(worn_stuff)) //Nude or through_clothing - if(!G.dontlist) - genitals_list += G + if(G.can_climax && G.is_exposed() && !G.dontlist) + genitals_list += G if(genitals_list.len) ret_organ = input(src, "with what?", "Climax", null) as null|obj in genitals_list return ret_organ @@ -744,8 +736,7 @@ continue // no wombs or testicles var/mob/living/carbon/partner var/check_target - var/list/worn_stuff = get_equipped_items() - if(current_genital.is_exposed(worn_stuff)) + if(current_genital.is_exposed()) if(src.pulling) if(iscarbon(src.pulling)) check_target = src.pulling diff --git a/modular_citadel/code/modules/arousal/organs/genitals.dm b/modular_citadel/code/modules/arousal/organs/genitals.dm index bdf4d7856..9edea910a 100644 --- a/modular_citadel/code/modules/arousal/organs/genitals.dm +++ b/modular_citadel/code/modules/arousal/organs/genitals.dm @@ -78,22 +78,21 @@ if("Always visible") through_clothes = TRUE hidden = FALSE - mode = "visible" + mode = GENITALS_VISIBLE if(!(src in owner.exposed_genitals)) owner.exposed_genitals += src if("Hidden by clothes") through_clothes = FALSE hidden = FALSE - mode = "clothes" + mode = GENITALS_CLOTHES if(src in owner.exposed_genitals) owner.exposed_genitals -= src if("Always hidden") through_clothes = FALSE hidden = TRUE - mode = "hidden" + mode = GENITALS_HIDDEN if(src in owner.exposed_genitals) owner.exposed_genitals -= src - if(ishuman(owner)) //recast to use update genitals proc var/mob/living/carbon/human/H = owner H.update_genitals()