diff --git a/code/datums/datacore.dm b/code/datums/datacore.dm index 9e76a6af56..0045dabec9 100644 --- a/code/datums/datacore.dm +++ b/code/datums/datacore.dm @@ -182,7 +182,8 @@ proc/get_id_photo(var/mob/living/carbon/human/H) var/icon/eyes_s = new/icon("icon" = 'icons/mob/human_face.dmi', "icon_state" = H.species ? H.species.eyes : "eyes_s") - eyes_s.Blend(rgb(H.r_eyes, H.g_eyes, H.b_eyes), ICON_ADD) + if (H.species.flags & HAS_EYE_COLOR) + eyes_s.Blend(rgb(H.r_eyes, H.g_eyes, H.b_eyes), ICON_ADD) var/datum/sprite_accessory/hair_style = hair_styles_list[H.h_style] if(hair_style) diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 5268a27df6..97b7a8739f 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -209,7 +209,7 @@ primitive = /mob/living/carbon/monkey unarmed_type = /datum/unarmed_attack/punch - flags = HAS_SKIN_TONE | HAS_LIPS | HAS_UNDERWEAR + flags = HAS_SKIN_TONE | HAS_LIPS | HAS_UNDERWEAR | HAS_EYE_COLOR //If you wanted to add a species-level ability: /*abilities = list(/client/proc/test_ability)*/ @@ -235,7 +235,7 @@ heat_level_2 = 480 //Default 400 heat_level_3 = 1100 //Default 1000 - flags = IS_WHITELISTED | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR + flags = IS_WHITELISTED | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR flesh_color = "#34AF10" @@ -263,7 +263,7 @@ primitive = /mob/living/carbon/monkey/tajara - flags = IS_WHITELISTED | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR + flags = IS_WHITELISTED | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR | HAS_EYE_COLOR flesh_color = "#AFA59E" base_color = "#333333" @@ -273,6 +273,7 @@ name_plural = "Skrell" icobase = 'icons/mob/human_races/r_skrell.dmi' deform = 'icons/mob/human_races/r_def_skrell.dmi' + eyes = "skrell_eyes_s" language = "Skrellian" primitive = /mob/living/carbon/monkey/skrell unarmed_type = /datum/unarmed_attack/punch @@ -280,6 +281,7 @@ flags = IS_WHITELISTED | HAS_LIPS | HAS_UNDERWEAR | HAS_SKIN_COLOR flesh_color = "#8CD7A3" + blood_color = "#1D2CBF" reagent_tag = IS_SKRELL @@ -310,7 +312,7 @@ poison_type = "oxygen" insulated = 1 - flags = NO_SCAN + flags = NO_SCAN | HAS_EYE_COLOR blood_color = "#2299FC" flesh_color = "#808D11" @@ -356,7 +358,7 @@ breath_type = "nitrogen" poison_type = "oxygen" - flags = NO_SCAN | NO_BLOOD | NO_PAIN + flags = NO_SCAN | NO_BLOOD | NO_PAIN | HAS_EYE_COLOR blood_color = "#2299FC" flesh_color = "#808D11" @@ -406,7 +408,7 @@ body_temperature = T0C + 15 //make the plant people have a bit lower body temperature, why not - flags = IS_WHITELISTED | NO_BREATHE | NO_SCAN | IS_PLANT | NO_BLOOD | NO_PAIN | NO_SLIP + flags = IS_WHITELISTED | NO_BREATHE | NO_SCAN | IS_PLANT | NO_BLOOD | NO_PAIN | NO_SLIP | HAS_EYE_COLOR blood_color = "#004400" flesh_color = "#907E4A" diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 9cd620946c..2e93686957 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -369,7 +369,8 @@ proc/get_damage_icon_part(damage_state, body_part) //Eyes if(!skeleton) var/icon/eyes = new/icon('icons/mob/human_face.dmi', species.eyes) - eyes.Blend(rgb(r_eyes, g_eyes, b_eyes), ICON_ADD) + if (species.flags & HAS_EYE_COLOR) + eyes.Blend(rgb(r_eyes, g_eyes, b_eyes), ICON_ADD) stand_icon.Blend(eyes, ICON_OVERLAY) //Mouth (lipstick!) diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm index 48ba98ac29..33ecd0314f 100644 --- a/code/modules/mob/new_player/preferences_setup.dm +++ b/code/modules/mob/new_player/preferences_setup.dm @@ -224,7 +224,8 @@ datum/preferences preview_icon.Blend(rgb(-s_tone, -s_tone, -s_tone), ICON_SUBTRACT) var/icon/eyes_s = new/icon("icon" = 'icons/mob/human_face.dmi', "icon_state" = current_species ? current_species.eyes : "eyes_s") - eyes_s.Blend(rgb(r_eyes, g_eyes, b_eyes), ICON_ADD) + if ((current_species && (current_species.flags & HAS_EYE_COLOR))) + eyes_s.Blend(rgb(r_eyes, g_eyes, b_eyes), ICON_ADD) var/datum/sprite_accessory/hair_style = hair_styles_list[h_style] if(hair_style) diff --git a/code/modules/mob/new_player/sprite_accessories.dm b/code/modules/mob/new_player/sprite_accessories.dm index 3b231b751e..4a9f5509ca 100644 --- a/code/modules/mob/new_player/sprite_accessories.dm +++ b/code/modules/mob/new_player/sprite_accessories.dm @@ -609,30 +609,6 @@ species_allowed = list("Skrell") gender = FEMALE - skr_gold_m - name = "Gold plated Skrell Male Tentacles" - icon_state = "skrell_goldhair_m" - species_allowed = list("Skrell") - gender = MALE - - skr_gold_f - name = "Gold chained Skrell Female Tentacles" - icon_state = "skrell_goldhair_f" - species_allowed = list("Skrell") - gender = FEMALE - - skr_clothtentacle_m - name = "Cloth draped Skrell Male Tentacles" - icon_state = "skrell_clothhair_m" - species_allowed = list("Skrell") - gender = MALE - - skr_clothtentacle_f - name = "Cloth draped Skrell Female Tentacles" - icon_state = "skrell_clothhair_f" - species_allowed = list("Skrell") - gender = FEMALE - taj_ears name = "Tajaran Ears" icon_state = "ears_plain" diff --git a/code/setup.dm b/code/setup.dm index 035f2d679f..766563a338 100644 --- a/code/setup.dm +++ b/code/setup.dm @@ -754,6 +754,7 @@ var/list/RESTRICTED_CAMERA_NETWORKS = list( //Those networks can only be accesse #define IS_PLANT 1024 #define IS_WHITELISTED 2048 #define IS_SYNTHETIC 4096 +#define HAS_EYE_COLOR 8192 //Language flags. #define WHITELISTED 1 // Language is available if the speaker is whitelisted. diff --git a/icons/mob/human_face.dmi b/icons/mob/human_face.dmi index 3a3a4fb390..d334efb02a 100644 Binary files a/icons/mob/human_face.dmi and b/icons/mob/human_face.dmi differ diff --git a/icons/mob/human_races/r_skrell.dmi b/icons/mob/human_races/r_skrell.dmi index b2156aefcf..913474d3b6 100644 Binary files a/icons/mob/human_races/r_skrell.dmi and b/icons/mob/human_races/r_skrell.dmi differ