From f6adce72fbcdabec184f4b6eb85c131d82f957f0 Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Sun, 9 Feb 2020 06:51:57 +0100 Subject: [PATCH 1/2] Something about missing private sprites and their bad code. --- code/__DEFINES/citadel_defines.dm | 1 + code/__HELPERS/_cit_helpers.dm | 5 +--- code/__HELPERS/global_lists.dm | 13 +---------- .../sprite_accessories/_sprite_accessories.dm | 4 ++-- .../code/modules/arousal/arousal.dm | 20 +++++----------- .../code/modules/arousal/genitals.dm | 22 +++++------------- .../arousal/genitals_sprite_accessories.dm | 9 ++++--- .../code/modules/arousal/organs/breasts.dm | 18 +++++++++----- .../code/modules/arousal/organs/penis.dm | 11 ++++----- .../code/modules/arousal/organs/testicles.dm | 8 +++---- .../code/modules/arousal/organs/vagina.dm | 8 +++---- .../icons/obj/genitals/breasts.dmi | Bin 1407 -> 1295 bytes .../icons/obj/genitals/breasts_onmob.dmi | Bin 8830 -> 6159 bytes modular_citadel/icons/obj/genitals/penis.dmi | Bin 4707 -> 4303 bytes .../icons/obj/genitals/penis_onmob.dmi | Bin 10002 -> 9279 bytes .../icons/obj/genitals/taur_penis_onmob.dmi | Bin 1673 -> 1672 bytes .../icons/obj/genitals/testicles.dmi | Bin 1116 -> 1039 bytes modular_citadel/icons/obj/genitals/vagina.dmi | Bin 626 -> 546 bytes .../icons/obj/genitals/vagina_onmob.dmi | Bin 1330 -> 1112 bytes 19 files changed, 45 insertions(+), 74 deletions(-) diff --git a/code/__DEFINES/citadel_defines.dm b/code/__DEFINES/citadel_defines.dm index 2b19610040..56d5c63833 100644 --- a/code/__DEFINES/citadel_defines.dm +++ b/code/__DEFINES/citadel_defines.dm @@ -34,6 +34,7 @@ #define CAN_MASTURBATE_WITH (1<<5) #define MASTURBATE_LINKED_ORGAN (1<<6) //used to pass our mission to the linked organ #define CAN_CLIMAX_WITH (1<<7) +#define GENITAL_CAN_AROUSE (1<<8) #define COCK_SIZE_MIN 1 #define COCK_SIZE_MAX 20 diff --git a/code/__HELPERS/_cit_helpers.dm b/code/__HELPERS/_cit_helpers.dm index c0acf4c5a5..1bde770045 100644 --- a/code/__HELPERS/_cit_helpers.dm +++ b/code/__HELPERS/_cit_helpers.dm @@ -57,14 +57,11 @@ GLOBAL_LIST_EMPTY(ipc_antennas_list) //Genitals and Arousal Lists GLOBAL_LIST_EMPTY(genitals_list) -GLOBAL_LIST_EMPTY(cock_shapes_list)//global_lists.dm for the list initializations //Now also _DATASTRUCTURES globals.dm -GLOBAL_LIST_EMPTY(cock_shapes_icons) //Associated list for names->icon_states for cockshapes. +GLOBAL_LIST_EMPTY(cock_shapes_list) GLOBAL_LIST_EMPTY(gentlemans_organ_names) GLOBAL_LIST_EMPTY(balls_shapes_list) -GLOBAL_LIST_EMPTY(balls_shapes_icons) GLOBAL_LIST_EMPTY(breasts_size_list) GLOBAL_LIST_EMPTY(breasts_shapes_list) -GLOBAL_LIST_EMPTY(breasts_shapes_icons) GLOBAL_LIST_EMPTY(vagina_shapes_list) GLOBAL_LIST_INIT(cum_into_containers_list, list(/obj/item/reagent_containers/food/snacks/pie)) //Yer fuggin snowflake name list jfc GLOBAL_LIST_INIT(dick_nouns, list("dick","cock","member","shaft")) diff --git a/code/__HELPERS/global_lists.dm b/code/__HELPERS/global_lists.dm index ff9d1bec4c..7045767f98 100644 --- a/code/__HELPERS/global_lists.dm +++ b/code/__HELPERS/global_lists.dm @@ -51,26 +51,15 @@ init_sprite_accessory_subtypes(/datum/sprite_accessory/antenna, GLOB.ipc_antennas_list, roundstart = TRUE) //genitals init_sprite_accessory_subtypes(/datum/sprite_accessory/penis, GLOB.cock_shapes_list) - for(var/K in GLOB.cock_shapes_list) - var/datum/sprite_accessory/penis/value = GLOB.cock_shapes_list[K] - GLOB.cock_shapes_icons[K] = value.icon_state - init_sprite_accessory_subtypes(/datum/sprite_accessory/vagina, GLOB.vagina_shapes_list) init_sprite_accessory_subtypes(/datum/sprite_accessory/breasts, GLOB.breasts_shapes_list) + init_sprite_accessory_subtypes(/datum/sprite_accessory/testicles, GLOB.balls_shapes_list) GLOB.breasts_size_list = list ("a", "b", "c", "d", "e") //We need the list to choose from initialized, but it's no longer a sprite_accessory thing. GLOB.gentlemans_organ_names = list("phallus", "willy", "dick", "prick", "member", "tool", "gentleman's organ", "cock", "wang", "knob", "dong", "joystick", "pecker", "johnson", "weenie", "tadger", "schlong", "thirsty ferret", "baloney pony", "schlanger", "Mutton dagger", "old blind bob","Hanging Johnny", "fishing rod", "Tally whacker", "polly rocket", "One eyed trouser trout", "Ding dong", "ankle spanker", "Pork sword", "engine cranker", "Harry hot dog", "Davy Crockett", "Kidney cracker", "Heat seeking moisture missile", "Giggle stick", "love whistle", "Tube steak", "Uncle Dick", "Purple helmet warrior") - for(var/K in GLOB.breasts_shapes_list) - var/datum/sprite_accessory/breasts/value = GLOB.breasts_shapes_list[K] - GLOB.breasts_shapes_icons[K] = value.icon_state - - init_sprite_accessory_subtypes(/datum/sprite_accessory/testicles, GLOB.balls_shapes_list) - for(var/K in GLOB.balls_shapes_list) - var/datum/sprite_accessory/testicles/value = GLOB.balls_shapes_list[K] - GLOB.balls_shapes_icons[K] = value.icon_state for(var/gpath in subtypesof(/obj/item/organ/genital)) var/obj/item/organ/genital/G = gpath diff --git a/code/modules/mob/dead/new_player/sprite_accessories/_sprite_accessories.dm b/code/modules/mob/dead/new_player/sprite_accessories/_sprite_accessories.dm index 241ec8118e..92bc8e407b 100644 --- a/code/modules/mob/dead/new_player/sprite_accessories/_sprite_accessories.dm +++ b/code/modules/mob/dead/new_player/sprite_accessories/_sprite_accessories.dm @@ -16,7 +16,7 @@ from doing this unless you absolutely know what you are doing, and have defined a conversion in savefile.dm */ -/proc/init_sprite_accessory_subtypes(prototype, list/L, list/male, list/female,var/roundstart = FALSE)//Roundstart argument builds a specific list for roundstart parts where some parts may be locked +/proc/init_sprite_accessory_subtypes(prototype, list/L, list/male, list/female, roundstart = FALSE, skip_prototype = TRUE)//Roundstart argument builds a specific list for roundstart parts where some parts may be locked if(!istype(L)) L = list() if(!istype(male)) @@ -25,7 +25,7 @@ female = list() for(var/path in typesof(prototype)) - if(path == prototype) + if(path == prototype && skip_prototype) continue if(roundstart) var/datum/sprite_accessory/P = path diff --git a/modular_citadel/code/modules/arousal/arousal.dm b/modular_citadel/code/modules/arousal/arousal.dm index 3a586d061d..aa0021bd8f 100644 --- a/modular_citadel/code/modules/arousal/arousal.dm +++ b/modular_citadel/code/modules/arousal/arousal.dm @@ -46,20 +46,12 @@ var/list/obj/item/organ/genital/genit_list = list() if(!client?.prefs.arousable || (aphro && (client?.prefs.cit_toggles & NO_APHRO)) || (maso && !HAS_TRAIT(src, TRAIT_MASO))) return // no adjusting made here - if(strength>0) - for(var/obj/item/organ/genital/G in internal_organs) - if(!G.aroused_state && prob(strength*G.sensitivity)) - G.set_aroused_state(TRUE) - G.update_appearance() - if(G.aroused_state) - genit_list += G - else - for(var/obj/item/organ/genital/G in internal_organs) - if(G.aroused_state && prob(strength*G.sensitivity)) - G.set_aroused_state(FALSE) - G.update_appearance() - if(G.aroused_state) - genit_list += G + for(var/obj/item/organ/genital/G in internal_organs) + if(genital_flags & GENITAL_CAN_AROUSE && !G.aroused_state && prob(strength*G.sensitivity)) + G.set_aroused_state(strength > 0) + G.update_appearance() + if(G.aroused_state) + genit_list += G return genit_list /obj/item/organ/genital/proc/climaxable(mob/living/carbon/human/H, silent = FALSE) //returns the fluid source (ergo reagents holder) if found. diff --git a/modular_citadel/code/modules/arousal/genitals.dm b/modular_citadel/code/modules/arousal/genitals.dm index ca01ef46cb..dc299e4d4c 100644 --- a/modular_citadel/code/modules/arousal/genitals.dm +++ b/modular_citadel/code/modules/arousal/genitals.dm @@ -38,6 +38,8 @@ return ..() /obj/item/organ/genital/proc/set_aroused_state(new_state) + if(!(genital_flags & GENITAL_CAN_AROUSE)) + return FALSE if(!((HAS_TRAIT(owner,TRAIT_PERMABONER) && !new_state) || HAS_TRAIT(owner,TRAIT_NEVERBONER) && new_state)) aroused_state = new_state return aroused_state @@ -113,17 +115,7 @@ set desc = "Allows you to toggle which genitals are showing signs of arousal." var/list/genital_list = list() for(var/obj/item/organ/genital/G in internal_organs) - var/datum/sprite_accessory/S - switch(G.type) - if(/obj/item/organ/genital/penis) - S = GLOB.cock_shapes_list[G.shape] - if(/obj/item/organ/genital/testicles) - S = GLOB.balls_shapes_list[G.shape] - if(/obj/item/organ/genital/vagina) - S = GLOB.vagina_shapes_list[G.shape] - if(/obj/item/organ/genital/breasts) - S = GLOB.breasts_shapes_list[G.shape] - if(S?.alt_aroused) + if(G.genital_flags & GENITAL_CAN_AROUSE) genital_list += G if(!genital_list.len) //There's nothing that can show arousal return @@ -325,7 +317,6 @@ var/obj/item/organ/genital/G = A var/datum/sprite_accessory/S var/size = G.size - var/aroused_state = G.aroused_state switch(G.type) if(/obj/item/organ/genital/penis) S = GLOB.cock_shapes_list[G.shape] @@ -338,10 +329,9 @@ if(!S || S.icon_state == "none") continue + var/aroused_state = G.aroused_state && S.alt_aroused var/mutable_appearance/genital_overlay = mutable_appearance(S.icon, layer = -layer) - genital_overlay.icon_state = "[G.slot]_[S.icon_state]_[size]_[aroused_state]_[layertext]" - if(S.center) genital_overlay = center_image(genital_overlay, S.dimension_x, S.dimension_y) @@ -357,8 +347,8 @@ genital_overlay.color = "#[H.dna.features["breasts_color"]]" if("vag_color") genital_overlay.color = "#[H.dna.features["vag_color"]]" - - genital_overlay.icon_state = "[G.slot]_[S.icon_state]_[size]-s_[aroused_state]_[layertext]" + + genital_overlay.icon_state = "[G.slot]_[S.icon_state]_[size][use_skintones ? "_s" : ""]_[aroused_state]_[layertext]" if(layer == GENITALS_FRONT_LAYER && CHECK_BITFIELD(G.genital_flags, GENITAL_THROUGH_CLOTHES)) genital_overlay.layer = -GENITALS_EXPOSED_LAYER diff --git a/modular_citadel/code/modules/arousal/genitals_sprite_accessories.dm b/modular_citadel/code/modules/arousal/genitals_sprite_accessories.dm index 0c1763b8e2..594fc83e46 100644 --- a/modular_citadel/code/modules/arousal/genitals_sprite_accessories.dm +++ b/modular_citadel/code/modules/arousal/genitals_sprite_accessories.dm @@ -85,36 +85,36 @@ //Vaginas /datum/sprite_accessory/vagina icon = 'modular_citadel/icons/obj/genitals/vagina_onmob.dmi' - icon_state = null name = "vagina" color_src = "vag_color" + alt_aroused = TRUE /datum/sprite_accessory/vagina/human icon_state = "human" name = "Human" - alt_aroused = TRUE /datum/sprite_accessory/vagina/tentacles icon_state = "tentacle" name = "Tentacle" - alt_aroused = TRUE /datum/sprite_accessory/vagina/dentata icon_state = "dentata" name = "Dentata" - alt_aroused = TRUE /datum/sprite_accessory/vagina/hairy icon_state = "hairy" name = "Hairy" + alt_aroused = FALSE /datum/sprite_accessory/vagina/spade icon_state = "spade" name = "Spade" + alt_aroused = FALSE /datum/sprite_accessory/vagina/furred icon_state = "furred" name = "Furred" + alt_aroused = FALSE /datum/sprite_accessory/vagina/gaping icon_state = "gaping" @@ -125,7 +125,6 @@ icon = 'modular_citadel/icons/obj/genitals/breasts_onmob.dmi' name = "breasts" color_src = "breasts_color" - alt_aroused = TRUE /datum/sprite_accessory/breasts/pair icon_state = "pair" diff --git a/modular_citadel/code/modules/arousal/organs/breasts.dm b/modular_citadel/code/modules/arousal/organs/breasts.dm index 1537d5cebe..dc7923e448 100644 --- a/modular_citadel/code/modules/arousal/organs/breasts.dm +++ b/modular_citadel/code/modules/arousal/organs/breasts.dm @@ -1,3 +1,6 @@ +#define BREASTS_ICON_MIN_SIZE 1 +#define BREASTS_ICON_MAX_SIZE 6 + /obj/item/organ/genital/breasts name = "breasts" desc = "Female milk producing organs." @@ -9,7 +12,7 @@ fluid_id = /datum/reagent/consumable/milk fluid_rate = MILK_RATE shape = "pair" - genital_flags = CAN_MASTURBATE_WITH|CAN_CLIMAX_WITH|GENITAL_FUID_PRODUCTION + genital_flags = CAN_MASTURBATE_WITH|CAN_CLIMAX_WITH|GENITAL_FUID_PRODUCTION|GENITAL_CAN_AROUSE masturbation_verb = "massage" arousal_verb = "Your breasts start feeling sensitive" unarousal_verb = "Your breasts no longer feel sensitive" @@ -49,21 +52,21 @@ var/datum/reagent/R = GLOB.chemical_reagents_list[fluid_id] if(R) desc += " They're leaking [lowertext(R.name)]." - var/string + var/datum/sprite_accessory/S = GLOB.breasts_shapes_list[shape] + var/icon_shape = S ? S.icon_state : "pair" + var/icon_size = CLAMP(breast_values[size], BREASTS_ICON_MIN_SIZE, BREASTS_ICON_MAX_SIZE) + icon_state = "breasts_[icon_shape]_[breast_values[icon_size]]" if(owner) if(owner.dna.species.use_skintones && owner.dna.features["genitals_use_skintone"]) if(ishuman(owner)) // Check before recasting type, although someone fucked up if you're not human AND have use_skintones somehow... var/mob/living/carbon/human/H = owner // only human mobs have skin_tone, which we need. color = "#[skintone2hex(H.skin_tone)]" - string = "breasts_[GLOB.breasts_shapes_icons[shape]]_[size]-s" + icon_state += "_s" else color = "#[owner.dna.features["breasts_color"]]" - string = "breasts_[GLOB.breasts_shapes_icons[shape]]_[size]" if(ishuman(owner)) var/mob/living/carbon/human/H = owner - icon_state = sanitize_text(string) H.update_genitals() - icon_state = sanitize_text(string) //Allows breasts to grow and change size, with sprite changes too. //maximum wah @@ -130,3 +133,6 @@ cached_size = size size = breast_values[size] prev_size = cached_size + +#undef BREASTS_ICON_MIN_SIZE +#undef BREASTS_ICON_MAX_SIZE \ No newline at end of file diff --git a/modular_citadel/code/modules/arousal/organs/penis.dm b/modular_citadel/code/modules/arousal/organs/penis.dm index c6d3c764ac..791a186732 100644 --- a/modular_citadel/code/modules/arousal/organs/penis.dm +++ b/modular_citadel/code/modules/arousal/organs/penis.dm @@ -8,7 +8,7 @@ masturbation_verb = "stroke" arousal_verb = "You pop a boner" unarousal_verb = "Your boner goes down" - genital_flags = CAN_MASTURBATE_WITH|CAN_CLIMAX_WITH + genital_flags = CAN_MASTURBATE_WITH|CAN_CLIMAX_WITH|GENITAL_CAN_AROUSE linked_organ_slot = ORGAN_SLOT_TESTICLES fluid_transfer_factor = 0.5 size = 2 //arbitrary value derived from length and girth for sprites. @@ -73,22 +73,21 @@ /obj/item/organ/genital/penis/update_appearance() . = ..() - var/string + var/datum/sprite_accessory/S = GLOB.cock_shapes_list[shape] + var/icon_shape = S ? S.icon_state : "human" + icon_state = "penis_[icon_shape]_[size]" var/lowershape = lowertext(shape) desc = "You see [aroused_state ? "an erect" : "a flaccid"] [lowershape] [name]. You estimate it's about [round(length, 0.25)] inch[round(length, 0.25) != 1 ? "es" : ""] long and [round(girth, 0.25)] inch[round(girth, 0.25) != 1 ? "es" : ""] in girth." - if(owner) if(owner.dna.species.use_skintones && owner.dna.features["genitals_use_skintone"]) if(ishuman(owner)) // Check before recasting type, although someone fucked up if you're not human AND have use_skintones somehow... var/mob/living/carbon/human/H = owner // only human mobs have skin_tone, which we need. color = "#[skintone2hex(H.skin_tone)]" - string = "penis_[GLOB.cock_shapes_icons[shape]]_[size]-s" + icon_state += "_s" else color = "#[owner.dna.features["cock_color"]]" - string = "penis_[GLOB.cock_shapes_icons[shape]]_[size]" if(ishuman(owner)) var/mob/living/carbon/human/H = owner - icon_state = sanitize_text(string) H.update_genitals() /obj/item/organ/genital/penis/get_features(mob/living/carbon/human/H) diff --git a/modular_citadel/code/modules/arousal/organs/testicles.dm b/modular_citadel/code/modules/arousal/organs/testicles.dm index 9573020417..eb6c1536cb 100644 --- a/modular_citadel/code/modules/arousal/organs/testicles.dm +++ b/modular_citadel/code/modules/arousal/organs/testicles.dm @@ -43,19 +43,19 @@ /obj/item/organ/genital/testicles/update_appearance() . = ..() desc = "You see an [size_name] pair of testicles." + var/datum/sprite_accessory/S = GLOB.balls_shapes_list[shape] + var/icon_shape = S ? S.icon_state : "single" + icon_state = "testicles_[icon_shape]_[size]" if(owner) - var/string if(owner.dna.species.use_skintones && owner.dna.features["genitals_use_skintone"]) if(ishuman(owner)) // Check before recasting type, although someone fucked up if you're not human AND have use_skintones somehow... var/mob/living/carbon/human/H = owner // only human mobs have skin_tone, which we need. color = "#[skintone2hex(H.skin_tone)]" - string = "testicles_[GLOB.balls_shapes_icons[shape]]_[size]-s" + icon_state += "_s" else color = "#[owner.dna.features["balls_color"]]" - string = "testicles_[GLOB.balls_shapes_icons[shape]]_[size]" if(ishuman(owner)) var/mob/living/carbon/human/H = owner - icon_state = sanitize_text(string) H.update_genitals() /obj/item/organ/genital/testicles/get_features(mob/living/carbon/human/H) diff --git a/modular_citadel/code/modules/arousal/organs/vagina.dm b/modular_citadel/code/modules/arousal/organs/vagina.dm index 3f1bcc5f9b..311afe75b0 100644 --- a/modular_citadel/code/modules/arousal/organs/vagina.dm +++ b/modular_citadel/code/modules/arousal/organs/vagina.dm @@ -6,7 +6,7 @@ zone = BODY_ZONE_PRECISE_GROIN slot = "vagina" size = 1 //There is only 1 size right now - genital_flags = CAN_MASTURBATE_WITH|CAN_CLIMAX_WITH + genital_flags = CAN_MASTURBATE_WITH|CAN_CLIMAX_WITH|GENITAL_CAN_AROUSE masturbation_verb = "finger" arousal_verb = "You feel wetness on your crotch" unarousal_verb = "You no longer feel wet" @@ -22,7 +22,7 @@ /obj/item/organ/genital/vagina/update_appearance() . = ..() - var/string //Keeping this code here, so making multiple sprites for the different kinds is easier. + icon_state = "vagina" var/lowershape = lowertext(shape) var/details @@ -55,13 +55,11 @@ if(ishuman(owner)) // Check before recasting type, although someone fucked up if you're not human AND have use_skintones somehow... var/mob/living/carbon/human/H = owner // only human mobs have skin_tone, which we need. color = "#[skintone2hex(H.skin_tone)]" - string = "vagina-s" + icon_state += "_s" else color = "#[owner.dna.features["vag_color"]]" - string = "vagina" if(ishuman(owner)) var/mob/living/carbon/human/H = owner - icon_state = sanitize_text(string) H.update_genitals() /obj/item/organ/genital/vagina/get_features(mob/living/carbon/human/H) diff --git a/modular_citadel/icons/obj/genitals/breasts.dmi b/modular_citadel/icons/obj/genitals/breasts.dmi index d70207ee69ace42c2e782db691617821177f0389..24656062d26e3edf15d6a753650aaef61ed9abb4 100644 GIT binary patch delta 1265 zcmey*)z78c8Q|y6%O%Cdz`(%k>ERLtqz`~F3p0>h@Tt%QNXbo9m6!P6@V`>Bs2|8> zED7=pW^j0RBMr!TGBIAX{xny!fq?7vli@6Pr|;W#S7hmq75fz~`eZNQpM7N8{CH1= zbzD2&r9GH;bgr<6UfaxDc z(+Zbu*?4)!!#7D!<{pw^UaOcnHmJ)j=~s&w9+`)*F?h$D^O-ZrxU1YPcDWP_q{>|` z%{~8h`W>D^`}ql+EqfY&^88;IGo|!leVcrG-_xGIPj5RjFfgz8ba4!+nDcg4px@>I zf!5Qh%u74DA0+kmvpr(^^`uxjrcwGuy_}EK^uO^LN$KYlg6G_RA^&`j>=NUc1toU; ztEZkWH5R@4Ya6fAn$Kk~tllN}n0^gST`iwf!*pIs<-GWoFCxpTcz;yvPuthVU(m1Z zVlSfN%^}QtL#XLXj;ruIQ;k*3*#a95wxnx2#h2;kPIz^9Bb)2iMAp?^<{DaY0<~E; zF4VI*|95_KJ;m9Vdl~bMBjIIi=C}X8%C-;5k++lXQGb%RJGuV;9r?`WUt8mg{mb0# z!*cG;=q-)k$orN1b@=yy4fb_!&-31p^s0XI!*t!lWo!Gc4Zm#t;+rl% z72^5&!q!UUiD>uI{(Y1564q?Ldy&oc&b|lf(^kHIvDrj-;q&&0)PFx$uJNy*e){RJ z)mk^1Z|fP#uv>+tOnAU8vwouZG_Ll`47?M>r_FPE(p_j!S&=kPH=|W9oI~#Te}jt+ zx{4nCE-kw^v!<CjgbX9OhJ7RM(_GFOvB|YY9_D^QOnF2f6o2{E~n1hIP*by9>wo z%h+xoKfOlN=F`y%r+F{m9IZ^evGAuwqx$Y<@fyRt3_sc17e3UT<>Z=F_kuOP=W@yC zW8X6#EPFenzGnG$)ru$GpLg)FKAg4DcwSp-RnrCTeHQr-uJ`;jslWHRNp-Jc3&@ZK z()s)}SrLXg|;gtBX8i%Lc*>(#) zwwlTZ{5&*^e??8=S@w{9^#;$Fwc;Z{n%4YmI0sVq9H_2A_5{~WD{SN&4XKEqzJ53GyD^1S{jc9VT4Ch(v63^exw)b=JrAoI{1{tSo}95A~- zfz*KPo^juv>F$HS%6j$x>rXr_+F7@@&Q5*?aeaYK^k| zjK|!?5O)I&1-V{v}2G>s6loY&Z=xJZAo`uldtv zJTLYZ@J{QjwA)@V@4T+z`TL6)`&LJ)sz3XAN9c1+-btWD&9{=BG4`wKZ|w`IN_$|w R6j($tc)I$ztaD0e0sv0PT3Y}B delta 1395 zcmXw(e>~H99LK+Y^kb7IA~)w(Wx7hYZXx5$gteHKcGn(p*wGSWWJQ9{EQ&KPAov-_^={`frKKR)mG`|*0bAD_o33$B6NrIY;$ zhHxYt002YcVXpwljzXtFUk~DZ<=Jt_*xs*2&Yp>7ongiRKqCKk-pkD?Xmg*_s;!11B(wZVvibT8>jEP3P{CCWGRYOY z+`m?>19|*rd0aMX^}3}ZrL>e^n=4SoNiWp}R#2DvdmPoLUeb=;UAiCF+=?9oDPU%p z88Mmx20fl)w2%y?0L2G3vo~)~;2qLKbkNU}EYqL{X(i6-q7k=3F$IC$j!PEFm-B)Dtl;yf#-UpDU zzK6`4GEu&HWYiGjTIvBOaL$RK>OI-?c>6MQVq2Y;WBt^g{iXn*Z$$LMQxf@eh4>g5 z+9)kOUMJ;^UQ2GqvqS0cb*Kr3CI8qj>((B+|LbMvx#*FDd*!PrD>ACgQ!y|6YPD@M zab*d^EAT_yEh!usc%?i!Ac$79)qY9{I?;C!Csn5zHke`2_b&bh&TR8mIM9mIBx@JC zWY~eCS)iZRl$cKQjt?%e4J`4EdUq$hE#KCUO1VUzdL{R~>e?c!j?Sn3Ab>@z+0&^M z13I8)@hw70_EnjN9id|*ldowZ^J-hGvawVu&NAfpbC1WcB5@76SvBVd)+Zk=cbExr z12-)f$;vEeK#p+2l~?J`7^ES~#2#v_c*Nps_q3TD8VlB}-$w}QX}AfVmMKGVedRx~ zEkcL8&4<(W9gz1DH+`4~mb&RI{IlmTibfSdX78I#ZRUzWXR-Bq@p@DOu_%Oa>w4G5 z3c$g(P>_UFonDMji)q?dH)qgqG?_J@9@=1;5eQmO*oD|cZZX?xVa8d;iZAC4oy&1K z;_D{2qnOlRD;F?vIUV8OegB|y)*wpPO(c}q(z}3-o0XU(WQi+qiwfVyZ*TV+us0By>SG~sv z&0=@If#HlR)N)_Zg)Pb(D)2eJW6WSC)p|O!PLoVq%_FV|bo8cOa^zth$fi}c&v@IS zknp@Ei$pcTv@0YLuZ>;nQr&RZPL!{G#1#0UdJjd&*yv>IWwueS{K2OeN*g$>Ir)wS z4*{=n@pjLjAf0cFWx3}|NXu;UBx#sU{y?haBaYMzGK=Z%yTAoHuDC!O_GUw&d=l2Z zRe?`;KB||YEN{wHVS4gYen=g3lM=|4EUyPz2RzyLpHq%`p-x zr(?-CTtgt;<0Cq29`X?xH88d_);c#aK820${%>ge`7j0khI8_~kCbc7e56IBl)L?l zoH?x~2$K+E_cD)EYwl`gcZ91PvKR5uwgPXIe!0WW{?yPsy9ut$coCoAVr$KBLEl0= t^6lKvXE)AO880@%So6|M?K8|>(_?aPhGc-HP0$Ys5WW4qDm+6|{sr=IyNUn+ diff --git a/modular_citadel/icons/obj/genitals/breasts_onmob.dmi b/modular_citadel/icons/obj/genitals/breasts_onmob.dmi index 371041b6f43e5bcfb878cc3f3162725d82fafe8e..578086c4c30308b403f1930738b9141dd13da6f3 100644 GIT binary patch literal 6159 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 diff --git a/modular_citadel/icons/obj/genitals/penis.dmi b/modular_citadel/icons/obj/genitals/penis.dmi index 517758b24833b7b4c7b6a29b55861948a93a239e..c3fd184a7c2c900c8ea9183564f8724d2463011a 100644 GIT binary patch delta 4301 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 literal 4707 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 HgC+eROJWij diff --git a/modular_citadel/icons/obj/genitals/penis_onmob.dmi b/modular_citadel/icons/obj/genitals/penis_onmob.dmi index 4f84c52360e29564eae9c42e40747cf9df328bdb..4a92bffa2a6ff4664f4391bd542c2eee7209ee93 100644 GIT binary patch literal 9279 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 literal 10002 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 GuKho^x18Sq diff --git a/modular_citadel/icons/obj/genitals/taur_penis_onmob.dmi b/modular_citadel/icons/obj/genitals/taur_penis_onmob.dmi index ae2339e2e0bd84400814bd62b29f58045746a76b..e8efbec21664496ce1b1c9b3be94166cff7f994d 100644 GIT binary patch delta 308 zcmV-40n7f04TuepNq-%BR9JLGWpiV4X>fFDZ*Bkpc$}q{u?~VT5Qb;^6b9V<3qpZuY+?Ppq&WqG%UVp7dJ%5II%~(C;d=7tb z5y%NDck6m%5K#+~O)W@PHPs-Ynp%*oYC*E^=)OfsK_}OFgSRe>0>bOO!Mhhm{}B#&R-~UF;5YCyRlguIo8z-^ G0T~5Dl!re6 delta 309 zcmV-50m}Y}4T%kqNq-)CR9JLGWpiV4X>fFDZ*Bkpc$~eKyAFad6ozN|6b;N8ZgF!V z5M_{8AS4uNR3Nm`*B6W}EGC}c#H}5^o-gN?dOXPvdBM|D&hBDVvhVnw$6KE{4_WJW zy6j@+v_hU+Jzb)ZDP3tX9o<26QkBiM8bw_OrC%o5F)vb=Ie)br)%*-|nz6cx`5b)U zLXeB7+@qwRab+6a%w=bssYKW?`p(oZpff9{UKt2MkInZHy9UyTnKUz zm0KnX1j(k$M1eIVt1c4-f@D=w{f$C5DojRn()Iw30=~8n=&0=k90i1JH^8-t@hkzT z-Fd%7MK>)ST`6S=pSM5nTYALxw4pl}M*-pWw4s|9N52vFcvhsZ@9z^1aZqm(9pSCB HZvhzv9qfoa diff --git a/modular_citadel/icons/obj/genitals/testicles.dmi b/modular_citadel/icons/obj/genitals/testicles.dmi index 3d7a5f4f4801004f4439bf82c46f6f34a1b8b14f..386eab095611a897e830e17f1f6caab623bec21a 100644 GIT binary patch delta 1002 zcmV=g(t+%(gz`(!<3C0`%0004WQchCk-DN1l!+ZsiHM0R%p$XgTuT0%-hxGOb^1+{vl;+Z2yWTXnPQM@$F2S75>2TEQ zjgEa9Y^{|CoII}s@yL*3QE25bQi_#Uk2pSI&A$Z(V!Y2l17VnE7%DkZ%MqJVY@m#4 zIgk}W9-V_A^0py=5^ozK@wOMsxklz~FZUlRP1`r$5B>mfe%kYP?Z(#t00P)aL_t(| zob8%zlfobjgey|8umAt&9tq$%XA(M%=-gd)oc2St`&6jPuESt5nM`lf1@uXOcfC5- zK=2@q34f6n=a4`|@Z%W9@jO8?iOGQlZ~(wPA^QWsX#((nh>QXH7XX%^0tf`+M5+LU z0UWyBa13rN0r-zWB)Cj&nx>iecabJ20Pq&Tjs;lYEm#%-Kp?o_)kSb%0B#k4Bv{jx zCvOB`2$DY!P%aVy+|Os+0R#d77y)2p0p>{{z!3ld#{fKz0SSPkpJyQl5aTq#g94aw z^z$ry0@z%C#uLZD!vqXC3s(kU-y>)z$6$sD7;zRp5pJ>Il^fA*6u`QMu==zK48Sla z1bFax=`cmOrDNa^Pr-YI0!Sak>*`^{`6B{61U%U6&!^w;&D%k^Cjs!gplr@*2Dq6d z+|Yd6%Kof_LL2B|Z!(!oCX>nZdTE!|YJXhTbw&_>F4EV9WlsbtKk%(p&1?MG{J=jf zt26{Fs0Bb6)Rk>sS@Hy}pvo`lG>b6GTz*ghaB0h~Z5#PQ1`r6O{2&7?6@ViU^M$0a z2moS!a0jRa=Yupa~%53)!QXkS~|= z17BW$8Ox1GPXak#Kmtez0_`v62XG9@^EHIPBpgz{P!R_9gFwm;kS^fI2=2KXQOXw% zNXQR7nrA*K;pnIOMfK@#Ws}KdGMP+&S-+zHSDPsN|CU-m*R=hA)4%cm1a<%4_Lu*k zpzZ&M^ZCNvMAiQ*@`Y-m>i-8tzVPj#=>Ii;`9k$j_5YfD0i^H$75PFTQ1<_dd?5p< z`~UO#LLt!i|EKeXJ3`<7U-kb4>;FwAlgVT<_1CAHhPU+pqW>HE{}w>+{=ez}g8u)k zj`sh(0b2ckZ-8e1{{{fD{q79V?*BXLSpVM>;86eH6X00?-fFD zZ*Bkpc$`yKaB_9`^iy#0_2eo`Eh^5;&r`5fFwryM;w;ZhDSycTa*U0*I5Sc+(=$pS zoZ^zil2jm5sU)?yBr`cDwOEOZGbOXA7$|1Q#hF%=n41b=W2%fV&df{CNsTuoU5gRv zT8xR;qDzh^$kAj(jwWLwG?8FxMrKM%Y92|E0M$ZDBtW&05D9RHkrYNSr;(!xPrxcG zxca$(^92APn1Ay_ka-$)0009VNkl9$npaU4O6pYxx0yP66#yfR=uOi_if8 z0m}CP?GB)hl56A+YQ>@h05Ja(01)sQqz-BopziX#h>rb+k#% zFn_2$9vp+7CQ!q(NOW)!X4v;^lfi4nM@{=$@G3r zq&xlRWtry#gj7h7Kg}}}Km->=kk|b|J^@hc3=F0aa+Lt(vwr|k4fYNI!Ad#;5b{@d zblZ3gHr2qNBuFrAuA2>vvX&nJh>vzE0Ef5;9e)52pnMOo?Es>|ewF~@vH<{?{|T@Y z2;)dGvuD%*)-4c7(*WlC#;-9D0hVtQRRQ2^w}}8K-!B3TP)&4x7M?|`0$hu$|jTP@9BAz&Y57?LuKsP~cIRP{m(3BZK zw$WSi14uqQ9u9% z>jNTGwmu+2W$OcC0Ls<}L;#en4~QWsTOSaIP_#ZERaPHhGMWBI{R8RdNV9Q0pyL1l N002ovPDHLkV1n;}{p$b# diff --git a/modular_citadel/icons/obj/genitals/vagina.dmi b/modular_citadel/icons/obj/genitals/vagina.dmi index 39bdd48e89a70449a43ab36290da524de343af45..1bbe62ba0e1df13061cdb88e32cf16670d5991ff 100644 GIT binary patch delta 434 zcmV;j0Zsn$1fm3xBrqpXOjJex0D$Gj%k=d0`R?-9*Vo##va_?Z&vsvef`XJoMf$Fs z;DvDcn}|Q-F9nfTS$|21i!&v&s2IpJ0s z1uYHCE_7755kR(fH1)UqG+Yg5rqjB5NC}($`Ph>9U#24vdR$FnqUCo6GE~F zHUXe8m)7gW&s3h0Ma7@lFB z{P6UCd;bXt^26pXJ|cqru<6q-c$4UdRN$*dKUC=wEBXxd!;T-tei#?X4;=QxDC~!E c*bo0M--LNcEw6HLRR91007*qoM6N<$f?|)(fdBvi delta 515 zcmV+e0{s1=1o8xsBr_^dOjJex0D#xm*Yx!C<;KhT?((yf`Wq2c3=Mh0F*;T z`mUVdg>dW->$c zU%y#{co*{M=mdczk0EDvDuDAG6xpRkg~=08?Ar_!Lz8Q+7|v`83KJ(WR~$^UV^C;q za>Epbo!JXeXfNPv6kcI@+XHPD$)w3+J1eq7-lmTAf&pHU762H%r+J>+)07aHK%S@Y ze;SJ4ckCHt-z4Tye@3DPB9A5T=jv8e8`v6sEtfng)dtk&^gTsPp{NT`ox!9*8oZmSJg+!v_Bt;HUkPrQ6+(e{O^mPyMQk!`;>O2>>e{F_Ah%iq zt(PT%*6S8P$ALkhI_wvf?{|Sbkb?$fN@jw6o002ovPDHLk FV1lFg^BVvF diff --git a/modular_citadel/icons/obj/genitals/vagina_onmob.dmi b/modular_citadel/icons/obj/genitals/vagina_onmob.dmi index ab71b22e3bb99d66c83325bdc1f2cf560dcd372c..6c34ffadfaaa02b7002b835cb886c81805aa6a2e 100644 GIT binary patch literal 1112 zcmeAS@N?(olHy`uVBq!ia0y~yV0-|?2UwVaA{}ANCIBhj0G|+7AU$i=tj(J@A3l8e z>9Nzdwru+U|NpC-cYbTc{r`Wdms#z>g9q>5zdv*4%+Gh9+ZGSa74PKkwQPBzG4ouI)x7g3JSA3to5h#8UU=ezH9ICBU3S_- zq4m_#-T7;n)w_&r9M_qoeA>Z0_h{r4-)Y??qLUi5lTYiZ+>p4@xv6h|(nfx1k>yF; z(-)-#?yiqs^Y`w-Yg;#*t$0!pV0FCxRV0MDhs3RSL;^D znmxI((|N)1NnrT}OJDuiTzYuRzh_lX{#~tn-B)s8dt$BCzmtM@!SW0RMyuwl&&`@E z9&Yb%ReEzr-51W{H!80#BzuD8=WM&STi^Y@{GOesU#V}mx0t)(??Gi@xZX=98+Psc z`tO0szP0P}_u5yWYQAvk#qZ|e$+zX_T=TE3FPIhH?^klzpqvA2@&Wt1Pwv^*$X(MH zf5@4&wDPrU*uAyuyxMi<{W0=<`d#;XpF}OI%$+ak47oqWnLt_|v}&iz>w8<>v-u_Q zv#T`riow}z@nrUWcUM{5zt>ULKX3iBqrx^84?ez`7QXb;!(X@dRK@YlXn%bCX?xJ$ zgt*&l#g=lL&G{boUSIEiVC$Z(&-nK&-?wKG-< zS(9$^I_coIllt{+!TS>Sa@tCLe5UrwK006f{f18u4>JSpJ^b}4qsXu8>sI{#&-ead z^e;(fKm8w#zHh@>!FE1it-idYZvMeNrnPckrk{`eySzX0@4UZ9n=7+_*}Qlrd~dRv z*r!{MjptmKTYS)z2dt-H%e{N`$F5qv|NG6<#&PYnkI(zxN7in=CR{gtDk!TnFdWz% zd#~Q_^!oXcwX?1-`@8z{$J?*hB+k0tcW?i<)}y;G?b%jZ4_3(VKy&%D{^ONzpDd}= bWnkFP==|A)#cqaNDoEDT)z4*}Q$iB}m#!e% literal 1330 zcmZ8hdsNbA82$-fQjpBkRj25VYhISMEW3Cs=XEwQqtGb9JYia?5nhMjbPG*QTczf` z&C*KINv5WWWXf@=q-bi2GRX^(q7W!@8`vK^XWu{1bI$v`=R42yzUR#f3iLHLGBW}I zz}VlgUVf+1|33h;3?qP+!#*7O;eB|1h0$NBk)migs9jU07xpW zJN?G!)jku~Lzpd}&pyn}E7|e*rh!A|YGcuue)L@%d)3Rw!EhwRKftl1^90U`R+U{% z>)zip7@g&K!k)A>DV?GOl2L*2IA?Hrd(O%MHY<0i^1hwR4!_nk8yEO7n{ZPbasSb& zgnZvtq#i^hHHFpIbkQ3cV9w6f-%(2J{JD9S*=whb?Mhqx7QHX+KJW?uZd2$4W0}J^ zrK<7thS(cR&89lf8h!}y9NEMb;bL`VQC|MIQGdjdM+@LFpIgwfh~J?@M*^nDZbaFK zy&lileh0fCjkMdj4+q&dH_}g1D z2>J>D!1w&Ujw6#w7ddYD37?(%*nJ*O zwgi%ceWv00b3E{JKvCpk>2Z^5hC13x+;4+Ii@l0bi*eF~BNBc>6k5Jws$^zR?ZzEYGY&_RFGD)G-_xU%2=}%#L+n6^bui z-9KQpAxVRr9-YUytA?LYS!6~2Y{ZB}#;Rx}p0li{vgk%)z8I2rkJbhH+R=JL?}#F; zCdMZ#!qG0O0~8rShp(SaP<5Ru+K2`KZUlvK>Zafgu}wT?Y>l6ouVd?xv9ru#`+w=3 zar-3*B2K>MRKh3?#FqbQSjB_S=zZFJk~q~AbBDJXfo?u8(8fn>l3(51QCgA6fx)H~ z%MZmWohwZE0Iq?Y*;A27ao&UO!{GJGo*hOXQ$x=UtbY4;mq#BHJv}U%YPndCQd2HHB0>MMo#PliHOFGLeBTa-K5(?)-)VXz`0rb*~pzKM{yW zWTJIqd`G)GrYutOslkc|P0tM2q?K`hUSG3*Q!O_S!>z1IKe0&u+%nbdc!^75U-!nkC9? b`L(jggSr04@rbOq8!`KP2YOLGvFZN;OA3XU From c68c96373c5e03cdf7de78c6f92ecd6dd282a3d4 Mon Sep 17 00:00:00 2001 From: Ghommie <42542238+Ghommie@users.noreply.github.com> Date: Sun, 9 Feb 2020 07:07:47 +0100 Subject: [PATCH 2/2] Ok. --- modular_citadel/code/modules/arousal/arousal.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modular_citadel/code/modules/arousal/arousal.dm b/modular_citadel/code/modules/arousal/arousal.dm index aa0021bd8f..4fe57dfebe 100644 --- a/modular_citadel/code/modules/arousal/arousal.dm +++ b/modular_citadel/code/modules/arousal/arousal.dm @@ -47,7 +47,7 @@ if(!client?.prefs.arousable || (aphro && (client?.prefs.cit_toggles & NO_APHRO)) || (maso && !HAS_TRAIT(src, TRAIT_MASO))) return // no adjusting made here for(var/obj/item/organ/genital/G in internal_organs) - if(genital_flags & GENITAL_CAN_AROUSE && !G.aroused_state && prob(strength*G.sensitivity)) + if(G.genital_flags & GENITAL_CAN_AROUSE && !G.aroused_state && prob(strength*G.sensitivity)) G.set_aroused_state(strength > 0) G.update_appearance() if(G.aroused_state)