From eed95f2a229152b0c21d4b0d6e956fe3331cf667 Mon Sep 17 00:00:00 2001 From: SomeRandomOwl <2568378+SomeRandomOwl@users.noreply.github.com> Date: Thu, 4 Dec 2025 18:41:24 -0500 Subject: [PATCH] Fixes an oversight with the forked tongue (#94303) ## About The Pull Request It was discovered that if a forked tongue is in an inventory slot, be it your hands or pocket it gave you lizard speech. This is likely an oversight that was missed for a long while. It seems likely it is unintended behavior. This PR just adds a check to in the speechmod to check if the items is a organ or not.
Screenshots image image
## Why It's Good For The Game Less bugs and no silly behavior with a tongue not being inside of your body. --- code/datums/components/speechmod.dm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/code/datums/components/speechmod.dm b/code/datums/components/speechmod.dm index 45b2a691268..e6d39faf57c 100644 --- a/code/datums/components/speechmod.dm +++ b/code/datums/components/speechmod.dm @@ -50,10 +50,13 @@ targeted = owner.loc RegisterSignal(targeted, COMSIG_MOB_SAY, PROC_REF(handle_speech)) - RegisterSignal(parent, COMSIG_ITEM_EQUIPPED, PROC_REF(on_equipped)) - RegisterSignal(parent, COMSIG_ITEM_DROPPED, PROC_REF(on_unequipped)) - RegisterSignal(parent, COMSIG_ORGAN_IMPLANTED, PROC_REF(on_implanted)) - RegisterSignal(parent, COMSIG_ORGAN_REMOVED, PROC_REF(on_removed)) + if (isorgan(parent)) + RegisterSignal(parent, COMSIG_ORGAN_IMPLANTED, PROC_REF(on_implanted)) + RegisterSignal(parent, COMSIG_ORGAN_REMOVED, PROC_REF(on_removed)) + else + RegisterSignal(parent, COMSIG_ITEM_EQUIPPED, PROC_REF(on_equipped)) + RegisterSignal(parent, COMSIG_ITEM_DROPPED, PROC_REF(on_unequipped)) + /datum/component/speechmod/proc/handle_speech(datum/source, list/speech_args) SIGNAL_HANDLER