From 8868ff8b623a1d88cdb4240087d07e8aaafc3ac2 Mon Sep 17 00:00:00 2001 From: dearmochi Date: Thu, 11 Mar 2021 19:07:53 +0100 Subject: [PATCH] Fixes dead AIs making cryo announcements (#15701) --- code/game/machinery/cryopod.dm | 9 ++++++--- code/modules/mob/dead/observer/say.dm | 2 +- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/code/game/machinery/cryopod.dm b/code/game/machinery/cryopod.dm index 7b7544d86fe..0ef5720eb73 100644 --- a/code/game/machinery/cryopod.dm +++ b/code/game/machinery/cryopod.dm @@ -431,8 +431,11 @@ control_computer.frozen_crew += "[occupant.real_name]" var/list/ailist = list() - for(var/mob/living/silicon/ai/A in GLOB.silicon_mob_list) - ailist += A + for(var/thing in GLOB.ai_list) + var/mob/living/silicon/ai/AI = thing + if(AI.stat) + continue + ailist += AI if(length(ailist)) var/mob/living/silicon/ai/announcer = pick(ailist) if(announce_rank) @@ -441,7 +444,7 @@ announcer.say(";[occupant.real_name] [on_store_message]", ignore_languages = TRUE) else if(announce_rank) - announce.autosay("[occupant.real_name] ([announce_rank]) [on_store_message]", "[on_store_name]") + announce.autosay("[occupant.real_name] ([announce_rank]) [on_store_message]", "[on_store_name]") else announce.autosay("[occupant.real_name] [on_store_message]", "[on_store_name]") visible_message("[src] hums and hisses as it moves [occupant.real_name] into storage.") diff --git a/code/modules/mob/dead/observer/say.dm b/code/modules/mob/dead/observer/say.dm index 4d003753876..c2607e2ef4e 100644 --- a/code/modules/mob/dead/observer/say.dm +++ b/code/modules/mob/dead/observer/say.dm @@ -33,6 +33,6 @@ /mob/dead/observer/handle_speaker_name(var/mob/speaker = null, var/vname, var/hard_to_hear) var/speaker_name = ..() - if(speaker && (speaker_name != speaker.real_name) && !isAI(speaker)) //Announce computer and various stuff that broadcasts doesn't use it's real name but AI's can't pretend to be other mobs. + if(speaker && (speaker_name != speaker.real_name) && !isAI(speaker) && !istype(speaker, /mob/living/automatedannouncer)) //Announce computer and various stuff that broadcasts doesn't use it's real name but AI's can't pretend to be other mobs. speaker_name = "[speaker.real_name] ([speaker_name])" return speaker_name