From 73747406a43f70618c2efa09ffa15e8ce6b871be Mon Sep 17 00:00:00 2001 From: Saint <31362902+SaintBurgher@users.noreply.github.com> Date: Wed, 14 May 2025 11:02:43 -0500 Subject: [PATCH] New Grey Skin Tones (#29252) * Adds in Sprites * Adds in supporting customization code --- .../mob/living/carbon/human/species/grey.dm | 26 ++++++++++++++++-- icons/mob/human_races/{ => grey}/r_grey.dmi | Bin icons/mob/human_races/grey/r_grey_blue.dmi | Bin 0 -> 5474 bytes icons/mob/human_races/grey/r_grey_green.dmi | Bin 0 -> 5540 bytes icons/mob/human_races/grey/r_grey_red.dmi | Bin 0 -> 5509 bytes 5 files changed, 24 insertions(+), 2 deletions(-) rename icons/mob/human_races/{ => grey}/r_grey.dmi (100%) create mode 100644 icons/mob/human_races/grey/r_grey_blue.dmi create mode 100644 icons/mob/human_races/grey/r_grey_green.dmi create mode 100644 icons/mob/human_races/grey/r_grey_red.dmi diff --git a/code/modules/mob/living/carbon/human/species/grey.dm b/code/modules/mob/living/carbon/human/species/grey.dm index f831ce0d44f..c07a44078a2 100644 --- a/code/modules/mob/living/carbon/human/species/grey.dm +++ b/code/modules/mob/living/carbon/human/species/grey.dm @@ -1,7 +1,7 @@ /datum/species/grey name = "Grey" name_plural = "Greys" - icobase = 'icons/mob/human_races/r_grey.dmi' + icobase = 'icons/mob/human_races/grey/r_grey.dmi' language = "Psionic Communication" blurb = "The Grey, known for their psionic abilities and unique appearance, hail from beyond the Milky Way and have an undisclosed homeworld. \ @@ -12,6 +12,13 @@ eyes = "grey_eyes_s" butt_sprite = "grey" + icon_skin_tones = list( + 1 = "Default Grey", + 2 = "Grey Green", + 3 = "Grey Blue", + 4 = "Grey Red" + ) + has_organ = list( "heart" = /obj/item/organ/internal/heart/grey, "lungs" = /obj/item/organ/internal/lungs/grey, @@ -24,7 +31,7 @@ species_traits = list(LIPS, CAN_WINGDINGS, NO_HAIR) clothing_flags = HAS_UNDERWEAR | HAS_UNDERSHIRT | HAS_SOCKS - bodyflags = HAS_BODY_MARKINGS | HAS_BODYACC_COLOR | SHAVED | BALD + bodyflags = HAS_BODY_MARKINGS | HAS_BODYACC_COLOR | SHAVED | BALD | HAS_ICON_SKIN_TONE dietflags = DIET_HERB reagent_tag = PROCESS_ORG flesh_color = "#a598ad" @@ -32,6 +39,21 @@ plushie_type = /obj/item/toy/plushie/greyplushie +/datum/species/grey/updatespeciescolor(mob/living/carbon/human/H, owner_sensitive = 1) //Handling species-specific skin-tones for the grey race. + if(H.dna.species.bodyflags & HAS_ICON_SKIN_TONE) + var/new_icobase = 'icons/mob/human_races/grey/r_grey.dmi' //Default grey. + switch(H.s_tone) + if(4) //red Grey. + new_icobase = 'icons/mob/human_races/grey/r_grey_red.dmi' + if(3) //blue grey. + new_icobase = 'icons/mob/human_races/grey/r_grey_blue.dmi' + if(2) //green grey. + new_icobase = 'icons/mob/human_races/grey/r_grey_green.dmi' + else //Default. + new_icobase = 'icons/mob/human_races/grey/r_grey.dmi' + + H.change_icobase(new_icobase, owner_sensitive) //Update the icobase of all our organs, but make sure we don't mess with frankenstein limbs in doing so. + /datum/species/grey/handle_dna(mob/living/carbon/human/H, remove) ..() H.dna.SetSEState(GLOB.remotetalkblock, !remove, TRUE) diff --git a/icons/mob/human_races/r_grey.dmi b/icons/mob/human_races/grey/r_grey.dmi similarity index 100% rename from icons/mob/human_races/r_grey.dmi rename to icons/mob/human_races/grey/r_grey.dmi diff --git a/icons/mob/human_races/grey/r_grey_blue.dmi b/icons/mob/human_races/grey/r_grey_blue.dmi new file mode 100644 index 0000000000000000000000000000000000000000..fc804c630b033b10141058ab209c6a674a8952e1 GIT binary patch literal 5474 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 literal 0 HcmV?d00001 diff --git a/icons/mob/human_races/grey/r_grey_green.dmi b/icons/mob/human_races/grey/r_grey_green.dmi new file mode 100644 index 0000000000000000000000000000000000000000..0d750b7691fbbe028675637d80795b8d05e60e1b GIT binary patch literal 5540 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 W;$Cw@o*%2O3YeQ(nUovdeDp8<(6?;> literal 0 HcmV?d00001