From 49a2f3cc63efe581804fee43cbb5953ef13dff33 Mon Sep 17 00:00:00 2001 From: Poojawa Date: Sun, 12 May 2019 06:31:02 -0500 Subject: [PATCH] I don't even fucking know anymore --- .../effects/decals/cleanable/humans.dm | 19 ++++++++++++------- code/modules/mob/living/blood.dm | 6 ------ 2 files changed, 12 insertions(+), 13 deletions(-) diff --git a/code/game/objects/effects/decals/cleanable/humans.dm b/code/game/objects/effects/decals/cleanable/humans.dm index d106b0b3d3..7a7475d072 100644 --- a/code/game/objects/effects/decals/cleanable/humans.dm +++ b/code/game/objects/effects/decals/cleanable/humans.dm @@ -8,7 +8,8 @@ color = BLOOD_COLOR_HUMAN //default so we don't have white splotches everywhere. bloodiness = BLOOD_AMOUNT_PER_DECAL -/obj/effect/decal/cleanable/blood/old/Initialize(mapload, list/datum/disease/diseases) +/obj/effect/decal/cleanable/blood/Initialize(mapload, list/datum/disease/diseases) + AddComponent(/datum/component/forensics, null,null,blood_DNA,null,blood_mix_types,blood_mix_color) . = ..() update_icon() @@ -27,9 +28,9 @@ obj/effect/decal/cleanable/blood/add_blood_DNA(list/blood_dna) update_icon() /obj/effect/decal/cleanable/blood/update_icon() - GET_COMPONENT(D, /datum/component/forensics) - if(!blood_color) - blood_color = D.blood_mix_color + GET_COMPONENT(F, /datum/component/forensics) + if(istype(F)) + F.blood_mix_color = blood_color color = blood_color /obj/effect/decal/cleanable/blood/old @@ -56,7 +57,9 @@ obj/effect/decal/cleanable/blood/add_blood_DNA(list/blood_dna) /obj/effect/decal/cleanable/trail_holder/update_icon() GET_COMPONENT(D, /datum/component/forensics) - color = D.blood_mix_color + if(istype(D) && !blood_color) + blood_color = D.blood_mix_color + color = blood_color /obj/effect/cleanable/trail_holder/Initialize() . = ..() @@ -129,12 +132,14 @@ obj/effect/decal/cleanable/blood/add_blood_DNA(list/blood_dna) if(entered_dirs & Ddir) var/image/bloodstep_overlay = GLOB.bloody_footprints_cache["entered-[print_state]-[Ddir]-[color]"] if(!bloodstep_overlay) - GLOB.bloody_footprints_cache["entered-[print_state]-[Ddir]-[color]"] = bloodstep_overlay = image(icon, "[print_state]1", dir = Ddir, color = B.blood_mix_color) + GLOB.bloody_footprints_cache["entered-[print_state]-[Ddir]-[color]"] = bloodstep_overlay = image(icon, "[print_state]1", dir = Ddir, color = blood_color) + bloodstep_overlay.Blend(blood_color, ICON_MULTIPLY) add_overlay(bloodstep_overlay) if(exited_dirs & Ddir) var/image/bloodstep_overlay = GLOB.bloody_footprints_cache["exited-[print_state]-[Ddir]-[color]"] if(!bloodstep_overlay) - GLOB.bloody_footprints_cache["exited-[print_state]-[Ddir]-[color]"] = bloodstep_overlay = image(icon, "[print_state]2", dir = Ddir, color = B.blood_mix_color) + GLOB.bloody_footprints_cache["exited-[print_state]-[Ddir]-[color]"] = bloodstep_overlay = image(icon, "[print_state]2", dir = Ddir, color = blood_color) + bloodstep_overlay.Blend(blood_color, ICON_MULTIPLY) add_overlay(bloodstep_overlay) alpha = BLOODY_FOOTPRINT_BASE_ALPHA + bloodiness diff --git a/code/modules/mob/living/blood.dm b/code/modules/mob/living/blood.dm index ba1a7b16ca..344140b00f 100644 --- a/code/modules/mob/living/blood.dm +++ b/code/modules/mob/living/blood.dm @@ -230,22 +230,16 @@ return "blood" /mob/living/carbon/get_blood_id() - to_chat(world, "carbon's get blood id called") var/mob/living/carbon/C = src if(ishuman(C)) - to_chat(world, "[C] is a [dna.species]") var/mob/living/carbon/human/H = C if(H.dna.species.exotic_blood) - to_chat(world, "[H] has [H.dna.species.exotic_blood]") return "[H.dna.species.exotic_blood]" if(dna.species.exotic_blood) - to_chat(world, "[src] apparently isn't a human. but has exotic blood, [dna.species.exotic_blood].") return dna.species.exotic_blood else if((NOBLOOD in dna.species.species_traits) || (has_trait(TRAIT_NOCLONE))) - to_chat(world, "[src] apparently isn't a human. And has no clone or no blood") return else - to_chat(world, "[src] apparently isn't a human, doesn't have snowflake blood either or something.") return "blood" // This is has more potential uses, and is probably faster than the old proc.