From 6d04b33749e8baa9bed3ee52e75d6f9913dc024e Mon Sep 17 00:00:00 2001 From: Doxxmedearly <38594443+Doxxmedearly@users.noreply.github.com> Date: Wed, 12 Jul 2023 06:41:21 -0400 Subject: [PATCH] Reagents, Cryotubes, etc no longer fix prosthetics (#16701) * Reagents, Cryotubes, etc no longer fix prosthetics * Internal organs too * Clarify CL --- code/game/gamemodes/vampire/vampire_powers.dm | 2 +- code/modules/mob/living/carbon/human/human_damage.dm | 4 +++- .../doxxmedearly-medicine_cant_fix_steel_limbs.yml | 7 +++++++ 3 files changed, 11 insertions(+), 2 deletions(-) create mode 100644 html/changelogs/doxxmedearly-medicine_cant_fix_steel_limbs.yml diff --git a/code/game/gamemodes/vampire/vampire_powers.dm b/code/game/gamemodes/vampire/vampire_powers.dm index 31fa2858823..e297531b429 100644 --- a/code/game/gamemodes/vampire/vampire_powers.dm +++ b/code/game/gamemodes/vampire/vampire_powers.dm @@ -618,7 +618,7 @@ var/list/damaged_organs = get_damaged_organs(TRUE, TRUE, FALSE) if(length(damaged_organs)) // Heal an absurd amount, basically regenerate one organ. - heal_organ_damage(50, 50, FALSE) + heal_organ_damage(50, 50) blood_used += 3 var/missing_blood = species.blood_volume - REAGENT_VOLUME(vessel, /singleton/reagent/blood) diff --git a/code/modules/mob/living/carbon/human/human_damage.dm b/code/modules/mob/living/carbon/human/human_damage.dm index 772f00ff5b0..05f367acfe4 100644 --- a/code/modules/mob/living/carbon/human/human_damage.dm +++ b/code/modules/mob/living/carbon/human/human_damage.dm @@ -218,6 +218,8 @@ var/obj/item/organ/internal/I = internal if(amount <= 0) break + if(BP_IS_ROBOTIC(I)) + continue //Chems won't help, you need surgery to fix robot organs if(heal) if(I.damage < amount) amount -= I.damage @@ -279,7 +281,7 @@ //Heals ONE external organ, organ gets randomly selected from damaged ones. //It automatically updates damage overlays if necesary //It automatically updates health status -/mob/living/carbon/human/heal_organ_damage(var/brute, var/burn, var/prosthetic = TRUE) +/mob/living/carbon/human/heal_organ_damage(var/brute, var/burn, var/prosthetic = FALSE) var/list/obj/item/organ/external/parts = get_damaged_organs(brute, burn, prosthetic) if(!length(parts)) return diff --git a/html/changelogs/doxxmedearly-medicine_cant_fix_steel_limbs.yml b/html/changelogs/doxxmedearly-medicine_cant_fix_steel_limbs.yml new file mode 100644 index 00000000000..5faacf0ee12 --- /dev/null +++ b/html/changelogs/doxxmedearly-medicine_cant_fix_steel_limbs.yml @@ -0,0 +1,7 @@ +author: Doxxmedearly + +delete-after: True + +changes: + - bugfix: "Cryotubes, medicine, and other reagents should no longer heal prosthetic limbs." + - bugfix: "Prosthetic internal organs can no longer be fixed with reagents such as clonexadone. They must be fixed via surgery."