diff --git a/code/modules/DetectiveWork/footprints_and_rag.dm b/code/modules/DetectiveWork/footprints_and_rag.dm index 5f8918c9074..7671dc543aa 100644 --- a/code/modules/DetectiveWork/footprints_and_rag.dm +++ b/code/modules/DetectiveWork/footprints_and_rag.dm @@ -10,24 +10,6 @@ var/transfer_blood = 0 var/mob/living/carbon/human/bloody_hands_mob -proc/blood_incompatible(donor,receiver) - if(!donor || !receiver) return 0 - var - donor_antigen = copytext(donor,1,lentext(donor)) - receiver_antigen = copytext(receiver,1,lentext(receiver)) - donor_rh = (findtext(donor,"+")>0) - receiver_rh = (findtext(receiver,"+")>0) - if(donor_rh && !receiver_rh) return 1 - switch(receiver_antigen) - if("A") - if(donor_antigen != "A" && donor_antigen != "O") return 1 - if("B") - if(donor_antigen != "B" && donor_antigen != "O") return 1 - if("O") - if(donor_antigen != "O") return 1 - //AB is a universal receiver. - return 0 - /obj/item/weapon/reagent_containers/glass/rag name = "damp rag" diff --git a/code/modules/organs/blood.dm b/code/modules/organs/blood.dm index 6e3ac4feda4..882582e4a35 100644 --- a/code/modules/organs/blood.dm +++ b/code/modules/organs/blood.dm @@ -218,4 +218,22 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 for(var/datum/reagent/blood/D in container.reagent_list) if(D.data["donor"] == src) return D - return res \ No newline at end of file + return res + +proc/blood_incompatible(donor,receiver) + if(!donor || !receiver) return 0 + var + donor_antigen = copytext(donor,1,lentext(donor)) + receiver_antigen = copytext(receiver,1,lentext(receiver)) + donor_rh = (findtext(donor,"+")>0) + receiver_rh = (findtext(receiver,"+")>0) + if(donor_rh && !receiver_rh) return 1 + switch(receiver_antigen) + if("A") + if(donor_antigen != "A" && donor_antigen != "O") return 1 + if("B") + if(donor_antigen != "B" && donor_antigen != "O") return 1 + if("O") + if(donor_antigen != "O") return 1 + //AB is a universal receiver. + return 0 \ No newline at end of file