From fa5bb631465c1213fe9e0d8dfdb35ea2fdbfa605 Mon Sep 17 00:00:00 2001 From: NovaBot <154629622+NovaBot13@users.noreply.github.com> Date: Thu, 1 Feb 2024 20:28:29 -0500 Subject: [PATCH] [MIRROR] Fix robotic voicebox tongue using the wrong proc. (#738) * Fix robotic voicebox tongue using the wrong proc. (#81206) ## About The Pull Request The robotic voicebox tongue had the `can_speak_language(language)` proc set to return `TRUE` regardless, however it doesn't seem like this is actually called on a tongue anywhere else in the code. I _believe_ this proc is on the atom level, and isn't for the tongue itself. I think the correct proc would be `could_speak_language(datum/language/language_path)`. which is defined on the tongue and most importantly actually called when checking which language a carbon can speak. ```dm /mob/living/carbon/could_speak_language(datum/language/language_path) var/obj/item/organ/internal/tongue/spoken_with = get_organ_slot(ORGAN_SLOT_TONGUE) // the tower of babel needs to bypass the tongue language restrictions without giving omnitongue return HAS_MIND_TRAIT(src, TRAIT_TOWER_OF_BABEL) || spoken_with.could_speak_language(language_path) ``` ## Why It's Good For The Game It having `can_speak_language(language)` doesn't seem to actually be doing anything, but its presence in the first place makes me feel like this is unintentional. This fixes that. ## Changelog :cl: fix: Robotic voicebox actually lets you speak any language again (as long as you know it). /:cl: * Fix robotic voicebox tongue using the wrong proc. --------- Co-authored-by: _0Steven <42909981+00-Steven@users.noreply.github.com> --- code/modules/surgery/organs/internal/tongue/_tongue.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/surgery/organs/internal/tongue/_tongue.dm b/code/modules/surgery/organs/internal/tongue/_tongue.dm index f74a5b7a4e8..f5075778cb3 100644 --- a/code/modules/surgery/organs/internal/tongue/_tongue.dm +++ b/code/modules/surgery/organs/internal/tongue/_tongue.dm @@ -574,7 +574,7 @@ GLOBAL_LIST_INIT(english_to_zombie, list()) taste_sensitivity = 25 // not as good as an organic tongue voice_filter = "alimiter=0.9,acompressor=threshold=0.2:ratio=20:attack=10:release=50:makeup=2,highpass=f=1000" -/obj/item/organ/internal/tongue/robot/can_speak_language(language) +/obj/item/organ/internal/tongue/robot/could_speak_language(datum/language/language_path) return TRUE // THE MAGIC OF ELECTRONICS /obj/item/organ/internal/tongue/robot/modify_speech(datum/source, list/speech_args)