From e4ba220eb7c442ffb963eff3554a0d4392b1d0b4 Mon Sep 17 00:00:00 2001 From: Poojawa Date: Thu, 16 May 2019 14:10:31 -0500 Subject: [PATCH] oh god, oh fuck. why --- .../code/modules/arousal/organs/breasts.dm | 6 ++++-- .../code/modules/arousal/organs/genitals.dm | 4 ++++ .../organs/genitals_sprite_accessories.dm | 7 +++++++ .../code/modules/arousal/organs/penis.dm | 9 ++++++--- .../code/modules/arousal/organs/vagina.dm | 12 +++++++++--- .../icons/obj/genitals/breasts.dmi | Bin 703 -> 1028 bytes .../icons/obj/genitals/breasts_onmob.dmi | Bin 753 -> 1401 bytes modular_citadel/icons/obj/genitals/penis.dmi | Bin 1526 -> 2758 bytes .../icons/obj/genitals/penis_onmob.dmi | Bin 1341 -> 3364 bytes modular_citadel/icons/obj/genitals/vagina.dmi | Bin 405 -> 510 bytes .../icons/obj/genitals/vagina_onmob.dmi | Bin 644 -> 939 bytes 11 files changed, 30 insertions(+), 8 deletions(-) diff --git a/modular_citadel/code/modules/arousal/organs/breasts.dm b/modular_citadel/code/modules/arousal/organs/breasts.dm index a9e8744975..31492500d7 100644 --- a/modular_citadel/code/modules/arousal/organs/breasts.dm +++ b/modular_citadel/code/modules/arousal/organs/breasts.dm @@ -36,8 +36,6 @@ reagents.add_reagent(fluid_id, (fluid_mult * fluid_rate)) /obj/item/organ/genital/breasts/update_appearance() - var/string = "breasts_[lowertext(shape)]_[size]" - icon_state = sanitize_text(string) var/lowershape = lowertext(shape) switch(lowershape) if("pair") @@ -50,10 +48,14 @@ desc += " You wouldn't measure them in cup sizes." if(producing && aroused_state) desc += " They're leaking [fluid_id]." + var/string 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_[lowertext(shape)]_[size]-s" else color = "#[owner.dna.features["breasts_color"]]" + string = "breasts_[lowertext(shape)]_[size]" + icon_state = sanitize_text(string) diff --git a/modular_citadel/code/modules/arousal/organs/genitals.dm b/modular_citadel/code/modules/arousal/organs/genitals.dm index c10d444f07..442281bf84 100644 --- a/modular_citadel/code/modules/arousal/organs/genitals.dm +++ b/modular_citadel/code/modules/arousal/organs/genitals.dm @@ -110,10 +110,13 @@ /obj/item/organ/genital/proc/update_size() + return /obj/item/organ/genital/proc/update_appearance() + return /obj/item/organ/genital/proc/update_link() + return /obj/item/organ/genital/proc/remove_ref() if(linked_organ) @@ -318,6 +321,7 @@ if(use_skintones && H.dna.features["genitals_use_skintone"]) genital_overlay.color = "#[skintone2hex(H.skin_tone)]" + genital_overlay.icon_state = "[G.slot]_[S.icon_state]_[size]-s_[G.aroused_state]_[layertext]" else switch(S.color_src) if("cock_color") diff --git a/modular_citadel/code/modules/arousal/organs/genitals_sprite_accessories.dm b/modular_citadel/code/modules/arousal/organs/genitals_sprite_accessories.dm index bcfa462789..e857c0d7ed 100644 --- a/modular_citadel/code/modules/arousal/organs/genitals_sprite_accessories.dm +++ b/modular_citadel/code/modules/arousal/organs/genitals_sprite_accessories.dm @@ -87,6 +87,13 @@ icon_state = "hairy" name = "Hairy" +/datum/sprite_accessory/vagina/spade + icon_state = "spade" + name = "Spade" + +/datum/sprite_accessory/vagina/furred + icon_state = "furred" + name = "Furred" //BREASTS BE HERE /datum/sprite_accessory/breasts diff --git a/modular_citadel/code/modules/arousal/organs/penis.dm b/modular_citadel/code/modules/arousal/organs/penis.dm index f6b9f1d999..2530a3095a 100644 --- a/modular_citadel/code/modules/arousal/organs/penis.dm +++ b/modular_citadel/code/modules/arousal/organs/penis.dm @@ -27,7 +27,7 @@ size = 1 if(5 to 9) size = 2 - if(9 to INFINITY) + if(15 to INFINITY) size = 3//no new sprites for anything larger yet /* if(9 to 15) size = 3 @@ -37,8 +37,7 @@ cached_length = length /obj/item/organ/genital/penis/update_appearance() - var/string = "penis_[GLOB.cock_shapes_icons[shape]]_[size]" - icon_state = sanitize_text(string) + var/string var/lowershape = lowertext(shape) desc = "You see [aroused_state ? "an erect" : "a flaccid"] [lowershape] penis. 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." @@ -47,8 +46,12 @@ 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" else color = "#[owner.dna.features["cock_color"]]" + string = "penis_[GLOB.cock_shapes_icons[shape]]_[size]" + + icon_state = sanitize_text(string) /obj/item/organ/genital/penis/update_link() if(owner) diff --git a/modular_citadel/code/modules/arousal/organs/vagina.dm b/modular_citadel/code/modules/arousal/organs/vagina.dm index 228c3141e3..6b55bd8e32 100644 --- a/modular_citadel/code/modules/arousal/organs/vagina.dm +++ b/modular_citadel/code/modules/arousal/organs/vagina.dm @@ -17,12 +17,11 @@ var/clits = 1 var/clit_diam = 0.25 var/clit_len = 0.25 - var/list/vag_types = list("tentacle", "dentata", "hairy") + var/list/vag_types = list("tentacle", "dentata", "hairy", "spade", "furred") /obj/item/organ/genital/vagina/update_appearance() - var/string = "vagina" //Keeping this code here, so making multiple sprites for the different kinds is easier. - icon_state = sanitize_text(string) + var/string //Keeping this code here, so making multiple sprites for the different kinds is easier. var/lowershape = lowertext(shape) var/details @@ -37,6 +36,10 @@ details = "It is taut with smooth skin, though without much hair and " if("gaping") details = "It is gaping slightly open, though without much hair and " + if("spade") + details = "It is a plush canine spade, it " + if("furred") + details = "It has neatly groomed fur around the outer folds, it " else details = "It has an exotic shape and " if(aroused_state) @@ -51,9 +54,12 @@ 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" else color = "#[owner.dna.features["vag_color"]]" + string = "vagina" + icon_state = sanitize_text(string) /obj/item/organ/genital/vagina/update_link() if(owner) diff --git a/modular_citadel/icons/obj/genitals/breasts.dmi b/modular_citadel/icons/obj/genitals/breasts.dmi index 7e4a63187683fd511d1a1cb2435e2d37328b8742..e864d09a704acb3ea667a7f9e0fe1fa9aca58d8f 100644 GIT binary patch delta 920 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 Dyhh3= literal 753 zcmV%0000LP)t-s{{a8+ z@bJ;m(f|MdzrVlQ+S;JKoExE!6rUufpB(+)H8Hx&t5@u4l4BQBn|)n zCp4C#WXDY=me$2d^*%C|2KgJC<6wJ5008(9Mo*ui@{+BW>#z19`9)mqmc8ah+_^iq z8%)2))%~j9yeuRu?FRY;BiC;p00000@EM%lyj`W|bKh*HTsP3;b!uL&HcP)L?FM?h z)(ukgGIr(V%*;zr6a7>lothWf%DA!{><@8u_|b1300000Fu3gLGgMx#n)$vo56Qp9 z)z8*=o|u>LINyiLY~b~Lum6rn&C9iu(cElM-0BAq=5?QWk)sr?Z`yv{#?}0x-+Tub z`T>O9sq+8;008j6%O2;Z$vekbx8GCqvT5e~%FMUsdp%yK<~z*yXTjGmRpDpq2c_oa z&Xt#wS}glRbb@i~_Iqkxiet0c4YqN$)eTbf000000Q{wT-VKxI0ssI2004MRzKE+u zdv(3UeDIR5Dzkx)-yg_)>+$}?e24r0BNx9QaPReEd#QN|?q=ug24T8>sWz*bzJSEM z{65qV``T(CU*Z)G!sM>ke3u6hvSW0D;#l^Y??f%y5Kf;500000oL2R`8zw*e1vKvh jytm-szsv&wfK&PdIMr7V0^cM>00000NkvXXu0mjffUj@3 diff --git a/modular_citadel/icons/obj/genitals/penis.dmi b/modular_citadel/icons/obj/genitals/penis.dmi index 9ac7d82cbd9b3ca826e29bf99f72b9e89197fe96..5ea37a722de453af392a793ba420ba1405c98ef7 100644 GIT binary patch delta 2757 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 diff --git a/modular_citadel/icons/obj/genitals/vagina.dmi b/modular_citadel/icons/obj/genitals/vagina.dmi index a57392868f02552195d305b7ba9a51dab09d6df4..00891888a44047465c86f73ba5b441a0f56e884a 100644 GIT binary patch delta 403 zcmV;E0c`%21O5Y$7g0b20{{R3SVwH_0000gP)t-s{{Vp3*Vpv)^yS9O`R?+wv$NW? zvVwww&vsw`0DzQ3Mf$Fs;DvDcn}{?j0$Kn700DGTPE!Ct=GbNc004H8Tw#BsDbp<` zsIWXgHwl*_Wd&D17qBYD?z- zi;=}r4A^gB|6m|D@C1U$gLj9Nvg!r=(~Ecm&0XBioh`=3LLtBI$A0-{GD6gOXCm1l zy)hV5AT^S7jl%$#8=}xlqzZp!QljXhCW=@Y@D*{68Br*iN?*|%>Jd=@D5E?@fjKUS z0-V5~Q8)$qYe%4FY5Un*m>0V5uL%-n9^e#NK>!6m;P)v`GC_eh>C=pSFXG_6iNB<~ zC24PH5hMzFD+KC%Q>Hr1US@DfO>*FZP5=YZXL^?&0O x+dsQz72DEH;r`MA{HYUn#Dv>{Jz|~D$pc|*Vpv) z^s}?Gf`Wq2c3(TKd6EDC00DGTPE!Ct=GbNc00454XkmZDm6hk`CgD<~tl;YB0=66g z84@JaUvBhs0001|Nkl zlBh<6hNfATrXq|G7696U8j_(v15gy82Q_PGYI%47+>yXQWJL2uXjo`DTmb`?h)NAj v3&j*gQ4oMvo{fM!(2@A%fhq_o814W7@c|x3X&02z00000NkvXXu0mjfn?rKP diff --git a/modular_citadel/icons/obj/genitals/vagina_onmob.dmi b/modular_citadel/icons/obj/genitals/vagina_onmob.dmi index 41bc818719b8e982409fbdcac322fc6990316193..c22c12ded338f74567d6521f524ebb9a64d1ae81 100644 GIT binary patch delta 917 zcmV;G18V$)1*-=oiBL{Q4GJ0x0000DNk~Le0004i0004C1Oos706?v?4gdfEEs-T9 zf91x@+O)Fj+1&Z=@@M%DXaE2J0d!JMQvg8b*k%9#0PlKKSad{Xb7OL8aCB*JZU6vy zoUN2k3xY5h#?S6k482yU{ke4sD>`Hl-Q}fC9q5W}8Giew9xNnbD|UI`!Sn3*?ius& zX1hPcI659sMTKNHj@NiG^O5spMCH1fe}~A)Da&%zHBy11x^yeZ7>6W(l)#f9@sr*8 z6klBA5GG{ff}B)9Nt-(ODhtMBE4@n#sC60olV!WY$&ev~JL8!-grZ!*wV*#KM<-bH z6Lk2?ffZ@26qqyg!cm0q17R2hFi{&HK9!cizX|^ly|%LqUn}k7x4yLWAp|8he@b}= zVov%wrRh`k@HURx&*24qM>)nSH#&^~00J>dL_t(|obBB|ZWB=u2jGPT3Bg9f;vzP_ z2o*IQ*P*1Oq@;I{wzm(#1-JvGik&4pNq#8Lt9)OYtn}u+dHcu3%*N?D0001B(Vi_l zzI)y{{{1?f000000DuMRTPKj(e}v`j=KX=RKHs{(5PQ)&0Ya`I00000JW0*_3u%46 zb$=nQ&!-z`-X8!O)8YXD005q-*59p?uAi3Y`+S0E3-S8hW*dd~t1|zS6mO1Ruh!)R zM+2tY?N@KB`0cF+SCiK#;3UCG2Ag-$`ggg9=M$)Jf%*74fg(PB2JSavf0Azf2o)Ph zwf+S7)h#q%pHJWaPdCuMyq!wx z`%5tU3;+NC000fV`uo#XTA%;=<-erya34Qp@!!8?@o%#5d;_n;^?kn(000000FN&& zucs5F@s~fs35LcA{7g3he*gdg0057#b$=jkaHRc#i^lQ(wdvxyf;8q91ONa4c!-O* zx|>#~Q@?+O6YR$6K9Bw^03*-GpwC;#aonJ-(000262;;)n&r5@02E!0dkk^WQP4^6+c_wA9jban^*J)>MMA%z&}nw7GK}N#rpLI rW^bW5fpq=mpMrNVUjM2c0-TLMx%@^czS6x%00000NkvXXu0mjf=FzFI delta 620 zcmV-y0+ao#2ZRMBiBL{Q4GJ0x0000DNk~Le0003X000311Oos70O0|)g#Z8mA(15| ze@(M1g#Z8m0d!JMQvg8b*k%9#0Lgk(Sad{Xb7OL8aCB*JZU6vyoKseCa&`CgQ*iP1 zGke*nOnU_wwBT7>9N)nTEQYq4j*9RsDA3&UMieXd=$f%M;(%pd2h}Q{5C{DnP zh{VjIO2U>aE4cc(fYS*8^OK~M8GP|#0003zNkld%7{M(gkT-~<2w z005gxts9sdg7HZ-Ps&8|oM@i3xr^2f00000Otd~Q!)^;rYqJ+y2@cKxv}_zQ1*0ssJDZ}#