The Tree Update: Makes it easier for Dionae to color their body markings, removes hairstyles and skin tone from them, makes the tail marking into an actual tail (#19589)

https://github.com/Aurorastation/Aurora.3/assets/59633984/76c7c7a4-fa06-457c-bf8c-0a9bda733f49

Basically, uses the species' list of skin color presets, if any, to add
a button for body markings to select the same presets. This is only
really useful for Dionae at the moment, or at least I imagine so. Skin
tones and hairstyles were also removed from Dionae, as figuring out how
to add selectable tone for body markings was too much of a hassle and
adding presets for hairstyles as well seemed redundant. I was thinking
of adding a "random body markings" proc to resolve the issue of newly
formed gestalts not spawning with any hair, but let me know if this is
desired.

I discussed this with the Diona lore maintainer beforehand, but the team
is free to change their mind or request more features at any time.
This commit is contained in:
feartheblackout
2024-07-27 10:10:10 +00:00
committed by GitHub
parent 61baeb7b9a
commit 8befc4aab8
6 changed files with 75 additions and 169 deletions
@@ -1574,99 +1574,6 @@ Follow by example and make good judgement based on length which list to include
icon_state = "hair_mullet"
chatname = "mullet"
/datum/sprite_accessory/hair/bug_eyes
icon = 'icons/mob/human_face/dionae_hair.dmi'
name = "Bug Eyes"
icon_state = "bugeyes"
species_allowed = list(/datum/species/diona, /datum/species/diona/coeu)
gender = NEUTER
do_colouration = FALSE
/datum/sprite_accessory/hair/bug_eyes/human_eyes
name = "Human Eyes"
icon_state = "humaneyes"
/datum/sprite_accessory/hair/bug_eyes/skrell_eyes
name = "Skrell Eyes"
icon_state = "skrelleyes"
/datum/sprite_accessory/hair/bug_eyes/skrell_eyes_2
name = "Skrell Eyes 2"
icon_state = "skrelleyes2"
/datum/sprite_accessory/hair/bug_eyes/small_horns
name = "Small Horns"
icon_state = "smallhorns"
/datum/sprite_accessory/hair/bug_eyes/horny
name = "Horny"
icon_state = "horny"
/datum/sprite_accessory/hair/bug_eyes/headtails
name = "Head tails"
icon_state = "headtails"
/datum/sprite_accessory/hair/bug_eyes/headtails_2
name = "Head tails 2"
icon_state = "headtails2"
/datum/sprite_accessory/hair/bug_eyes/tiny_eye
name = "Tiny Eye"
icon_state = "tinyeye"
/datum/sprite_accessory/hair/bug_eyes/eyebrow
name = "Eyebrow"
icon_state = "eyebrow"
/datum/sprite_accessory/hair/bug_eyes/bullhorn
name = "Bullhorn"
icon_state = "bullhorn"
/datum/sprite_accessory/hair/bug_eyes/blinkinghelmethead
name = "Blinking Helmethead"
icon_state = "blinkinghelmethead"
/datum/sprite_accessory/hair/bug_eyes/periscope
name = "Periscope"
icon_state = "periscope"
/datum/sprite_accessory/hair/bug_eyes/glorp
name = "Glorp"
icon_state = "glorp"
/datum/sprite_accessory/hair/bug_eyes/mellow_cap
name = "Mellow Cap"
icon_state = "mellowcap"
/datum/sprite_accessory/hair/bug_eyes/red_cap
name = "Red Cap"
icon_state = "redcap"
/datum/sprite_accessory/hair/bug_eyes/fun_guy
name = "Fun Guy"
icon_state = "funguy"
/datum/sprite_accessory/hair/bug_eyes/spanish_moss
name = "Spanish Moss"
icon_state = "spanishmoss"
/datum/sprite_accessory/hair/bug_eyes/shelflife
name = "Shelflife"
icon_state = "shelflife"
do_colouration = TRUE
/datum/sprite_accessory/hair/bug_eyes/oak
name = "Oak"
icon_state = "oak"
/datum/sprite_accessory/hair/bug_eyes/thorns
name = "Thorns"
icon_state = "thorns"
/datum/sprite_accessory/hair/bug_eyes/stump
name = "Stump"
icon_state = "stump"
// TG-format hair - uses ICON_MULTIPLY instead of ICON_ADD
/datum/sprite_accessory/hair/balding
icon = 'icons/mob/human_face/hair_multiply.dmi'
@@ -4491,74 +4398,6 @@ Follow by example and make good judgement based on length which list to include
name = "golden deep IPC screen"
icon_state = "ipc_gd"
/datum/sprite_accessory/facial_hair/diona_eye
icon = 'icons/mob/human_face/dionae_hair.dmi'
name = "Mono Eye"
icon_state = "monoeye"
species_allowed = list(/datum/species/diona, /datum/species/diona/coeu)
gender = NEUTER
do_colouration = FALSE
/datum/sprite_accessory/facial_hair/diona_eye/trioptics
name = "Trioptics"
icon_state = "trioptics"
/datum/sprite_accessory/facial_hair/diona_eye/lopsided
name = "Lopsided Eyes"
icon_state = "lopsided"
/datum/sprite_accessory/facial_hair/diona_eye/helmethead
name = "Helmethead"
icon_state = "helmethead"
/datum/sprite_accessory/facial_hair/diona_eye/eyestalk
name = "Eyestalk"
icon_state = "eyestalk"
/datum/sprite_accessory/facial_hair/diona_eye/treebeard
name = "Treebeard"
icon_state = "treebeard"
/datum/sprite_accessory/facial_hair/diona_eye/bug_eyes
name = "Bug Eyes"
icon_state = "bugeyes"
/datum/sprite_accessory/facial_hair/diona_eye/human_eyes
name = "Human Eyes"
icon_state = "humaneyes"
/datum/sprite_accessory/facial_hair/diona_eye/skrell_eyes
name = "Skrell Eyes"
icon_state = "skrelleyes"
/datum/sprite_accessory/facial_hair/diona_eye/skrell_eyes_2
name = "Skrell Eyes 2"
icon_state = "skrelleyes2"
/datum/sprite_accessory/facial_hair/diona_eye/tiny_eye
name = "Tiny Eye"
icon_state = "tinyeye"
/datum/sprite_accessory/facial_hair/diona_eye/eyebrow
name = "Eyebrow"
icon_state = "eyebrow"
/datum/sprite_accessory/facial_hair/diona_eye/blinkinghelmethead
name = "Blinking Helmethead"
icon_state = "blinkinghelmethead"
/datum/sprite_accessory/facial_hair/diona_eye/periscope
name = "Periscope"
icon_state = "periscope"
/datum/sprite_accessory/facial_hair/diona_eye/glorp
name = "Glorp"
icon_state = "glorp"
/datum/sprite_accessory/facial_hair/diona_eye/snout
name = "Snout"
icon_state = "snout"
/datum/sprite_accessory/facial_hair/tuux_whiskers
icon = 'icons/mob/human_face/skrell_beards.dmi'
name = "Tuux Tentacle Whiskers"
@@ -6376,12 +6215,6 @@ Follow by example and make good judgement based on length which list to include
body_parts = list(BP_R_HAND, BP_L_HAND)
do_colouration = FALSE
/datum/sprite_accessory/marking/diona_leaves/tail
name = "Tail"
icon_state = "dionatail"
body_parts = list(BP_GROIN)
do_colouration = FALSE
// Baseline markings.
/datum/sprite_accessory/marking/baseline_head
name = "Baseline - Raxus Primary Colors"
@@ -97,7 +97,7 @@
body_temperature = T0C + 15 //make the plant people have a bit lower body temperature, why not
appearance_flags = HAS_HAIR_COLOR | HAS_SKIN_TONE | HAS_SKIN_PRESET
appearance_flags = HAS_HAIR_COLOR | HAS_SKIN_PRESET
flags = NO_BREATHE | NO_SCAN | IS_PLANT | NO_BLOOD | NO_SLIP | NO_CHUBBY | NO_ARTERIES
spawn_flags = CAN_JOIN | IS_WHITELISTED | NO_AGE_MINIMUM
@@ -135,6 +135,10 @@
snore_key = "chirp"
indefinite_sleep = TRUE
tail = "No Tail"
tail_animation = 'icons/mob/species/diona/tail.dmi'
selectable_tails = list("No Tail", "Unathi Tail")
/datum/species/diona/can_understand(var/mob/other)
var/mob/living/carbon/alien/diona/D = other
if(istype(D))