diff --git a/code/game/objects/items/devices/megaphone.dm b/code/game/objects/items/devices/megaphone.dm index 617f4022985..34861d8e5c3 100644 --- a/code/game/objects/items/devices/megaphone.dm +++ b/code/game/objects/items/devices/megaphone.dm @@ -39,12 +39,12 @@ if ((src.loc == user && user.stat == 0)) if(emagged) if(insults) - user.audible_message("[user.GetVoice()] broadcasts, \"[pick(insultmsg)]\"") + user.say(pick(insultmsg),"machine", list(voicespan)) insults-- else user << "*BZZZZzzzzzt*" else - user.audible_message("[user.GetVoice()] broadcasts, \"[message]\"") + user.say(message,"machine", list(voicespan)) playsound(loc, 'sound/items/megaphone.ogg', 100, 0, 1) spamcheck = world.time + 50 diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index 8ac3547f12b..708d76140e4 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -58,7 +58,7 @@ var/list/department_radio_keys = list( var/list/crit_allowed_modes = list(MODE_WHISPER,MODE_CHANGELING,MODE_ALIEN) -/mob/living/say(message, bubble_type,) +/mob/living/say(message, bubble_type,var/list/spans = list()) message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN)) if(stat == DEAD) @@ -92,7 +92,6 @@ var/list/crit_allowed_modes = list(MODE_WHISPER,MODE_CHANGELING,MODE_ALIEN) if(message_mode != MODE_WHISPER) //whisper() calls treat_message(); double process results in "hisspering" message = treat_message(message) - var/spans = list() spans += get_spans() if(!message) @@ -219,7 +218,7 @@ var/list/crit_allowed_modes = list(MODE_WHISPER,MODE_CHANGELING,MODE_ALIEN) if(1) if(prob(40)) M << "We can faintly sense an outsider trying to communicate through the hivemind..." - return 1 + return 1 if(2) var/msg = "[mind.changeling.changelingID]: [message]" log_say("[mind.changeling.changelingID]/[src.key] : [message]") @@ -229,7 +228,7 @@ var/list/crit_allowed_modes = list(MODE_WHISPER,MODE_CHANGELING,MODE_ALIEN) else switch(M.lingcheck()) if(3) - M << msg + M << msg if(2) M << msg if(1) @@ -289,7 +288,7 @@ var/list/crit_allowed_modes = list(MODE_WHISPER,MODE_CHANGELING,MODE_ALIEN) return NOPASS return 0 -/mob/living/lingcheck() //1 is ling w/ no hivemind. 2 is ling w/hivemind. 3 is ling victim being linked into hivemind. +/mob/living/lingcheck() //1 is ling w/ no hivemind. 2 is ling w/hivemind. 3 is ling victim being linked into hivemind. if(mind && mind.changeling) if(mind.changeling.changeling_speak) return 2