diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 9b5375035e..ef5b9045ca 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -660,6 +660,8 @@ generate/load female uniform sprites matching all previously decided variables . += "-[BP.dmg_overlay_type]" if(BP.body_markings) . += "-[BP.body_markings]" + else + . += "-no_marking" if(has_trait(TRAIT_HUSK)) . += "-husk" diff --git a/code/modules/surgery/bodyparts/bodyparts.dm b/code/modules/surgery/bodyparts/bodyparts.dm index 564a0623a0..e35b8efbd0 100644 --- a/code/modules/surgery/bodyparts/bodyparts.dm +++ b/code/modules/surgery/bodyparts/bodyparts.dm @@ -48,7 +48,7 @@ var/body_markings = "" //for bodypart markings var/body_markings_icon = 'modular_citadel/icons/mob/mam_markings.dmi' var/list/markings_color = list() - var/auxmarking + var/auxmarking = "" var/list/auxmarking_color = list() var/animal_origin = null //for nonhuman bodypart (e.g. monkey) @@ -261,8 +261,6 @@ icon = DEFAULT_BODYPART_ICON_ORGANIC else if(status == BODYPART_ROBOTIC) icon = DEFAULT_BODYPART_ICON_ROBOTIC - body_markings = null - auxmarking = null if(owner) owner.updatehealth() @@ -338,20 +336,14 @@ if("mam_body_markings" in S.default_features) var/datum/sprite_accessory/Smark Smark = GLOB.mam_body_markings_list[H.dna.features["mam_body_markings"]] + body_markings_icon = Smark.icon if(H.dna.features.["mam_body_markings"] != "None") - body_markings_icon = Smark.icon body_markings = lowertext(H.dna.features.["mam_body_markings"]) auxmarking = lowertext(H.dna.features.["mam_body_markings"]) - if(MATRIXED) - markings_color = list(colorlist) else body_markings = "plain" auxmarking = "plain" - markings_color = (H.dna.features.["mcolor"]) - else - body_markings = null - auxmarking = null - markings_color = "" + markings_color = list(colorlist) if(!dropping_limb && H.dna.check_mutation(HULK)) mutation_color = "00aa00" @@ -400,7 +392,8 @@ . += image('icons/mob/dam_mob.dmi', "[dmg_overlay_type]_[body_zone]_[brutestate]0", -DAMAGE_LAYER, image_dir) if(burnstate) . += image('icons/mob/dam_mob.dmi', "[dmg_overlay_type]_[body_zone]_0[burnstate]", -DAMAGE_LAYER, image_dir) - if(body_markings && status != BODYPART_ROBOTIC) + + if(!isnull(body_markings) && status == BODYPART_ORGANIC) if(!use_digitigrade) if(BODY_ZONE_CHEST) . += image(body_markings_icon, "[body_markings]_[body_zone]_[icon_gender]", -MARKING_LAYER, image_dir) @@ -456,7 +449,7 @@ limb.icon_state = "[species_id]_[body_zone]" // Body markings - if(body_markings) + if(!isnull(body_markings)) if(species_id == "husk") marking = image('modular_citadel/icons/mob/markings_notmammals.dmi', "husk_[body_zone]", -MARKING_LAYER, image_dir) else if(species_id == "husk" && use_digitigrade) @@ -476,7 +469,7 @@ if(aux_zone) aux = image(limb.icon, "[species_id]_[aux_zone]", -aux_layer, image_dir) . += aux - if(body_markings) + if(!isnull(auxmarking)) if(species_id == "husk") auxmarking = image('modular_citadel/icons/mob/markings_notmammals.dmi', "husk_[aux_zone]", -aux_layer, image_dir) else @@ -489,17 +482,18 @@ limb.icon_state = "[body_zone]_[icon_gender]" else limb.icon_state = "[body_zone]" + if(aux_zone) - aux = image(limb.icon, "[species_id]_[aux_zone]", -aux_layer, image_dir) + aux = image(limb.icon, "[aux_zone]", -aux_layer, image_dir) . += aux - if(body_markings) + if(!isnull(auxmarking)) if(species_id == "husk") auxmarking = image('modular_citadel/icons/mob/markings_notmammals.dmi', "husk_[aux_zone]", -aux_layer, image_dir) else auxmarking = image(body_markings_icon, "[body_markings]_[aux_zone]", -aux_layer, image_dir) . += auxmarking - if(body_markings) + if(!isnull(body_markings)) if(species_id == "husk") marking = image('modular_citadel/icons/mob/markings_notmammals.dmi', "husk_[body_zone]", -MARKING_LAYER, image_dir) else if(species_id == "husk" && use_digitigrade) @@ -515,17 +509,16 @@ . += marking return - if(should_draw_greyscale) var/draw_color = mutation_color || species_color || (skin_tone && skintone2hex(skin_tone)) if(draw_color) limb.color = "#[draw_color]" if(aux_zone) aux.color = "#[draw_color]" - if(body_markings) + if(!isnull(auxmarking)) auxmarking.color = list(markings_color) - if(body_markings) + if(!isnull(body_markings)) if(species_id == "husk") marking.color = "#141414" else diff --git a/modular_citadel/icons/mob/mam_markings.dmi b/modular_citadel/icons/mob/mam_markings.dmi index 9931f52fe7..8327be6eaf 100644 Binary files a/modular_citadel/icons/mob/mam_markings.dmi and b/modular_citadel/icons/mob/mam_markings.dmi differ