From 4fd3c3fdfaabc3aeaa5a0706b60c27fe60838782 Mon Sep 17 00:00:00 2001 From: TheSilverNuke <36066032+TheSilverNuke@users.noreply.github.com> Date: Sat, 19 Mar 2022 20:14:34 -0600 Subject: [PATCH] Allows Plasma Fixation to heal in any amount of plasma gas (#65389) Allows for a very small amount of healing if there's a non-visible amount of plasma in the atmosphere, --- code/datums/diseases/advance/symptoms/heal.dm | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/code/datums/diseases/advance/symptoms/heal.dm b/code/datums/diseases/advance/symptoms/heal.dm index c02915cb517..973fad09349 100644 --- a/code/datums/diseases/advance/symptoms/heal.dm +++ b/code/datums/diseases/advance/symptoms/heal.dm @@ -453,6 +453,9 @@ return TRUE return FALSE +///Determines the rate at which Plasma Fixation heals based on the amount of plasma in the air +#define HEALING_PER_MOL 1.1 + /datum/symptom/heal/plasma name = "Plasma Fixation" desc = "The virus draws plasma from the atmosphere and from inside the body to heal and stabilize body temperature." @@ -488,10 +491,10 @@ environment = M.loc.return_air() if(environment) gases = environment.gases - if(gases[/datum/gas/plasma] && gases[/datum/gas/plasma][MOLES] > gases[/datum/gas/plasma][GAS_META][META_GAS_MOLES_VISIBLE]) //if there's enough plasma in the air to see - . += power * 0.5 + if(gases[/datum/gas/plasma]) + . += power * min(0.5, gases[/datum/gas/plasma][MOLES] * HEALING_PER_MOL) if(M.reagents.has_reagent(/datum/reagent/toxin/plasma, needs_metabolizing = TRUE)) - . += power * 0.75 + . += power * 0.75 //Determines how much the symptom heals if injected or ingested /datum/symptom/heal/plasma/Heal(mob/living/carbon/M, datum/disease/advance/A, actual_power) var/heal_amt = 4 * actual_power @@ -521,6 +524,8 @@ M.update_damage_overlays() return 1 +///Plasma End +#undef HEALING_PER_MOL /datum/symptom/heal/radiation name = "Radioactive Resonance"