mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-07-11 16:14:08 +01:00
[MIRROR] makes it so the sanitize_hexcolors' default is 6 characters rather than 3 and gets rid of color_legacy [MDB IGNORE] (#8840)
* makes it so the sanitize_hexcolors' default is 6 characters rather than 3 and gets rid of color_legacy * Feex * Feex some more * Final feex * Please no more I'm tired * <<<<<<< HEAD Co-authored-by: Seris02 <49109742+Seris02@users.noreply.github.com> Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com> Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
This commit is contained in:
@@ -16,11 +16,11 @@
|
||||
H.real_name = random_unique_name(H.gender)
|
||||
H.name = H.real_name
|
||||
H.underwear = random_underwear(H.gender)
|
||||
H.underwear_color = random_short_color()
|
||||
H.underwear_color = "#[random_color()]"
|
||||
H.skin_tone = random_skin_tone()
|
||||
H.hairstyle = random_hairstyle(H.gender)
|
||||
H.facial_hairstyle = random_facial_hairstyle(H.gender)
|
||||
H.hair_color = random_short_color()
|
||||
H.hair_color = "#[random_color()]"
|
||||
H.facial_hair_color = H.hair_color
|
||||
H.eye_color = random_eye_color()
|
||||
H.dna.blood_type = random_blood_type()
|
||||
@@ -28,7 +28,7 @@
|
||||
// Mutant randomizing, doesn't affect the mob appearance unless it's the specific mutant.
|
||||
//SKYRAT EDIT REMOVAL BEGIN - CUSTOMIZATION
|
||||
/*
|
||||
H.dna.features["mcolor"] = random_short_color() SKYRAT EDIT - We dont use those in favor for a more modular system
|
||||
H.dna.features["mcolor"] = "#[random_color()]"
|
||||
H.dna.features["ethcolor"] = GLOB.color_list_ethereal[pick(GLOB.color_list_ethereal)]
|
||||
H.dna.features["tail_lizard"] = pick(GLOB.tails_list_lizard)
|
||||
H.dna.features["snout"] = pick(GLOB.snouts_list)
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
|
||||
/datum/antagonist/obsessed/get_preview_icon()
|
||||
var/mob/living/carbon/human/dummy/consistent/victim_dummy = new
|
||||
victim_dummy.hair_color = "b96" // Brown
|
||||
victim_dummy.hair_color = "#bb9966" // Brown
|
||||
victim_dummy.hairstyle = "Messy"
|
||||
victim_dummy.update_hair()
|
||||
|
||||
|
||||
@@ -30,12 +30,12 @@
|
||||
if(visualsOnly)
|
||||
return
|
||||
equipped_on.fully_replace_character_name(null,"Waldo")
|
||||
equipped_on.eye_color = "000"
|
||||
equipped_on.eye_color = "#000000"
|
||||
equipped_on.gender = MALE
|
||||
equipped_on.skin_tone = "caucasian3"
|
||||
equipped_on.hairstyle = "Business Hair 3"
|
||||
equipped_on.facial_hairstyle = "Shaved"
|
||||
equipped_on.hair_color = "000"
|
||||
equipped_on.hair_color = "#000000"
|
||||
equipped_on.facial_hair_color = equipped_on.hair_color
|
||||
equipped_on.update_body()
|
||||
if(equipped_on.mind)
|
||||
|
||||
@@ -350,11 +350,11 @@
|
||||
if(haircolor)
|
||||
H.hair_color = haircolor
|
||||
else
|
||||
H.hair_color = random_short_color()
|
||||
H.hair_color = "#[random_color()]"
|
||||
if(facial_haircolor)
|
||||
H.facial_hair_color = facial_haircolor
|
||||
else
|
||||
H.facial_hair_color = random_short_color()
|
||||
H.facial_hair_color = "#[random_color()]"
|
||||
if(skin_tone)
|
||||
H.skin_tone = skin_tone
|
||||
else
|
||||
|
||||
@@ -265,14 +265,10 @@ GLOBAL_LIST_EMPTY(preferences_datums)
|
||||
if (isnull(requested_preference))
|
||||
return FALSE
|
||||
|
||||
if (!istype(requested_preference, /datum/preference/color) \
|
||||
&& !istype(requested_preference, /datum/preference/color_legacy) \
|
||||
)
|
||||
if (!istype(requested_preference, /datum/preference/color))
|
||||
return FALSE
|
||||
|
||||
var/default_value = read_preference(requested_preference.type)
|
||||
if (istype(requested_preference, /datum/preference/color_legacy))
|
||||
default_value = expand_three_digit_color(default_value)
|
||||
|
||||
// Yielding
|
||||
var/new_color = input(
|
||||
|
||||
@@ -424,32 +424,20 @@ GLOBAL_LIST_INIT(preference_entries_by_key, init_preference_entries_by_key())
|
||||
|
||||
return data
|
||||
|
||||
/// A preference that represents an RGB color of something, crunched down to 3 hex numbers.
|
||||
/// Was used heavily in the past, but doesn't provide as much range and only barely conserves space.
|
||||
/datum/preference/color_legacy
|
||||
abstract_type = /datum/preference/color_legacy
|
||||
|
||||
/datum/preference/color_legacy/deserialize(input, datum/preferences/preferences)
|
||||
return sanitize_hexcolor(input)
|
||||
|
||||
/datum/preference/color_legacy/create_default_value()
|
||||
return random_short_color()
|
||||
|
||||
/datum/preference/color_legacy/is_valid(value)
|
||||
var/static/regex/is_legacy_color = regex(@"^[0-9a-fA-F]{3}$")
|
||||
return findtext(value, is_legacy_color)
|
||||
|
||||
/// A preference that represents an RGB color of something.
|
||||
/// Will give the value as 6 hex digits, without a hash.
|
||||
/datum/preference/color
|
||||
abstract_type = /datum/preference/color
|
||||
|
||||
/datum/preference/color/deserialize(input, datum/preferences/preferences)
|
||||
return sanitize_color(input)
|
||||
return sanitize_hexcolor(input)
|
||||
|
||||
/datum/preference/color/create_default_value()
|
||||
return random_color()
|
||||
|
||||
/datum/preference/color/serialize(input)
|
||||
return sanitize_hexcolor(input)
|
||||
|
||||
/datum/preference/color/is_valid(value)
|
||||
return findtext(value, GLOB.is_color)
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
var/list/values = possible_values_for_sprite_accessory_list(accessories)
|
||||
|
||||
var/icon/head_icon = icon('icons/mob/human_parts_greyscale.dmi', "human_head_m")
|
||||
head_icon.Blend("#[skintone2hex("caucasian1")]", ICON_MULTIPLY)
|
||||
head_icon.Blend(skintone2hex("caucasian1"), ICON_MULTIPLY)
|
||||
|
||||
for (var/name in values)
|
||||
var/datum/sprite_accessory/accessory = accessories[name]
|
||||
@@ -22,13 +22,13 @@
|
||||
|
||||
return values
|
||||
|
||||
/datum/preference/color_legacy/eye_color
|
||||
/datum/preference/color/eye_color
|
||||
savefile_key = "eye_color"
|
||||
savefile_identifier = PREFERENCE_CHARACTER
|
||||
category = PREFERENCE_CATEGORY_SECONDARY_FEATURES
|
||||
relevant_species_trait = EYECOLOR
|
||||
|
||||
/datum/preference/color_legacy/eye_color/apply_to_human(mob/living/carbon/human/target, value)
|
||||
/datum/preference/color/eye_color/apply_to_human(mob/living/carbon/human/target, value)
|
||||
target.eye_color = value
|
||||
|
||||
var/obj/item/organ/eyes/eyes_organ = target.getorgan(/obj/item/organ/eyes)
|
||||
@@ -37,7 +37,7 @@
|
||||
eyes_organ.eye_color = value
|
||||
eyes_organ.old_eye_color = value
|
||||
|
||||
/datum/preference/color_legacy/eye_color/create_default_value()
|
||||
/datum/preference/color/eye_color/create_default_value()
|
||||
return random_eye_color()
|
||||
|
||||
/datum/preference/choiced/facial_hairstyle
|
||||
@@ -61,22 +61,22 @@
|
||||
|
||||
return data
|
||||
|
||||
/datum/preference/color_legacy/facial_hair_color
|
||||
/datum/preference/color/facial_hair_color
|
||||
savefile_key = "facial_hair_color"
|
||||
savefile_identifier = PREFERENCE_CHARACTER
|
||||
category = PREFERENCE_CATEGORY_SUPPLEMENTAL_FEATURES
|
||||
relevant_species_trait = FACEHAIR
|
||||
|
||||
/datum/preference/color_legacy/facial_hair_color/apply_to_human(mob/living/carbon/human/target, value)
|
||||
/datum/preference/color/facial_hair_color/apply_to_human(mob/living/carbon/human/target, value)
|
||||
target.facial_hair_color = value
|
||||
|
||||
/datum/preference/color_legacy/hair_color
|
||||
/datum/preference/color/hair_color
|
||||
savefile_key = "hair_color"
|
||||
savefile_identifier = PREFERENCE_CHARACTER
|
||||
category = PREFERENCE_CATEGORY_SUPPLEMENTAL_FEATURES
|
||||
relevant_species_trait = HAIR
|
||||
|
||||
/datum/preference/color_legacy/hair_color/apply_to_human(mob/living/carbon/human/target, value)
|
||||
/datum/preference/color/hair_color/apply_to_human(mob/living/carbon/human/target, value)
|
||||
target.hair_color = value
|
||||
|
||||
/datum/preference/choiced/hairstyle
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
var/color = GLOB.color_list_ethereal[name]
|
||||
|
||||
var/icon/icon = new(ethereal_base)
|
||||
icon.Blend("#[color]", ICON_MULTIPLY)
|
||||
icon.Blend(color, ICON_MULTIPLY)
|
||||
values[name] = icon
|
||||
|
||||
return values
|
||||
|
||||
@@ -1,21 +1,21 @@
|
||||
/* SKYRAT EDIT REMOVAL
|
||||
/datum/preference/color_legacy/mutant_color
|
||||
/datum/preference/color/mutant_color
|
||||
savefile_key = "feature_mcolor"
|
||||
savefile_identifier = PREFERENCE_CHARACTER
|
||||
category = PREFERENCE_CATEGORY_SECONDARY_FEATURES
|
||||
relevant_species_trait = MUTCOLORS
|
||||
|
||||
/datum/preference/color_legacy/mutant_color/create_default_value()
|
||||
/datum/preference/color/mutant_color/create_default_value()
|
||||
return sanitize_hexcolor("[pick("7F", "FF")][pick("7F", "FF")][pick("7F", "FF")]")
|
||||
|
||||
/datum/preference/color_legacy/mutant_color/apply_to_human(mob/living/carbon/human/target, value)
|
||||
/datum/preference/color/mutant_color/apply_to_human(mob/living/carbon/human/target, value)
|
||||
target.dna.features["mcolor"] = value
|
||||
|
||||
/datum/preference/color_legacy/mutant_color/is_valid(value)
|
||||
/datum/preference/color/mutant_color/is_valid(value)
|
||||
if (!..(value))
|
||||
return FALSE
|
||||
|
||||
if (is_color_dark(expand_three_digit_color(value)))
|
||||
if (is_color_dark(value))
|
||||
return FALSE
|
||||
|
||||
return TRUE
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
/datum/preference/color_legacy/underwear_color
|
||||
/datum/preference/color/underwear_color
|
||||
savefile_key = "underwear_color"
|
||||
savefile_identifier = PREFERENCE_CHARACTER
|
||||
category = PREFERENCE_CATEGORY_SUPPLEMENTAL_FEATURES
|
||||
|
||||
/datum/preference/color_legacy/underwear_color/apply_to_human(mob/living/carbon/human/target, value)
|
||||
/datum/preference/color/underwear_color/apply_to_human(mob/living/carbon/human/target, value)
|
||||
target.underwear_color = value
|
||||
|
||||
/datum/preference/color_legacy/underwear_color/is_accessible(datum/preferences/preferences)
|
||||
/datum/preference/color/underwear_color/is_accessible(datum/preferences/preferences)
|
||||
if (!..(preferences))
|
||||
return FALSE
|
||||
|
||||
|
||||
@@ -401,7 +401,7 @@
|
||||
/obj/item/clothing/glasses/blindfold/white/update_icon(updates=ALL, mob/living/carbon/human/user)
|
||||
. = ..()
|
||||
if(ishuman(user) && !colored_before)
|
||||
add_atom_colour("#[user.eye_color]", FIXED_COLOUR_PRIORITY)
|
||||
add_atom_colour(user.eye_color, FIXED_COLOUR_PRIORITY)
|
||||
colored_before = TRUE
|
||||
|
||||
/obj/item/clothing/glasses/blindfold/white/worn_overlays(mutable_appearance/standing, isinhands = FALSE, file2use)
|
||||
@@ -412,7 +412,7 @@
|
||||
var/mob/living/carbon/human/H = loc
|
||||
var/mutable_appearance/M = mutable_appearance('icons/mob/clothing/eyes.dmi', "blindfoldwhite")
|
||||
M.appearance_flags |= RESET_COLOR
|
||||
M.color = "#[H.eye_color]"
|
||||
M.color = H.eye_color
|
||||
. += M
|
||||
|
||||
/obj/item/clothing/glasses/sunglasses/big
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
/obj/item/clothing/head/kitty/update_icon(updates=ALL, mob/living/carbon/human/user)
|
||||
. = ..()
|
||||
if(ishuman(user))
|
||||
add_atom_colour("#[user.hair_color]", FIXED_COLOUR_PRIORITY)
|
||||
add_atom_colour(user.hair_color, FIXED_COLOUR_PRIORITY)
|
||||
|
||||
/obj/item/clothing/head/kitty/genuine
|
||||
desc = "A pair of kitty ears. A tag on the inside says \"Hand made from real cats.\""
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
inhand_icon_state = "pwig"
|
||||
worn_icon_state = "wig"
|
||||
flags_inv = HIDEHAIR
|
||||
color = "#000"
|
||||
color = "#000000"
|
||||
var/hairstyle = "Very Long Hair"
|
||||
var/adjustablecolor = TRUE //can color be changed manually?
|
||||
|
||||
@@ -77,7 +77,7 @@
|
||||
selected_hairstyle_color = wig.color
|
||||
else if((HAIR in target.dna.species.species_traits) && target.hairstyle != "Bald")
|
||||
selected_hairstyle = target.hairstyle
|
||||
selected_hairstyle_color = "#[target.hair_color]"
|
||||
selected_hairstyle_color = "[target.hair_color]"
|
||||
|
||||
if(selected_hairstyle)
|
||||
to_chat(user, span_notice("You adjust the [src] to look just like [target.name]'s [selected_hairstyle]."))
|
||||
@@ -93,7 +93,7 @@
|
||||
/obj/item/clothing/head/wig/natural
|
||||
name = "natural wig"
|
||||
desc = "A bunch of hair without a head attached. This one changes color to match the hair of the wearer. Nothing natural about that."
|
||||
color = "#FFF"
|
||||
color = "#FFFFFF"
|
||||
adjustablecolor = FALSE
|
||||
custom_price = PAYCHECK_HARD
|
||||
|
||||
@@ -104,7 +104,7 @@
|
||||
/obj/item/clothing/head/wig/natural/visual_equipped(mob/living/carbon/human/user, slot)
|
||||
. = ..()
|
||||
if(ishuman(user) && slot == ITEM_SLOT_HEAD)
|
||||
if (color != "#[user.hair_color]") // only update if necessary
|
||||
add_atom_colour("#[user.hair_color]", FIXED_COLOUR_PRIORITY)
|
||||
if (color != user.hair_color) // only update if necessary
|
||||
add_atom_colour(user.hair_color, FIXED_COLOUR_PRIORITY)
|
||||
update_appearance()
|
||||
user.update_inv_head()
|
||||
|
||||
@@ -23,6 +23,6 @@
|
||||
|
||||
H.hairstyle = "Long Hair 3"
|
||||
H.facial_hairstyle = "Beard (Full)"
|
||||
H.hair_color = "FFF"
|
||||
H.facial_hair_color = "FFF"
|
||||
H.hair_color = "#FFFFFF"
|
||||
H.facial_hair_color = "#FFFFFF"
|
||||
H.update_hair()
|
||||
|
||||
@@ -710,8 +710,8 @@
|
||||
switch(random)
|
||||
if(1)
|
||||
to_chat(user, span_danger("Your appearance morphs to that of a very small humanoid ash dragon! You get to look like a freak without the cool abilities."))
|
||||
consumer.dna.features = list("mcolor" = "A02720", "tail_lizard" = "Dark Tiger", "tail_human" = "None", "snout" = "Sharp", "horns" = "Curled", "ears" = "None", "wings" = "None", "frills" = "None", "spines" = "Long", "body_markings" = "Dark Tiger Body", "legs" = "Digitigrade Legs")
|
||||
consumer.eye_color = "fee5a3"
|
||||
consumer.dna.features = list("mcolor" = "#A02720", "tail_lizard" = "Dark Tiger", "tail_human" = "None", "snout" = "Sharp", "horns" = "Curled", "ears" = "None", "wings" = "None", "frills" = "None", "spines" = "Long", "body_markings" = "Dark Tiger Body", "legs" = "Digitigrade Legs")
|
||||
consumer.eye_color = "#FEE5A3"
|
||||
consumer.set_species(/datum/species/lizard)
|
||||
if(2)
|
||||
to_chat(user, span_danger("Your flesh begins to melt! Miraculously, you seem fine otherwise."))
|
||||
|
||||
@@ -820,11 +820,11 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
|
||||
|
||||
if(HAIR in species.species_traits)
|
||||
hairstyle = client.prefs.read_preference(/datum/preference/choiced/hairstyle)
|
||||
hair_color = brighten_color(client.prefs.read_preference(/datum/preference/color_legacy/hair_color))
|
||||
hair_color = brighten_color(client.prefs.read_preference(/datum/preference/color/hair_color))
|
||||
|
||||
if(FACEHAIR in species.species_traits)
|
||||
facial_hairstyle = client.prefs.read_preference(/datum/preference/choiced/facial_hairstyle)
|
||||
facial_hair_color = brighten_color(client.prefs.read_preference(/datum/preference/color_legacy/facial_hair_color))
|
||||
facial_hair_color = brighten_color(client.prefs.read_preference(/datum/preference/color/facial_hair_color))
|
||||
|
||||
qdel(species)
|
||||
|
||||
|
||||
@@ -17,20 +17,20 @@
|
||||
health = MAX_HUMAN_LIFE //SKYRAT EDIT ADDITION
|
||||
|
||||
//Hair colour and style
|
||||
var/hair_color = "000"
|
||||
var/hair_color = "#000000"
|
||||
var/hairstyle = "Bald"
|
||||
|
||||
///Colour used for the hair gradient.
|
||||
var/grad_color = "000"
|
||||
var/grad_color = "#000000"
|
||||
///Style used for the hair gradient.
|
||||
var/grad_style
|
||||
|
||||
//Facial hair colour and style
|
||||
var/facial_hair_color = "000"
|
||||
var/facial_hair_color = "#000000"
|
||||
var/facial_hairstyle = "Shaved"
|
||||
|
||||
//Eye colour
|
||||
var/eye_color = "000"
|
||||
var/eye_color = "#000000"
|
||||
|
||||
var/skin_tone = "caucasian1" //Skin tone
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
|
||||
//consider updating /mob/living/carbon/human/copy_clothing_prefs() if adding more of these
|
||||
var/underwear = "Nude" //Which underwear the player wants
|
||||
var/underwear_color = "000"
|
||||
var/underwear_color = "#000000"
|
||||
var/undershirt = "Nude" //Which undershirt the player wants
|
||||
var/socks = "Nude" //Which socks the player wants
|
||||
var/backpack = DBACKPACK //Which backpack type the player has chosen.
|
||||
|
||||
@@ -706,7 +706,7 @@ generate/load female uniform sprites matching all previously decided variables
|
||||
else
|
||||
eye_overlay = mutable_appearance('icons/mob/human_face.dmi', E.eye_icon_state, -BODY_LAYER)
|
||||
if((EYECOLOR in dna.species.species_traits) && E)
|
||||
eye_overlay.color = "#" + eye_color
|
||||
eye_overlay.color = eye_color
|
||||
if(OFFSET_FACE in dna.species.offset_features)
|
||||
eye_overlay.pixel_x += dna.species.offset_features[OFFSET_FACE][1]
|
||||
eye_overlay.pixel_y += dna.species.offset_features[OFFSET_FACE][2]
|
||||
|
||||
@@ -20,7 +20,7 @@ GLOBAL_LIST_EMPTY(features_by_species)
|
||||
///This is the fluff name. They are displayed on health analyzers and in the character setup menu. Leave them generic for other servers to customize.
|
||||
var/name
|
||||
// Default color. If mutant colors are disabled, this is the color that will be used by that race.
|
||||
var/default_color = "#FFF"
|
||||
var/default_color = "#FFFFFF"
|
||||
|
||||
///Whether or not the race has sexual characteristics (biological genders). At the moment this is only FALSE for skeletons and shadows
|
||||
var/sexes = TRUE
|
||||
@@ -574,13 +574,13 @@ GLOBAL_LIST_EMPTY(features_by_species)
|
||||
if(!forced_colour)
|
||||
if(hair_color)
|
||||
if(hair_color == "mutcolor")
|
||||
facial_overlay.color = "#" + H.dna.features["mcolor"]
|
||||
facial_overlay.color = H.dna.features["mcolor"]
|
||||
else if(hair_color == "fixedmutcolor")
|
||||
facial_overlay.color = "#[fixed_mut_color]"
|
||||
facial_overlay.color = fixed_mut_color
|
||||
else
|
||||
facial_overlay.color = "#" + hair_color
|
||||
facial_overlay.color = hair_color
|
||||
else
|
||||
facial_overlay.color = "#" + H.facial_hair_color
|
||||
facial_overlay.color = H.facial_hair_color
|
||||
else
|
||||
facial_overlay.color = forced_colour
|
||||
|
||||
@@ -647,13 +647,13 @@ GLOBAL_LIST_EMPTY(features_by_species)
|
||||
if(!forced_colour)
|
||||
if(hair_color)
|
||||
if(hair_color == "mutcolor")
|
||||
hair_overlay.color = "#" + H.dna.features["mcolor"]
|
||||
hair_overlay.color = H.dna.features["mcolor"]
|
||||
else if(hair_color == "fixedmutcolor")
|
||||
hair_overlay.color = "#[fixed_mut_color]"
|
||||
hair_overlay.color = fixed_mut_color
|
||||
else
|
||||
hair_overlay.color = "#" + hair_color
|
||||
hair_overlay.color = hair_color
|
||||
else
|
||||
hair_overlay.color = "#" + H.hair_color
|
||||
hair_overlay.color = H.hair_color
|
||||
|
||||
//Gradients
|
||||
grad_style = H.grad_style
|
||||
@@ -664,7 +664,7 @@ GLOBAL_LIST_EMPTY(features_by_species)
|
||||
var/icon/temp_hair = icon(hair_file, hair_state)
|
||||
temp.Blend(temp_hair, ICON_ADD)
|
||||
gradient_overlay.icon = temp
|
||||
gradient_overlay.color = "#" + grad_color
|
||||
gradient_overlay.color = grad_color
|
||||
|
||||
else
|
||||
hair_overlay.color = forced_colour
|
||||
@@ -751,7 +751,7 @@ GLOBAL_LIST_EMPTY(features_by_species)
|
||||
eye_overlay.pixel_x += add_pixel_x
|
||||
eye_overlay.pixel_y += add_pixel_y
|
||||
if((EYECOLOR in species_traits) && eye_organ)
|
||||
eye_overlay.color = "#" + species_human.eye_color
|
||||
eye_overlay.color = species_human.eye_color
|
||||
standing += eye_overlay
|
||||
|
||||
// organic body markings
|
||||
@@ -799,7 +799,7 @@ GLOBAL_LIST_EMPTY(features_by_species)
|
||||
else
|
||||
underwear_overlay = mutable_appearance(underwear.icon, underwear.icon_state, -BODY_LAYER)
|
||||
if(!underwear.use_static)
|
||||
underwear_overlay.color = "#" + species_human.underwear_color
|
||||
underwear_overlay.color = species_human.underwear_color
|
||||
standing += underwear_overlay
|
||||
|
||||
if(species_human.undershirt)
|
||||
@@ -984,20 +984,20 @@ GLOBAL_LIST_EMPTY(features_by_species)
|
||||
switch(accessory.color_src)
|
||||
if(MUTCOLORS)
|
||||
if(fixed_mut_color)
|
||||
accessory_overlay.color = "#[fixed_mut_color]"
|
||||
accessory_overlay.color = fixed_mut_color
|
||||
else
|
||||
accessory_overlay.color = "#[source.dna.features["mcolor"]]"
|
||||
accessory_overlay.color = source.dna.features["mcolor"]
|
||||
if(HAIR)
|
||||
if(hair_color == "mutcolor")
|
||||
accessory_overlay.color = "#[source.dna.features["mcolor"]]"
|
||||
accessory_overlay.color = source.dna.features["mcolor"]
|
||||
else if(hair_color == "fixedmutcolor")
|
||||
accessory_overlay.color = "#[fixed_mut_color]"
|
||||
accessory_overlay.color = fixed_mut_color
|
||||
else
|
||||
accessory_overlay.color = "#[source.hair_color]"
|
||||
accessory_overlay.color = source.hair_color
|
||||
if(FACEHAIR)
|
||||
accessory_overlay.color = "#[source.facial_hair_color]"
|
||||
accessory_overlay.color = source.facial_hair_color
|
||||
if(EYECOLOR)
|
||||
accessory_overlay.color = "#[source.eye_color]"
|
||||
accessory_overlay.color = source.eye_color
|
||||
else
|
||||
accessory_overlay.color = forced_colour
|
||||
standing += accessory_overlay
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
if(!ishuman(C))
|
||||
return
|
||||
var/mob/living/carbon/human/ethereal = C
|
||||
default_color = "#[ethereal.dna.features["ethcolor"]]"
|
||||
default_color = ethereal.dna.features["ethcolor"]
|
||||
r1 = GETREDPART(default_color)
|
||||
g1 = GETGREENPART(default_color)
|
||||
b1 = GETBLUEPART(default_color)
|
||||
|
||||
@@ -139,7 +139,7 @@
|
||||
|
||||
/datum/species/human/felinid/prepare_human_for_preview(mob/living/carbon/human/human)
|
||||
human.hairstyle = "Hime Cut"
|
||||
human.hair_color = "fcc" // pink
|
||||
human.hair_color = "#ffcccc" // pink
|
||||
human.update_hair()
|
||||
|
||||
var/obj/item/organ/ears/cat/cat_ears = human.getorgan(/obj/item/organ/ears/cat)
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
// To prevent golem subtypes from overwhelming the odds when random species
|
||||
// changes, only the Random Golem type can be chosen
|
||||
limbs_id = "golem"
|
||||
fixed_mut_color = "aaa"
|
||||
fixed_mut_color = "#aaaaaa"
|
||||
var/info_text = "As an <span class='danger'>Iron Golem</span>, you don't have any special traits."
|
||||
var/random_eligible = TRUE //If false, the golem subtype can't be made through golem mutation toxin
|
||||
|
||||
@@ -82,7 +82,7 @@
|
||||
id = SPECIES_GOLEM_ADAMANTINE
|
||||
meat = /obj/item/food/meat/slab/human/mutant/golem/adamantine
|
||||
mutant_organs = list(/obj/item/organ/adamantine_resonator, /obj/item/organ/vocal_cords/adamantine)
|
||||
fixed_mut_color = "4ed"
|
||||
fixed_mut_color = "#44eedd"
|
||||
info_text = "As an <span class='danger'>Adamantine Golem</span>, you possess special vocal cords allowing you to \"resonate\" messages to all golems. Your unique mineral makeup makes you immune to most types of magic."
|
||||
prefix = "Adamantine"
|
||||
special_names = null
|
||||
@@ -99,7 +99,7 @@
|
||||
/datum/species/golem/plasma
|
||||
name = "Plasma Golem"
|
||||
id = SPECIES_GOLEM_PLASMA
|
||||
fixed_mut_color = "a3d"
|
||||
fixed_mut_color = "#aa33dd"
|
||||
meat = /obj/item/stack/ore/plasma
|
||||
//Can burn and takes damage from heat
|
||||
//no RESISTHEAT, NOFIRE
|
||||
@@ -171,7 +171,7 @@
|
||||
/datum/species/golem/diamond
|
||||
name = "Diamond Golem"
|
||||
id = SPECIES_GOLEM_DIAMOND
|
||||
fixed_mut_color = "0ff"
|
||||
fixed_mut_color = "#00ffff"
|
||||
armor = 70 //up from 55
|
||||
meat = /obj/item/stack/ore/diamond
|
||||
info_text = "As a <span class='danger'>Diamond Golem</span>, you are more resistant than the average golem."
|
||||
@@ -182,7 +182,7 @@
|
||||
/datum/species/golem/gold
|
||||
name = "Gold Golem"
|
||||
id = SPECIES_GOLEM_GOLD
|
||||
fixed_mut_color = "cc0"
|
||||
fixed_mut_color = "#cccc00"
|
||||
speedmod = 1
|
||||
armor = 25 //down from 55
|
||||
meat = /obj/item/stack/ore/gold
|
||||
@@ -194,7 +194,7 @@
|
||||
/datum/species/golem/silver
|
||||
name = "Silver Golem"
|
||||
id = SPECIES_GOLEM_SILVER
|
||||
fixed_mut_color = "ddd"
|
||||
fixed_mut_color = "#dddddd"
|
||||
punchstunthreshold = 9 //60% chance, from 40%
|
||||
meat = /obj/item/stack/ore/silver
|
||||
info_text = "As a <span class='danger'>Silver Golem</span>, your attacks have a higher chance of stunning. Being made of silver, your body is immune to most types of magic."
|
||||
@@ -213,7 +213,7 @@
|
||||
/datum/species/golem/plasteel
|
||||
name = "Plasteel Golem"
|
||||
id = SPECIES_GOLEM_PLASTEEL
|
||||
fixed_mut_color = "bbb"
|
||||
fixed_mut_color = "#bbbbbb"
|
||||
stunmod = 0.4
|
||||
punchdamagelow = 12
|
||||
punchdamagehigh = 21
|
||||
@@ -242,7 +242,7 @@
|
||||
/datum/species/golem/titanium
|
||||
name = "Titanium Golem"
|
||||
id = SPECIES_GOLEM_TITANIUM
|
||||
fixed_mut_color = "fff"
|
||||
fixed_mut_color = "#ffffff"
|
||||
meat = /obj/item/stack/ore/titanium
|
||||
info_text = "As a <span class='danger'>Titanium Golem</span>, you are immune to ash storms, and slightly more resistant to burn damage."
|
||||
burnmod = 0.9
|
||||
@@ -261,7 +261,7 @@
|
||||
/datum/species/golem/plastitanium
|
||||
name = "Plastitanium Golem"
|
||||
id = SPECIES_GOLEM_PLASTITANIUM
|
||||
fixed_mut_color = "888"
|
||||
fixed_mut_color = "#888888"
|
||||
meat = /obj/item/stack/ore/titanium
|
||||
info_text = "As a <span class='danger'>Plastitanium Golem</span>, you are immune to both ash storms and lava, and slightly more resistant to burn damage."
|
||||
burnmod = 0.8
|
||||
@@ -282,7 +282,7 @@
|
||||
/datum/species/golem/alloy
|
||||
name = "Alien Alloy Golem"
|
||||
id = SPECIES_GOLEM_ALIEN
|
||||
fixed_mut_color = "333"
|
||||
fixed_mut_color = "#333333"
|
||||
meat = /obj/item/stack/sheet/mineral/abductor
|
||||
mutanttongue = /obj/item/organ/tongue/abductor
|
||||
speedmod = 1 //faster
|
||||
@@ -302,7 +302,7 @@
|
||||
/datum/species/golem/wood
|
||||
name = "Wood Golem"
|
||||
id = SPECIES_GOLEM_WOOD
|
||||
fixed_mut_color = "9E704B"
|
||||
fixed_mut_color = "#9E704B"
|
||||
meat = /obj/item/stack/sheet/mineral/wood
|
||||
//Can burn and take damage from heat
|
||||
inherent_traits = list(
|
||||
@@ -357,7 +357,7 @@
|
||||
/datum/species/golem/uranium
|
||||
name = "Uranium Golem"
|
||||
id = SPECIES_GOLEM_URANIUM
|
||||
fixed_mut_color = "7f0"
|
||||
fixed_mut_color = "#77ff00"
|
||||
meat = /obj/item/stack/ore/uranium
|
||||
info_text = "As an <span class='danger'>Uranium Golem</span>, your very touch burns and irradiates organic lifeforms. You don't hit as hard as most golems, but you are far more durable against blunt force trauma."
|
||||
attack_verb = "burn"
|
||||
@@ -408,7 +408,7 @@
|
||||
/datum/species/golem/sand
|
||||
name = "Sand Golem"
|
||||
id = SPECIES_GOLEM_SAND
|
||||
fixed_mut_color = "ffdc8f"
|
||||
fixed_mut_color = "#ffdc8f"
|
||||
meat = /obj/item/stack/ore/glass //this is sand
|
||||
armor = 0
|
||||
burnmod = 3 //melts easily
|
||||
@@ -439,7 +439,7 @@
|
||||
/datum/species/golem/glass
|
||||
name = "Glass Golem"
|
||||
id = SPECIES_GOLEM_GLASS
|
||||
fixed_mut_color = "5a96b4aa" //transparent body
|
||||
fixed_mut_color = "#5a96b4aa" //transparent body
|
||||
meat = /obj/item/shard
|
||||
armor = 0
|
||||
brutemod = 3 //very fragile
|
||||
@@ -476,7 +476,7 @@
|
||||
/datum/species/golem/bluespace
|
||||
name = "Bluespace Golem"
|
||||
id = SPECIES_GOLEM_BLUESPACE
|
||||
fixed_mut_color = "33f"
|
||||
fixed_mut_color = "#3333ff"
|
||||
meat = /obj/item/stack/ore/bluespace_crystal
|
||||
info_text = "As a <span class='danger'>Bluespace Golem</span>, you are spatially unstable: You will teleport when hit, and you can teleport manually at a long distance."
|
||||
attack_verb = "bluespace punch"
|
||||
@@ -571,7 +571,7 @@
|
||||
/datum/species/golem/bananium
|
||||
name = "Bananium Golem"
|
||||
id = SPECIES_GOLEM_BANANIUM
|
||||
fixed_mut_color = "ff0"
|
||||
fixed_mut_color = "#ffff00"
|
||||
say_mod = "honks"
|
||||
inherent_traits = list(
|
||||
TRAIT_ADVANCEDTOOLUSER,
|
||||
@@ -899,7 +899,7 @@
|
||||
id = SPECIES_GOLEM_BRONZE
|
||||
prefix = "Bronze"
|
||||
special_names = list("Bell")
|
||||
fixed_mut_color = "cd7f32"
|
||||
fixed_mut_color = "#cd7f32"
|
||||
info_text = "As a <span class='danger'>Bronze Golem</span>, you are very resistant to loud noises, and make loud noises if something hard hits you, however this ability does hurt your hearing."
|
||||
special_step_sounds = list('sound/machines/clockcult/integration_cog_install.ogg', 'sound/magic/clockwork/fellowship_armory.ogg' )
|
||||
mutantears = /obj/item/organ/ears/bronze
|
||||
@@ -1043,7 +1043,7 @@
|
||||
TRAIT_STRONG_GRABBER,
|
||||
)
|
||||
prefix = "Leather"
|
||||
fixed_mut_color = "624a2e"
|
||||
fixed_mut_color = "#624a2e"
|
||||
info_text = "As a <span class='danger'>Leather Golem</span>, you are flammable, but you can grab things with incredible ease, allowing all your grabs to start at a strong level."
|
||||
grab_sound = 'sound/weapons/whipgrab.ogg'
|
||||
attack_sound = 'sound/weapons/whip.ogg'
|
||||
@@ -1252,7 +1252,7 @@
|
||||
/datum/species/golem/mhydrogen
|
||||
name = "Metallic Hydrogen Golem"
|
||||
id = SPECIES_GOLEM_HYDROGEN
|
||||
fixed_mut_color = "ddd"
|
||||
fixed_mut_color = "#dddddd"
|
||||
info_text = "As a <span class='danger'>Metallic Hydrogen Golem</span>, you were forged in the highest pressures and the highest heats. Your unique mineral makeup makes you immune to most types of damages."
|
||||
prefix = "Metallic Hydrogen"
|
||||
special_names = null
|
||||
|
||||
@@ -18,5 +18,5 @@
|
||||
|
||||
/datum/species/human/prepare_human_for_preview(mob/living/carbon/human/human)
|
||||
human.hairstyle = "Business Hair"
|
||||
human.hair_color = "b96" // brown
|
||||
human.hair_color = "#bb9966" // brown
|
||||
human.update_hair()
|
||||
|
||||
@@ -241,7 +241,7 @@
|
||||
|
||||
spare.underwear = "Nude"
|
||||
H.dna.transfer_identity(spare, transfer_SE=1)
|
||||
spare.dna.features["mcolor"] = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F")
|
||||
spare.dna.features["mcolor"] = "#[pick("7F", "FF")][pick("7F", "FF")][pick("7F", "FF")]"
|
||||
spare.dna.update_uf_block(DNA_MUTANT_COLOR_BLOCK)
|
||||
spare.real_name = spare.dna.real_name
|
||||
spare.name = spare.dna.real_name
|
||||
@@ -308,8 +308,7 @@
|
||||
continue
|
||||
|
||||
var/list/L = list()
|
||||
// HTML colors need a # prefix
|
||||
L["htmlcolor"] = "#[body.dna.features["mcolor"]]"
|
||||
L["htmlcolor"] = body.dna.features["mcolor"]
|
||||
L["area"] = get_area_name(body, TRUE)
|
||||
var/stat = "error"
|
||||
switch(body.stat)
|
||||
|
||||
@@ -169,8 +169,8 @@ Lizard subspecies: SILVER SCALED
|
||||
var/mob/living/carbon/human/new_silverscale = C
|
||||
old_mutcolor = C.dna.features["mcolor"]
|
||||
old_eyecolor = new_silverscale.eye_color
|
||||
new_silverscale.dna.features["mcolor"] = "eeeeee"
|
||||
new_silverscale.eye_color = "0000a0"
|
||||
new_silverscale.dna.features["mcolor"] = "#eeeeee"
|
||||
new_silverscale.eye_color = "#0000a0"
|
||||
..()
|
||||
new_silverscale.add_filter("silver_glint", 2, list("type" = "outline", "color" = "#ffffff63", "size" = 2))
|
||||
|
||||
|
||||
@@ -4,8 +4,8 @@
|
||||
mutant_bodyparts = list("caps" = "Round")
|
||||
changesource_flags = MIRROR_BADMIN | WABBAJACK | ERT_SPAWN
|
||||
|
||||
fixed_mut_color = "DBBF92"
|
||||
hair_color = "FF4B19" //cap color, spot color uses eye color
|
||||
fixed_mut_color = "#DBBF92"
|
||||
hair_color = "#FF4B19" //cap color, spot color uses eye color
|
||||
nojumpsuit = TRUE
|
||||
|
||||
say_mod = "poofs" //what does a mushroom sound like
|
||||
|
||||
@@ -2383,8 +2383,8 @@ All effects don't start immediately, but rather get worse over time; the rate is
|
||||
if(DT_PROB(10, delta_time) && istype(metabolizer))
|
||||
metabolizer.age += 1
|
||||
if(metabolizer.age > 70)
|
||||
metabolizer.facial_hair_color = "ccc"
|
||||
metabolizer.hair_color = "ccc"
|
||||
metabolizer.facial_hair_color = "#cccccc"
|
||||
metabolizer.hair_color = "#cccccc"
|
||||
metabolizer.update_hair()
|
||||
if(metabolizer.age > 100)
|
||||
metabolizer.become_nearsighted(type)
|
||||
|
||||
@@ -1075,8 +1075,8 @@
|
||||
return
|
||||
|
||||
var/mob/living/carbon/human/exposed_human = exposed_mob
|
||||
exposed_human.hair_color = "C2F"
|
||||
exposed_human.facial_hair_color = "C2F"
|
||||
exposed_human.hair_color = "#CC22FF"
|
||||
exposed_human.facial_hair_color = "#CC22FF"
|
||||
exposed_human.update_hair()
|
||||
// SKYRAT EDIT ADDITION BEGIN
|
||||
exposed_human.update_mutant_bodyparts(force_update=TRUE)
|
||||
@@ -1446,8 +1446,8 @@
|
||||
. = ..()
|
||||
if(!(methods & (TOUCH|VAPOR)) || !ishuman(exposed_human) || (reac_volume < 0.5))
|
||||
return
|
||||
exposed_human.hair_color = "92f"
|
||||
exposed_human.facial_hair_color = "92f"
|
||||
exposed_human.hair_color = "#9922ff"
|
||||
exposed_human.facial_hair_color = "#9922ff"
|
||||
exposed_human.update_hair()
|
||||
|
||||
/datum/reagent/medicine/polypyr/overdose_process(mob/living/M, delta_time, times_fired)
|
||||
|
||||
@@ -494,8 +494,8 @@
|
||||
if(!HAS_TRAIT(N, TRAIT_BALD))
|
||||
N.hairstyle = "Spiky"
|
||||
N.facial_hairstyle = "Shaved"
|
||||
N.facial_hair_color = "000"
|
||||
N.hair_color = "000"
|
||||
N.facial_hair_color = "#000000"
|
||||
N.hair_color = "#000000"
|
||||
if(!(HAIR in N.dna.species.species_traits)) //No hair? No problem!
|
||||
N.dna.species.species_traits += HAIR
|
||||
if(N.dna.species.use_skintones)
|
||||
@@ -2098,7 +2098,7 @@
|
||||
name = "Quantum Hair Dye"
|
||||
description = "Has a high chance of making you look like a mad scientist."
|
||||
reagent_state = LIQUID
|
||||
var/list/potential_colors = list("0ad","a0f","f73","d14","d14","0b5","0ad","f73","fc2","084","05e","d22","fa0") // fucking hair code
|
||||
var/list/potential_colors = list("#00aadd","#aa00ff","#ff7733","#dd1144","#dd1144","#00bb55","#00aadd","#ff7733","#ffcc22","#008844","#0055ee","#dd2222","#ffaa00") // fucking hair code
|
||||
color = "#C8A5DC"
|
||||
taste_description = "sourness"
|
||||
penetrates_skin = NONE
|
||||
|
||||
@@ -605,7 +605,7 @@
|
||||
/obj/item/slime_extract/rainbow/activate(mob/living/carbon/human/user, datum/species/jelly/luminescent/species, activation_type)
|
||||
switch(activation_type)
|
||||
if(SLIME_ACTIVATE_MINOR)
|
||||
user.dna.features["mcolor"] = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F")
|
||||
user.dna.features["mcolor"] = "#[pick("7F", "FF")][pick("7F", "FF")][pick("7F", "FF")]"
|
||||
user.dna.update_uf_block(DNA_MUTANT_COLOR_BLOCK)
|
||||
user.updateappearance(mutcolor_update=1)
|
||||
species.update_glow(user)
|
||||
|
||||
@@ -850,7 +850,7 @@
|
||||
species_color = ""
|
||||
|
||||
if(!dropping_limb && human_owner.dna.check_mutation(HULK))
|
||||
mutation_color = "00aa00"
|
||||
mutation_color = "#00aa00"
|
||||
else
|
||||
mutation_color = ""
|
||||
|
||||
@@ -962,9 +962,9 @@
|
||||
if(should_draw_greyscale)
|
||||
var/draw_color = mutation_color || species_color || (skin_tone && skintone2hex(skin_tone))
|
||||
if(draw_color)
|
||||
limb.color = "#[draw_color]"
|
||||
limb.color = draw_color
|
||||
if(aux_zone)
|
||||
aux.color = "#[draw_color]"
|
||||
aux.color = draw_color
|
||||
if(blocks_emissive)
|
||||
var/mutable_appearance/limb_em_block = emissive_blocker(limb.icon, limb.icon_state, alpha = limb.alpha)
|
||||
limb_em_block.dir = image_dir
|
||||
@@ -974,11 +974,19 @@
|
||||
var/mutable_appearance/aux_em_block = emissive_blocker(aux.icon, aux.icon_state, alpha = aux.alpha)
|
||||
aux_em_block.dir = image_dir
|
||||
aux.overlays += aux_em_block
|
||||
|
||||
|
||||
//Draw external organs like horns and frills
|
||||
for(var/obj/item/organ/external/external_organ in external_organs)
|
||||
if(!dropped && !external_organ.can_draw_on_bodypart(owner))
|
||||
continue
|
||||
//Some externals have multiple layers for background, foreground and between
|
||||
for(var/external_layer in external_organ.all_layers)
|
||||
if(external_organ.layers & external_layer)
|
||||
external_organ.get_overlays(., image_dir, external_organ.bitflag_to_layer(external_layer), icon_gender, draw_color)
|
||||
*/
|
||||
//SKYRAT EDIT REMOVAL END
|
||||
|
||||
|
||||
|
||||
/obj/item/bodypart/deconstruct(disassembled = TRUE)
|
||||
drop_organs()
|
||||
qdel(src)
|
||||
|
||||
@@ -27,11 +27,11 @@
|
||||
//Limb appearance info:
|
||||
var/real_name = "" //Replacement name
|
||||
//Hair colour and style
|
||||
var/hair_color = "000"
|
||||
var/hair_color = "#000000"
|
||||
var/hairstyle = "Bald"
|
||||
var/hair_alpha = 255
|
||||
//Facial hair colour and style
|
||||
var/facial_hair_color = "000"
|
||||
var/facial_hair_color = "#000000"
|
||||
var/facial_hairstyle = "Shaved"
|
||||
//Eye Colouring
|
||||
|
||||
@@ -159,7 +159,7 @@
|
||||
if(owner_species.hair_color == "mutcolor")
|
||||
facial_hair_color = human_head_owner.dna.features["mcolor"]
|
||||
else if(hair_color == "fixedmutcolor")
|
||||
facial_hair_color = "#[owner_species.fixed_mut_color]"
|
||||
facial_hair_color = owner_species.fixed_mut_color
|
||||
else
|
||||
facial_hair_color = owner_species.hair_color
|
||||
else
|
||||
@@ -167,7 +167,7 @@
|
||||
hair_alpha = owner_species.hair_alpha
|
||||
else
|
||||
facial_hairstyle = "Shaved"
|
||||
facial_hair_color = "000"
|
||||
facial_hair_color = "#000000"
|
||||
hair_alpha = 255
|
||||
//Hair
|
||||
if(human_head_owner.hairstyle && (HAIR in owner_species.species_traits))
|
||||
@@ -176,7 +176,7 @@
|
||||
if(owner_species.hair_color == "mutcolor")
|
||||
hair_color = human_head_owner.dna.features["mcolor"]
|
||||
else if(hair_color == "fixedmutcolor")
|
||||
hair_color = "#[owner_species.fixed_mut_color]"
|
||||
hair_color = owner_species.fixed_mut_color
|
||||
else
|
||||
hair_color = owner_species.hair_color
|
||||
else
|
||||
@@ -184,7 +184,7 @@
|
||||
hair_alpha = owner_species.hair_alpha
|
||||
else
|
||||
hairstyle = "Bald"
|
||||
hair_color = "000"
|
||||
hair_color = "#000000"
|
||||
hair_alpha = initial(hair_alpha)
|
||||
// lipstick
|
||||
if(human_head_owner.lip_style && (LIPS in owner_species.species_traits))
|
||||
@@ -216,7 +216,7 @@
|
||||
var/datum/sprite_accessory/sprite = GLOB.facial_hairstyles_list[facial_hairstyle]
|
||||
if(sprite)
|
||||
var/image/facial_overlay = image(sprite.icon, "[sprite.icon_state]", -HAIR_LAYER, SOUTH)
|
||||
facial_overlay.color = "#" + facial_hair_color
|
||||
facial_overlay.color = facial_hair_color
|
||||
facial_overlay.alpha = hair_alpha
|
||||
. += facial_overlay
|
||||
|
||||
@@ -237,7 +237,7 @@
|
||||
var/datum/sprite_accessory/sprite2 = GLOB.hairstyles_list[hairstyle]
|
||||
if(sprite2)
|
||||
var/image/hair_overlay = image(sprite2.icon, "[sprite2.icon_state]", -HAIR_LAYER, SOUTH)
|
||||
hair_overlay.color = "#" + hair_color
|
||||
hair_overlay.color = hair_color
|
||||
hair_overlay.alpha = hair_alpha
|
||||
. += hair_overlay
|
||||
|
||||
@@ -255,7 +255,7 @@
|
||||
eyes_overlay.icon_state = eyes.eye_icon_state
|
||||
|
||||
if(eyes.eye_color)
|
||||
eyes_overlay.color = "#" + eyes.eye_color
|
||||
eyes_overlay.color = eyes.eye_color
|
||||
|
||||
/obj/item/bodypart/head/monkey
|
||||
icon = 'icons/mob/animal_parts.dmi'
|
||||
|
||||
@@ -190,31 +190,31 @@
|
||||
. = 0
|
||||
switch(skin_tone)
|
||||
if("caucasian1")
|
||||
. = "ffe0d1"
|
||||
. = "#ffe0d1"
|
||||
if("caucasian2")
|
||||
. = "fcccb3"
|
||||
. = "#fcccb3"
|
||||
if("caucasian3")
|
||||
. = "e8b59b"
|
||||
. = "#e8b59b"
|
||||
if("latino")
|
||||
. = "d9ae96"
|
||||
. = "#d9ae96"
|
||||
if("mediterranean")
|
||||
. = "c79b8b"
|
||||
. = "#c79b8b"
|
||||
if("asian1")
|
||||
. = "ffdeb3"
|
||||
. = "#ffdeb3"
|
||||
if("asian2")
|
||||
. = "e3ba84"
|
||||
. = "#e3ba84"
|
||||
if("arab")
|
||||
. = "c4915e"
|
||||
. = "#c4915e"
|
||||
if("indian")
|
||||
. = "b87840"
|
||||
. = "#b87840"
|
||||
if("african1")
|
||||
. = "754523"
|
||||
. = "#754523"
|
||||
if("african2")
|
||||
. = "471c18"
|
||||
. = "#471c18"
|
||||
if("albino")
|
||||
. = "fff4e6"
|
||||
. = "#fff4e6"
|
||||
if("orange")
|
||||
. = "ffc905"
|
||||
. = "#ffc905"
|
||||
|
||||
/mob/living/carbon/proc/Digitigrade_Leg_Swap(swap_back)
|
||||
var/body_plan_changed = FALSE
|
||||
|
||||
@@ -84,7 +84,7 @@
|
||||
..()
|
||||
if(istype(tail_owner))
|
||||
tail_owner.dna.species.mutant_bodyparts -= "tail_lizard"
|
||||
color = "#" + tail_owner.dna.features["mcolor"]
|
||||
color = tail_owner.dna.features["mcolor"]
|
||||
tail_type = tail_owner.dna.features["tail_lizard"]
|
||||
spines = tail_owner.dna.features["spines"]
|
||||
tail_owner.update_body()
|
||||
|
||||
Reference in New Issue
Block a user