Fixes missing DNA info for slimes, resolves virology issues

This commit is contained in:
Poojawa
2019-08-24 04:14:47 -05:00
parent 32c7a7c3ee
commit d60ba0a207
3 changed files with 10 additions and 5 deletions
+4 -2
View File
@@ -340,12 +340,14 @@
//returns the mob's dna info as a list, to be inserted in an object's blood_DNA list
/mob/living/proc/get_blood_dna_list()
if(get_blood_id() != ("blood" || "jellyblood"))
var/blood_id = get_blood_id()
if(!(blood_id =="blood" || blood_id == "jellyblood"))
return
return list("ANIMAL DNA" = "Y-")
/mob/living/carbon/get_blood_dna_list()
if(get_blood_id() != ("blood" || "jellyblood"))
var/blood_id = get_blood_id()
if(!(blood_id =="blood" || blood_id == "jellyblood"))
return
var/list/blood_dna = list()
if(dna)
+4 -2
View File
@@ -141,7 +141,7 @@
if(iscarbon(AM))
var/mob/living/carbon/C = AM
if(blood_id == C.get_blood_id())//both mobs have the same blood substance
if(blood_id == ("blood" || "jellyblood")) //normal blood
if(blood_id == "blood" || blood_id == "jellyblood") //normal blood
if(blood_data["viruses"])
for(var/thing in blood_data["viruses"])
var/datum/disease/D = thing
@@ -163,7 +163,7 @@
return
/mob/living/carbon/get_blood_data(blood_id)
if(blood_id == ("blood" || "jellyblood")) //actual blood reagent
if(blood_id == "blood" || blood_id == "jellyblood") //actual blood reagent
var/blood_data = list()
//set the blood data
blood_data["donor"] = src
@@ -221,6 +221,8 @@
return "blood"
/mob/living/carbon/get_blood_id()
if(isjellyperson(src))
return "jellyblood"
if(dna?.species?.exotic_blood)
return dna.species.exotic_blood
else if((NOBLOOD in dna.species.species_traits) || (HAS_TRAIT(src, TRAIT_NOCLONE)))
@@ -27,7 +27,8 @@
if(iscarbon(L))
var/mob/living/carbon/C = L
if(C.get_blood_id() == ("blood" || "jellyblood") && (method == INJECT || (method == INGEST && C.dna && C.dna.species && (DRINKSBLOOD in C.dna.species.species_traits))))
var/blood_id = C.get_blood_id()
if((blood_id == "blood" || blood_id == "jellyblood") && (method == INJECT || (method == INGEST && C.dna && C.dna.species && (DRINKSBLOOD in C.dna.species.species_traits))))
if(!data || !(data["blood_type"] in get_safe_blood(C.dna.blood_type)))
C.reagents.add_reagent("bonehurtingjuice", reac_volume * 0.5)
else