From d9d0fff5a23fd000b0f00501e16e4d67343eff44 Mon Sep 17 00:00:00 2001 From: Crazylemon Date: Thu, 10 Mar 2016 17:13:29 -0800 Subject: [PATCH] Exotic blood other than water will work now, and slime people will now absorb water as blood --- code/modules/surgery/organs/blood.dm | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/code/modules/surgery/organs/blood.dm b/code/modules/surgery/organs/blood.dm index 46ce153254e..4ca50e72fc9 100644 --- a/code/modules/surgery/organs/blood.dm +++ b/code/modules/surgery/organs/blood.dm @@ -41,14 +41,19 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 return if(stat != DEAD && bodytemperature >= 170) //Dead or cryosleep people do not pump the blood. if(species.exotic_blood) - blood_volume = round(vessel.get_reagent_amount(species.exotic_blood)) + var/blood_reagent = species.exotic_blood // This is a string of the name of the species' blood reagent + blood_volume = round(vessel.get_reagent_amount(blood_reagent)) if(blood_volume < 560 && blood_volume) - var/datum/reagent/water/W = locate() in vessel.reagent_list //Grab some blood - if(W) // Make sure there's some blood at all - W.volume += 0.1 // regenerate blood VERY slowly + var/datum/reagent/R = vessel.reagent_list[blood_reagent] //Grab some blood + if(R) // Make sure there's some blood at all + R.volume += 0.1 // regenerate blood VERY slowly if (reagents.has_reagent("nutriment")) //Getting food speeds it up - W.volume += 0.4 + R.volume += 0.4 reagents.remove_reagent("nutriment", 0.1) + else if (reagents.has_reagent(blood_reagent)) + R.volume += 0.4 + reagents.remove_reagent(blood_reagent, 0.4) + else blood_volume = round(vessel.get_reagent_amount("blood")) //Blood regeneration if there is some space @@ -191,8 +196,6 @@ var/const/BLOOD_VOLUME_SURVIVE = 122 B.holder = container B.volume += amount - - //set reagent data B.data["donor"] = src if (!B.data["virus2"])