From e71686d8acdf53f1c4d37970c188604935b48099 Mon Sep 17 00:00:00 2001 From: Timothy Teakettle <59849408+timothyteakettle@users.noreply.github.com> Date: Tue, 9 Aug 2022 11:59:10 +0100 Subject: [PATCH] fixes --- code/__DEFINES/_flags/item_flags.dm | 2 +- code/datums/components/dullahan.dm | 7 +++++++ code/modules/surgery/organs/organ_internal.dm | 3 +++ 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/code/__DEFINES/_flags/item_flags.dm b/code/__DEFINES/_flags/item_flags.dm index 529499127d..d28cb80bab 100644 --- a/code/__DEFINES/_flags/item_flags.dm +++ b/code/__DEFINES/_flags/item_flags.dm @@ -51,4 +51,4 @@ #define ORGAN_NO_SPOIL (1<<5) //Do not spoil under any circumstances #define ORGAN_NO_DISMEMBERMENT (1<<6) //Immune to disembowelment. #define ORGAN_EDIBLE (1<<7) //is a snack? :D -#define ORGAN_SYNTHETIC_EMP (1<<6) //Synthetic organ affected by an EMP. Deteriorates over time. +#define ORGAN_SYNTHETIC_EMP (1<<8) //Synthetic organ affected by an EMP. Deteriorates over time. diff --git a/code/datums/components/dullahan.dm b/code/datums/components/dullahan.dm index 7d35b2d874..944f99c028 100644 --- a/code/datums/components/dullahan.dm +++ b/code/datums/components/dullahan.dm @@ -87,6 +87,7 @@ actions_types = list(/datum/action/item_action/organ_action/dullahan) zone = "abstract" tint = INFINITY // used to switch the vision perspective to the head on species_gain(). + organ_flags = ORGAN_NO_SPOIL | ORGAN_NO_DISMEMBERMENT /obj/item/dullahan_head name = "coders lament" @@ -180,8 +181,10 @@ var/mob/living/carbon/human/H = parent var/obj/item/organ/eyes/new_eyes = new H.dna.species.mutanteyes() var/obj/item/organ/brain/new_brain = new H.dna.species.mutant_brain() + var/obj/item/organ/tongue/new_tongue = new H.dna.species.mutanttongue() var/obj/item/organ/eyes/old_eyes = H.getorganslot(ORGAN_SLOT_EYES) var/obj/item/organ/brain/old_brain = H.getorganslot(ORGAN_SLOT_BRAIN) + var/obj/item/organ/tongue/old_tongue = H.getorganslot(ORGAN_SLOT_TONGUE) old_brain.Remove(TRUE,TRUE) QDEL_NULL(old_brain) @@ -190,4 +193,8 @@ old_eyes.Remove(TRUE,TRUE) QDEL_NULL(old_eyes) new_eyes.Insert(H, TRUE, TRUE) + + old_tongue.Remove(TRUE,TRUE) + QDEL_NULL(old_tongue) + new_tongue.Insert(H, TRUE, TRUE) . = ..() diff --git a/code/modules/surgery/organs/organ_internal.dm b/code/modules/surgery/organs/organ_internal.dm index d4a2663374..2c9b9b99d4 100644 --- a/code/modules/surgery/organs/organ_internal.dm +++ b/code/modules/surgery/organs/organ_internal.dm @@ -103,6 +103,7 @@ is_cold() if(organ_flags & ORGAN_FROZEN) return + message_admins("fuck you we're killing [owner]") applyOrganDamage(maxHealth * decay_factor * (seconds * 0.5)) /obj/item/organ/proc/can_decay() @@ -155,6 +156,7 @@ if(organ_flags & ORGAN_FAILING || !owner) return FALSE if(organ_flags & ORGAN_SYNTHETIC_EMP) //Synthetic organ has been emped, is now failing. + message_admins("emp go brrr") applyOrganDamage(maxHealth * decay_factor) return FALSE if(organ_flags & ORGAN_SYNTHETIC) @@ -165,6 +167,7 @@ ///Damage decrements again by a percent of its maxhealth, up to a total of 4 extra times depending on the owner's satiety healing_amount -= owner.satiety > 0 ? 4 * (maxHealth * healing_factor) * (owner.satiety / MAX_SATIETY) : 0 if(healing_amount) + message_admins("we um are healing") applyOrganDamage(healing_amount) //to FERMI_TWEAK return TRUE