diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index 8b5e1edd91..7e49882979 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -381,8 +381,8 @@ GENETICS SCANNER else if (S.mutantstomach != initial(S.mutantstomach)) mutant = TRUE - msg += "\tReported Species: [H.dna.custom_species ? H.dna.custom_species : S.name]\n" - msg += "\tBase Species: [S.name]\n" + msg += "\tReported Species: [H.spec_trait_examine_font()][H.dna.custom_species ? H.dna.custom_species : S.name]\n" + msg += "\tBase Species: [H.spec_trait_examine_font()][S.name]\n" if(mutant) msg += "\tSubject has mutations present.\n" msg += "\tBody temperature: [round(M.bodytemperature-T0C,0.1)] °C ([round(M.bodytemperature*1.8-459.67,0.1)] °F)\n" diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index aa14fe6013..f363aecf84 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -28,7 +28,7 @@ if(skipface || get_visible_name() == "Unknown") . += "You can't make out what species they are." else - . += "[t_He] [t_is] a [dna.custom_species ? dna.custom_species : dna.species.name]!" + . += "[t_He] [t_is] a [spec_trait_examine_font()][dna.custom_species ? dna.custom_species : dna.species.name]!" //uniform if(w_uniform && !(SLOT_W_UNIFORM in obscured)) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index f636ae76ab..41ac05b8e2 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -1083,6 +1083,30 @@ . = ..() set_species(race) +/** + * # `spec_trait_examine_font()` + * + * This gets a humanoid's special examine font, which is used to color their species name during examine / health analyzing. + * The first of these that applies is returned. + * Returns: + * * Metallic font if robotic + * * Cyan if a toxinlover + * * Purple if plasmaperson + * * Rock / Brownish if a golem + * * Green if none of the others apply (aka, generic organic) +*/ +/mob/living/carbon/human/proc/spec_trait_examine_font() + if(HAS_TRAIT(src, TRAIT_ROBOTIC_ORGANISM)) + return "" + if(HAS_TRAIT(src, TRAIT_TOXINLOVER)) + return "" + if(isplasmaman(src)) + return "" + + /mob/living/carbon/human/get_tooltip_data() var/t_He = p_they(TRUE) var/t_is = p_are() @@ -1091,7 +1115,7 @@ if(skipface || get_visible_name() == "Unknown") . += "You can't make out what species they are." else - . += "[t_He] [t_is] a [dna.custom_species ? dna.custom_species : dna.species.name]" + . += "[t_He] [t_is] a [spec_trait_examine_font()][dna.custom_species ? dna.custom_species : dna.species.name]" SEND_SIGNAL(src, COMSIG_PARENT_EXAMINE, usr, .) /mob/living/carbon/human/species/abductor