From cfa8d17ef1d982ee3de6445381c3d86bc26e1994 Mon Sep 17 00:00:00 2001 From: DeltaFire Date: Fri, 13 Nov 2020 03:05:55 +0100 Subject: [PATCH] adds a corruption healing reagent title. Slowly purges corruption, and causes light toxins damage to nonrobots. Inverts its positive effect on overdose / becomes more toxic to nonrobots --- .../chemistry/reagents/medicine_reagents.dm | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index 0d91e37ca0..22efb08064 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -1693,3 +1693,26 @@ name = "Synthi-Sanguirite" description = "A synthetic coagulant used to help bleeding wounds clot faster. Not quite as effective as name brand Sanguirite, especially on patients with lots of cuts." clot_coeff_per_wound = 0.8 + +//Sloowly heals system corruption in robotic organisms. Causes mild toxins damage in nonrobots. +/datum/reagent/medicine/system_cleaner + name = "System Cleaner" + description = "A reagent with special properties causing it to slowly reduce corruption in robots. Mildly toxic for nonrobots." + reagent_state = LIQUID + color = "#D7C9C6" + metabolization_rate = 0.2 * REAGENTS_METABOLISM + overdose_threshold = 30 + +/datum/reagent/medicine/system_cleaner/on_mob_life(mob/living/carbon/M) + . = ..() + if(HAS_TRAIT(M, TRAIT_ROBOTIC_ORGANISM)) + M.adjustToxLoss(-0.2, toxins_type = TOX_SYSCORRUPT) + else + M.adjustToxLoss(0.5, toxins_type = TOX_DEFAULT) + +/datum/reagent/medicine/system_cleaner/overdose_process(mob/living/carbon/M) + . = ..() + if(HAS_TRAIT(M, TRAIT_ROBOTIC_ORGANISM)) + M.adjustToxLoss(0.4, toxins_type = TOX_SYSCORRUPT) //inverts its positive effect on overdose, for organics it's just more toxic + else + M.adjustToxLoss(0.5 , toxins_type = TOX_DEFAULT)