From 80e4ca9fa85cf83a9301476f2afc6185e7c8b738 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A1=D0=B8=D1=80=D0=BE=D1=82=D0=BA=D0=B0?= <114731039+ErdGinalD@users.noreply.github.com> Date: Fri, 31 May 2024 18:32:34 +0300 Subject: [PATCH] Add few ways to heal clone damage as Traitor and Vampire (#25596) * Add few ways to heal clone damage as Traitor and Vampire * Update debuffs.dm --- code/datums/status_effects/debuffs.dm | 5 +++++ code/game/gamemodes/miniantags/guardian/types/healer.dm | 1 + code/modules/reagents/chemistry/reagents/medicine.dm | 1 + 3 files changed, 7 insertions(+) diff --git a/code/datums/status_effects/debuffs.dm b/code/datums/status_effects/debuffs.dm index 1a93201a1d9..f131fab715b 100644 --- a/code/datums/status_effects/debuffs.dm +++ b/code/datums/status_effects/debuffs.dm @@ -659,6 +659,11 @@ dreamer.adjustBruteLoss(-1, FALSE) dreamer.adjustFireLoss(-1, FALSE) dreamer.adjustToxLoss(-1) + dreamer.adjustOxyLoss(-1) + dreamer.adjustCloneLoss(-0.5) + if(dreamer.HasDisease(/datum/disease/critical/heart_failure) && prob(25)) + for(var/datum/disease/critical/heart_failure/HF in dreamer.viruses) + HF.cure() dreamer.handle_dreams() dreamer.adjustStaminaLoss(-10) var/comfort = 1 diff --git a/code/game/gamemodes/miniantags/guardian/types/healer.dm b/code/game/gamemodes/miniantags/guardian/types/healer.dm index f073bd8935d..d202fdd1fcd 100644 --- a/code/game/gamemodes/miniantags/guardian/types/healer.dm +++ b/code/game/gamemodes/miniantags/guardian/types/healer.dm @@ -69,6 +69,7 @@ C.adjustFireLoss(-5, robotic=1) C.adjustOxyLoss(-5) C.adjustToxLoss(-5) + C.adjustCloneLoss(-1) heal_cooldown = world.time + 1.5 SECONDS if(C == summoner) med_hud_set_health() diff --git a/code/modules/reagents/chemistry/reagents/medicine.dm b/code/modules/reagents/chemistry/reagents/medicine.dm index 82fc455fb52..69ee3b37797 100644 --- a/code/modules/reagents/chemistry/reagents/medicine.dm +++ b/code/modules/reagents/chemistry/reagents/medicine.dm @@ -1574,6 +1574,7 @@ zomb.cure() // experimental B). Won't save you from the dead organs. for(var/obj/item/organ/O as anything in (H.internal_organs + H.bodyparts)) O.germ_level = 0 + update_flags |= M.adjustCloneLoss(-4 * REAGENTS_EFFECT_MULTIPLIER, FALSE) // 60 clone one-use heal for 10 TC seems fair if(M.health < 40) update_flags |= M.adjustOxyLoss(-5 * REAGENTS_EFFECT_MULTIPLIER, FALSE) update_flags |= M.adjustToxLoss(-1 * REAGENTS_EFFECT_MULTIPLIER, FALSE)