* Revert "Revert "Huge Sprite Rework"" * Compilation of all feedback fixes This commit contains all the suggested fixes so far and the changes we came up with through discussion about the code. For example, genitals **may** now use alternate icons for aroused states, but does not have to, this is decided by a boolean variable in the sprite accessory itself, defaulting to not using alternate icons. Genital icon_state names now follow a new format to match these new options in a modular way for all kinds of genitals. * Conflict solving reformats all the taurs to use the TAUR layer instead of the BODY_FRONT layer. Same for the new Eevee sprites. * Committing the old, unfixed file. This will cause errors if used, but at least it won't cause conflicts. * Contains fixed sprite names The shepherd taur body should STILL have a hole in the body due to a pixel error. I have forgotten which pixes these are, so.... **le shrug** * Anger commit Commiting this in anger. I WILL make it work damnit! * Proper name fixes. Also renames the taur cow to no longer have an incorrectly duplicate icon_state. * Shepherd taur pixel fix Fixes the missing pixels from the taur body that caused a hole to appear when viewed from the sides. * Conflict resolution This PR will cause some sprite-breaking overlay errors. But it's the only way to handle the conflicting .dmi. So I'll make a separate PR to fix the sprites later. * Fixes global lists Now they use whatever weird new system we got for them.
71 lines
2.5 KiB
Plaintext
71 lines
2.5 KiB
Plaintext
/obj/item/organ/genital/vagina
|
|
name = "vagina"
|
|
desc = "A female reproductive organ."
|
|
icon = 'code/citadel/icons/vagina.dmi'
|
|
icon_state = "vagina"
|
|
zone = "groin"
|
|
slot = "vagina"
|
|
size = 1 //There is only 1 size right now
|
|
can_masturbate_with = 1
|
|
w_class = 3
|
|
var/cap_length = 8//D E P T H (cap = capacity)
|
|
var/cap_girth = 12
|
|
var/cap_girth_ratio = 1.5
|
|
var/clits = 1
|
|
var/clit_diam = 0.25
|
|
var/clit_len = 0.25
|
|
var/list/vag_types = list("tentacle", "dentata", "hairy")
|
|
var/obj/item/organ/genital/womb/linked_womb
|
|
|
|
|
|
/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/lowershape = lowertext(shape)
|
|
var/details
|
|
|
|
switch(lowershape)
|
|
if("tentacle")
|
|
details = "\nIts opening is lined with several tentacles and "
|
|
if("dentata")
|
|
details = "\nThere's teeth inside it and it is "
|
|
if("hairy")
|
|
details = "\nIt has quite a bit of hair growing on it and is "
|
|
if("human")
|
|
details = "\nIt is taut with smooth skin, though without much hair and "
|
|
if("gaping")
|
|
details = "\nIt is gaping slightly open, though without much hair and "
|
|
else
|
|
details = "\nIt has an exotic shape and is "
|
|
if(aroused_state)
|
|
details += "slick with female arousal."
|
|
else
|
|
details += "not very wet."
|
|
|
|
desc = "That's a [lowershape] vagina. You estimate it to be around [round(cap_length, 0.5)] inch[cap_length > 1 ? "es" : ""] deep and could stretch around something [round(cap_girth, 0.5)] inch[cap_girth > 1 ? "es" : ""] in girth. \
|
|
It has [clits > 1 ? "[clits] clits" : "a clit"] about [round(clit_len,0.25)] inch[clit_len > 1 ? "es" : ""] long and [round(clit_diam, 0.25)] inch[clit_diam > 1 ? "es" : ""] in diameter.[details]"
|
|
|
|
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)]"
|
|
else
|
|
color = "#[owner.dna.features["vag_color"]]"
|
|
|
|
|
|
/obj/item/organ/genital/vagina/update_link()
|
|
if(owner)
|
|
linked_womb = (owner.getorganslot("womb"))
|
|
if(linked_womb)
|
|
linked_womb.linked_vag = src
|
|
else
|
|
if(linked_womb)
|
|
linked_womb.linked_vag = null
|
|
linked_womb = null
|
|
|
|
/obj/item/organ/genital/vagina/remove_ref()
|
|
if(linked_womb)
|
|
linked_womb.linked_vag = null
|
|
linked_womb = null
|