From fdecf7bb682cfbf2d32b2e5c86da4d733e8d6e7f Mon Sep 17 00:00:00 2001 From: ikarrus Date: Sun, 28 Sep 2014 20:35:09 -0600 Subject: [PATCH] Ghosts will be able to hear all Special Chats Mostly so admins can supervise them. - Ghosts will be able to hear Cultist Chat. Ghosts weren't able to pick up ones sent by cult_innate_comm() - You won't need ghost ears on to listen to Binary Chat, like how it used to be - put dead_mob_list to good use (Everything seemed fine when I tested it. Let me know if I'm missing overlooking something) - Bumped lingchat sense chance up to 40% Resolves #4860 --- code/game/gamemodes/cult/ritual.dm | 6 +++--- code/game/gamemodes/cult/runes.dm | 6 +++--- code/modules/mob/living/carbon/alien/say.dm | 2 +- code/modules/mob/living/say.dm | 4 ++-- code/modules/mob/living/silicon/say.dm | 4 ++-- 5 files changed, 11 insertions(+), 11 deletions(-) diff --git a/code/game/gamemodes/cult/ritual.dm b/code/game/gamemodes/cult/ritual.dm index 262c90379c3..4e66a3d1ecc 100644 --- a/code/game/gamemodes/cult/ritual.dm +++ b/code/game/gamemodes/cult/ritual.dm @@ -63,9 +63,9 @@ var/engwords = list("travel", "blood", "join", "hell", "destroy", "technology", usr.say("O bidai nabora se[pick("'","`")]sma!") sleep(10) usr.say("[input]") - for(var/datum/mind/H in ticker.mode.cult) - if (H.current) - H.current << "[input]" + for(var/mob/M in mob_list) + if((M.mind && (M.mind in ticker.mode.cult)) || (M in dead_mob_list)) + M << "[input]" return #undef CHECK_STATUS diff --git a/code/game/gamemodes/cult/runes.dm b/code/game/gamemodes/cult/runes.dm index 2b16cdcc366..fb07c3c966c 100644 --- a/code/game/gamemodes/cult/runes.dm +++ b/code/game/gamemodes/cult/runes.dm @@ -574,9 +574,9 @@ var/list/sacrificed = list() usr.say("[input]") else usr.whisper("[input]") - for(var/datum/mind/H in ticker.mode.cult) - if (H.current) - H.current << "[input]" + for(var/mob/M in mob_list) + if((M.mind && (M.mind in ticker.mode.cult)) || (M in dead_mob_list)) + M << "[input]" return 1 /////////////////////////////////////////FIFTEENTH RUNE diff --git a/code/modules/mob/living/carbon/alien/say.dm b/code/modules/mob/living/carbon/alien/say.dm index a65299adfc1..7c95bf37b74 100644 --- a/code/modules/mob/living/carbon/alien/say.dm +++ b/code/modules/mob/living/carbon/alien/say.dm @@ -11,7 +11,7 @@ var/message_a = say_quote(message) var/rendered = "Hivemind, [name] [message_a]" for(var/mob/S in player_list) - if((!S.stat && (S.hivecheck())) || (S.stat == DEAD && !istype(S, /mob/new_player))) + if((!S.stat && (S.hivecheck())) || (S in dead_mob_list)) S << rendered /mob/living/carbon/alien/handle_inherent_channels(message, message_mode) diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index 4c4ee69543c..3a08fa464f5 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -222,14 +222,14 @@ var/list/department_radio_keys = list( var/msg = "[mind.changeling.changelingID]: [message]" log_say("[mind.changeling.changelingID]/[src.key] : [message]") for(var/mob/M in mob_list) - if(M.stat == DEAD && !istype(M, /mob/new_player)) + if(M in dead_mob_list) M << msg else switch(M.lingcheck()) if(2) M << msg if(1) - if(prob(30)) + if(prob(40)) M << "We can faintly sense another of our kind trying to communicate through the hivemind..." return 1 if(1) diff --git a/code/modules/mob/living/silicon/say.dm b/code/modules/mob/living/silicon/say.dm index 662c92dabd1..9dd1325113a 100644 --- a/code/modules/mob/living/silicon/say.dm +++ b/code/modules/mob/living/silicon/say.dm @@ -10,7 +10,7 @@ var/message_a = say_quote(message) var/rendered = "Robotic Talk, [name] [message_a]" for(var/mob/M in player_list) - if(M.binarycheck() || (M.stat == DEAD && (M.client.prefs.toggles & CHAT_GHOSTEARS) && !istype(M, /mob/new_player))) + if(M.binarycheck() || (M in dead_mob_list)) if(istype(M, /mob/living/silicon/ai)) var/renderedAI = "Robotic Talk, [name] ([desig]) [message_a]" M << renderedAI @@ -51,7 +51,7 @@ . = ..() if(.) return . - + if(message_mode == MODE_BINARY) if(binarycheck()) robot_talk(message)