diff --git a/code/modules/mob/living/carbon/human/species/species.dm b/code/modules/mob/living/carbon/human/species/species.dm index 54e358e96cf..6777db2fb63 100644 --- a/code/modules/mob/living/carbon/human/species/species.dm +++ b/code/modules/mob/living/carbon/human/species/species.dm @@ -25,6 +25,7 @@ var/base_color // Used by changelings. Should also be used for icon previes.. var/tail // Name of tail state in species effects icon file. var/tail_animation // If set, the icon to obtain tail animation states from. + var/tail_hair var/race_key = 0 // Used for mob icon cache string. var/icon/icon_template // Used for mob icon generation for non-32x32 species. var/is_small diff --git a/code/modules/mob/living/carbon/human/species/station/resomi.dm b/code/modules/mob/living/carbon/human/species/station/resomi.dm index 8cde5eeb79d..5d0d41d2e13 100644 --- a/code/modules/mob/living/carbon/human/species/station/resomi.dm +++ b/code/modules/mob/living/carbon/human/species/station/resomi.dm @@ -12,6 +12,8 @@ blood_color = "#D514F7" flesh_color = "#5F7BB0" base_color = "#001144" + tail = "resomitail" + tail_hair = "feathers" icobase = 'icons/mob/human_races/r_resomi.dmi' deform = 'icons/mob/human_races/r_resomi.dmi' diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 353d4b50223..bec3833f91a 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -958,15 +958,17 @@ var/global/list/damage_icon_parts = list() update_icons() /mob/living/carbon/human/proc/get_tail_icon() - var/icon_key = "[species.race_key][r_skin][g_skin][b_skin]" - + var/icon_key = "[species.race_key][r_skin][g_skin][b_skin][r_hair][g_hair][b_hair]" var/icon/tail_icon = tail_icon_cache[icon_key] if(!tail_icon) - //generate a new one tail_icon = new/icon(icon = (species.tail_animation? species.tail_animation : 'icons/effects/species.dmi')) tail_icon.Blend(rgb(r_skin, g_skin, b_skin), ICON_ADD) - + // The following will not work with animated tails. + if(species.tail_hair) + var/icon/hair_icon = icon('icons/effects/species.dmi', "[species.tail]_[species.tail_hair]") + hair_icon.Blend(rgb(r_hair, g_hair, b_hair), ICON_ADD) + tail_icon.Blend(hair_icon, ICON_OVERLAY) tail_icon_cache[icon_key] = tail_icon return tail_icon diff --git a/icons/effects/species.dmi b/icons/effects/species.dmi index 99588092d08..8c231b9b68a 100644 Binary files a/icons/effects/species.dmi and b/icons/effects/species.dmi differ diff --git a/icons/mob/human_races/r_resomi.dmi b/icons/mob/human_races/r_resomi.dmi index bbcbe14c154..e370ec6b1c7 100644 Binary files a/icons/mob/human_races/r_resomi.dmi and b/icons/mob/human_races/r_resomi.dmi differ