From 5e6617e7e6b626ecc2e69efd5e203e617a5a74e4 Mon Sep 17 00:00:00 2001 From: HarpyEagle Date: Thu, 13 Aug 2015 15:43:19 -0400 Subject: [PATCH] Cleans up living/say broadcast and verb logic Human say_quote() will use the language to obtain a speech verb while silicon say_quote() will use synth speech verbs, so no need for the extra language flag. Will mean that silicons will always use their synth speech verbs regardless of language, however. Logic for what silicons use as their verb should probably go in say_quote() anyways, so future updates to that can go there instead of branching in living say code. --- code/__defines/species_languages.dm | 2 -- code/modules/mob/language/generic.dm | 2 +- code/modules/mob/living/say.dm | 20 +++++++------------- 3 files changed, 8 insertions(+), 16 deletions(-) diff --git a/code/__defines/species_languages.dm b/code/__defines/species_languages.dm index fccfbaa2ef..e204cdb977 100644 --- a/code/__defines/species_languages.dm +++ b/code/__defines/species_languages.dm @@ -42,5 +42,3 @@ #define INNATE 64 // All mobs can be assumed to speak and understand this language. (audible emotes) #define NO_TALK_MSG 128 // Do not show the "\The [speaker] talks into \the [radio]" message #define NO_STUTTER 256 // No stuttering, slurring, or other speech problems -#define COMMON_VERBS 512 // Robots will apply regular verbs to this - diff --git a/code/modules/mob/language/generic.dm b/code/modules/mob/language/generic.dm index 17a145ae02..d93edf3ac2 100644 --- a/code/modules/mob/language/generic.dm +++ b/code/modules/mob/language/generic.dm @@ -25,7 +25,7 @@ speech_verb = "says" whisper_verb = "whispers" key = "0" - flags = RESTRICTED | COMMON_VERBS + flags = RESTRICTED syllables = list("blah","blah","blah","bleh","meh","neh","nah","wah") //TODO flag certain languages to use the mob-type specific say_quote and then get rid of these. diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index 3546d69acf..460a16d3df 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -161,19 +161,13 @@ proc/get_radio_key_from_channel(var/channel) else speaking = get_default_language() - if (speaking) - // This is broadcast to all mobs with the language, - // irrespective of distance or anything else. - if(speaking.flags & HIVEMIND) - speaking.broadcast(src,trim(message)) - return 1 - //If we've gotten this far, keep going! - if(speaking.flags & COMMON_VERBS) - verb = say_quote(message) - else - verb = speaking.get_spoken_verb(copytext(message, length(message))) - else - verb = say_quote(message) + // This is broadcast to all mobs with the language, + // irrespective of distance or anything else. + if(speaking && (speaking.flags & HIVEMIND)) + speaking.broadcast(src,trim(message)) + return 1 + + verb = say_quote(message, speaking) if(is_muzzled()) src << "You're muzzled and cannot speak!"