diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index ffa330f6e00..e4349e1198c 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -251,8 +251,8 @@ var/list/crit_allowed_modes = list(MODE_WHISPER,MODE_CHANGELING,MODE_ALIEN) var/mob/living/carbon/C = src var/obj/item/organ/vocal_cords/V = C.getorganslot("vocal_cords") if(V && V.can_speak_with()) - C.say(V.handle_speech(message), spans = V.spans, sanitize = FALSE) - V.speak_with(message) //words come before actions + V.handle_speech(message) //message + V.speak_with(message) //action return TRUE return FALSE diff --git a/code/modules/spells/spell_types/voice_of_god.dm b/code/modules/spells/spell_types/voice_of_god.dm index 6f3cc79de21..adff53210fc 100644 --- a/code/modules/spells/spell_types/voice_of_god.dm +++ b/code/modules/spells/spell_types/voice_of_god.dm @@ -9,7 +9,8 @@ var/command var/cooldown_mod = 1 var/power_mod = 1 - var/list/spans = list() + var/list/spans = list("colossus","yell") + var/speech_sound = 'sound/magic/clockwork/invoke_general.ogg' /obj/effect/proc_holder/spell/voice_of_god/can_cast(mob/user = usr) if(!user.can_speak()) @@ -29,6 +30,8 @@ ..() /obj/effect/proc_holder/spell/voice_of_god/cast(list/targets, mob/user = usr) + user.say(uppertext(command), spans = spans, sanitize = FALSE) + playsound(get_turf(user), speech_sound, 300, 1, 5) var/cooldown = voice_of_god(command, user, spans, base_multiplier = power_mod) charge_max = (cooldown * cooldown_mod) @@ -37,4 +40,5 @@ desc = "Speak with an incredibly funny voice, startling people into obeying you for a brief moment." power_mod = 0.1 cooldown_mod = 0.5 - spans = list("clown") \ No newline at end of file + spans = list("clown") + speech_sound = 'sound/spookoween/scary_horn2.ogg' \ No newline at end of file diff --git a/code/modules/surgery/organs/vocal_cords.dm b/code/modules/surgery/organs/vocal_cords.dm index 8953355e38e..9ea5d030dac 100644 --- a/code/modules/surgery/organs/vocal_cords.dm +++ b/code/modules/surgery/organs/vocal_cords.dm @@ -61,8 +61,8 @@ var/static/regex/multispin_words = regex("like a record baby|right round") /obj/item/organ/vocal_cords/proc/speak_with(message) //do what the organ does return -/obj/item/organ/vocal_cords/proc/handle_speech(message) //change the message - return message +/obj/item/organ/vocal_cords/proc/handle_speech(message) //actually say the message + owner.say(message, spans = spans, sanitize = FALSE) //Colossus drop, forces the listeners to obey certain commands /obj/item/organ/vocal_cords/colossus @@ -122,10 +122,12 @@ var/static/regex/multispin_words = regex("like a record baby|right round") return TRUE /obj/item/organ/vocal_cords/colossus/handle_speech(message) + owner.say(uppertext(message), spans = spans, sanitize = FALSE) + playsound(get_turf(owner), 'sound/magic/clockwork/invoke_general.ogg', 300, 1, 5) return //voice of god speaks for us /obj/item/organ/vocal_cords/colossus/speak_with(message) - var/cooldown = voice_of_god(message, owner, spans = null, base_multiplier) + var/cooldown = voice_of_god(message, owner, spans, base_multiplier) next_command = world.time + (cooldown * cooldown_mod) ////////////////////////////////////// @@ -145,9 +147,7 @@ var/static/regex/multispin_words = regex("like a record baby|right round") else if (is_servant_of_ratvar(user)) span_list = list("ratvar") else - span_list = list("colossus","yell") - user.say(uppertext(message), spans = span_list, sanitize = FALSE) - playsound(get_turf(user), 'sound/magic/clockwork/invoke_general.ogg', 300, 1, 5) + span_list = list() message = lowertext(message) var/mob/living/list/listeners = list()