diff --git a/code/modules/mob/living/carbon/alien/say.dm b/code/modules/mob/living/carbon/alien/say.dm index 78542a79fc8..8d2e77a0601 100644 --- a/code/modules/mob/living/carbon/alien/say.dm +++ b/code/modules/mob/living/carbon/alien/say.dm @@ -15,21 +15,16 @@ if(copytext(message,1,2) == "*") return emote(copytext(message,2)) - var/needtohack = 1 //hacky way to get around stupid byond shit var/datum/language/speaking = parse_language(message) - if(speaking == null) - var/quickcheck = get_default_language() - if(quickcheck == null) - speaking = all_languages["Xenomorph"] //this is the hackiest thing, no clue how to avoid it - needtohack = 0 - else - speaking = get_default_language() - needtohack = 0 - if(speaking) - if(needtohack) - message = copytext(message,2+length(speaking.key)) + message = copytext(message,2+length(speaking.key)) + else + var/quickcheck = get_default_language() + if(quickcheck) + speaking = get_default_language() + else //because no clue how to actually set xeno's default language since they aren't a species, just do it here + speaking = all_languages["Xenomorph"] var/ending = copytext(message, length(message)) if (speaking) diff --git a/code/modules/mob/living/silicon/say.dm b/code/modules/mob/living/silicon/say.dm index c5aa2467674..125dc9ea992 100644 --- a/code/modules/mob/living/silicon/say.dm +++ b/code/modules/mob/living/silicon/say.dm @@ -69,18 +69,17 @@ message = trim(copytext(message,3)) //parse language key and consume it - var/needtohack = 1 //hacky way to get around stupid byond shit var/datum/language/speaking = parse_language(message) + if (speaking) - if(speaking == null) + message = trim(copytext(message,2+length(speaking.key))) + else speaking = get_default_language() - needtohack = 0 - if (speaking && !(speaking == null)) + if (speaking) verb = speaking.speech_verb - if(needtohack) - message = trim(copytext(message,2+length(speaking.key))) - + // 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