From 01900cdbe6927646ac8dcc5b8825444e1ffb7b79 Mon Sep 17 00:00:00 2001 From: ChungusGamer666 <82850673+ChungusGamer666@users.noreply.github.com> Date: Sun, 18 Jun 2023 05:12:55 -0300 Subject: [PATCH] Fixes exotic blood types persisting through species change (#76114) ## About The Pull Request Fixes https://github.com/tgstation/tgstation/issues/75838 ## Why It's Good For The Game It's funny but it's a bad evil bug ## Changelog :cl: fix: Exotic blood types no longer persist through species change if the new species does not have an exotic blood type /:cl: --- code/modules/mob/living/carbon/human/species.dm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 674e48be51d..40f90f08520 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -465,8 +465,13 @@ GLOBAL_LIST_EMPTY(features_by_species) INVOKE_ASYNC(src, PROC_REF(worn_items_fit_body_check), C, TRUE) + //Assigns exotic blood type if the species has one if(exotic_bloodtype && C.dna.blood_type != exotic_bloodtype) C.dna.blood_type = exotic_bloodtype + //Otherwise, check if the previous species had an exotic bloodtype and we do not have one and assign a random blood type + //(why the fuck is blood type not tied to a fucking DNA block?) + else if(old_species.exotic_bloodtype && !exotic_bloodtype) + C.dna.blood_type = random_blood_type() if(ishuman(C)) var/mob/living/carbon/human/human = C