From b8f5fd50311733c546f3914729aed48968f92a84 Mon Sep 17 00:00:00 2001 From: Tigercat2000 Date: Wed, 15 Apr 2015 19:31:17 -0700 Subject: [PATCH] Cleanup code and remove needtohack insanity code This cleans up the code and properly integrates a few things, instead of the absolutely tragic and insane code bypassing it, literally named var/needtohack. --- code/modules/mob/living/carbon/alien/say.dm | 19 +++++++------------ code/modules/mob/living/silicon/say.dm | 13 ++++++------- 2 files changed, 13 insertions(+), 19 deletions(-) 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