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
@@ -343,7 +343,7 @@ var/global/list/valid_bloodtypes = list(
out += "<br><a href='?src=\ref[src];marking_style=1'>Body Markings +</a><br>"
for(var/M in pref.body_markings)
out += "[M] [pref.body_markings.len > 1 ? "<a href='?src=\ref[src];marking_up=[M]'>&#708;</a> <a href='?src=\ref[src];marking_down=[M]'>&#709;</a> " : ""]<a href='?src=\ref[src];marking_remove=[M]'>-</a> <a href='?src=\ref[src];marking_color=[M]'>Color</a>"
out += "[M] [pref.body_markings.len > 1 ? "<a href='?src=\ref[src];marking_up=[M]'>&#708;</a> <a href='?src=\ref[src];marking_down=[M]'>&#709;</a> " : ""]<a href='?src=\ref[src];marking_remove=[M]'>-</a> <a href='?src=\ref[src];marking_color=[M]'>Color</a>[length(mob_species.character_color_presets) ? "<a href='?src=\ref[src];marking_preset=[M]'>Preset</a>" : ""]"
out += HTML_RECT(pref.body_markings[M])
out += "<br>"
@@ -731,6 +731,14 @@ var/global/list/valid_bloodtypes = list(
pref.body_markings[M] = "[mark_color]"
return TOPIC_REFRESH_UPDATE_PREVIEW
else if(href_list["marking_preset"])
var/M = href_list["marking_preset"]
var/mark_preset = tgui_input_list(user, "Choose the [M] preset: ", "Character Preference", mob_species.character_color_presets, rgb(pref.r_skin, pref.g_skin, pref.b_skin))
mark_preset = mob_species.character_color_presets[mark_preset]
if(mark_preset && CanUseTopic(user))
pref.body_markings[M] = "[mark_preset]"
return TOPIC_REFRESH_UPDATE_PREVIEW
else if(href_list["limbs"])
var/list/acceptable_organ_input = list("Head", "Left Leg","Right Leg","Left Arm","Right Arm","Left Foot","Right Foot","Left Hand","Right Hand")
var/limb_name = tgui_input_list(user, "Which limb do you want to change?", "Limbs", acceptable_organ_input)