Fix SM (and some other) follow links (#20554)

* hoopefully fix SM message tracking being really weird

* update some more follow targets

* Apply suggestions from code review

hehe

Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>

* Cleans up some loose ends, implements for arrivals announcer too

* Changes target to the new deactivated core

---------

Co-authored-by: Contrabang <91113370+Contrabang@users.noreply.github.com>
This commit is contained in:
Luc
2023-03-26 12:17:37 +01:00
committed by GitHub
co-authored by Contrabang
parent 148d1275c3
commit 6bf5172bec
10 changed files with 17 additions and 7 deletions
@@ -40,6 +40,7 @@
/obj/machinery/mineral/labor_prisoner_shuttle_console/Initialize()
. = ..()
announcer = new /obj/item/radio/intercom(null)
announcer.follow_target = src
announcer.config(list("Security" = 0))
/obj/machinery/mineral/labor_prisoner_shuttle_console/Destroy()
@@ -12,8 +12,9 @@ GLOBAL_LIST_EMPTY(empty_playable_ai_cores)
cryo_AI()
/mob/living/silicon/ai/proc/cryo_AI()
GLOB.empty_playable_ai_cores += new /obj/structure/AIcore/deactivated(loc)
GLOB.global_announcer.autosay("[src] has been moved to intelligence storage.", "Artificial Intelligence Oversight")
var/dead_aicore = new /obj/structure/AIcore/deactivated(loc)
GLOB.empty_playable_ai_cores += dead_aicore
GLOB.global_announcer.autosay("[src] has been moved to intelligence storage.", "Artificial Intelligence Oversight", follow_target_override = dead_aicore)
//Handle job slot/tater cleanup.
var/job = mind.assigned_role
+2 -2
View File
@@ -416,7 +416,7 @@
if((character.mind.assigned_role != "Cyborg") && (character.mind.assigned_role != character.mind.special_role))
if(character.mind.role_alt_title)
rank = character.mind.role_alt_title
GLOB.global_announcer.autosay("[character.real_name],[rank ? " [rank]," : " visitor," ] [join_message ? join_message : "has arrived on the station"].", "Arrivals Announcement Computer")
GLOB.global_announcer.autosay("[character.real_name],[rank ? " [rank]," : " visitor," ] [join_message ? join_message : "has arrived on the station"].", "Arrivals Announcement Computer", follow_target_override = character)
/mob/new_player/proc/AnnounceCyborg(mob/living/character, rank, join_message)
if(SSticker.current_state == GAME_STATE_PLAYING)
@@ -433,7 +433,7 @@
if(character.mind)
if(character.mind.assigned_role != character.mind.special_role)
// can't use their name here, since cyborg namepicking is done post-spawn, so we'll just say "A new Cyborg has arrived"/"A new Android has arrived"/etc.
GLOB.global_announcer.autosay("A new[rank ? " [rank]" : " visitor" ] [join_message ? join_message : "has arrived on the station"].", "Arrivals Announcement Computer")
GLOB.global_announcer.autosay("A new[rank ? " [rank]" : " visitor" ] [join_message ? join_message : "has arrived on the station"].", "Arrivals Announcement Computer", follow_target_override = character)
/mob/new_player/proc/LateChoices()
var/mills = ROUND_TIME // 1/10 of a second, not real milliseconds but whatever
@@ -201,6 +201,7 @@
GLOB.poi_list |= src
radio = new(src)
radio.listening = FALSE
radio.follow_target = src
radio.config(list("Engineering" = 0))
investigate_log("has been created.", "supermatter")
@@ -747,6 +747,7 @@
. = ..()
Announcer = new /obj/item/radio/headset(src)
Announcer.config(list("Security" = 1))
Announcer.follow_target = src
options["The Original"] = "handgun"
options["Golden Mamba"] = "handgun_golden-mamba"
options["NT's Finest"] = "handgun_nt-finest"
@@ -188,7 +188,7 @@
atom_say("All Emergency Response Teams are dispatched and can not be called at this time.")
return
atom_say("ERT request transmitted!")
GLOB.command_announcer.autosay("ERT request transmitted. Reason: [ert_reason]", name)
GLOB.command_announcer.autosay("ERT request transmitted. Reason: [ert_reason]", name, follow_target_override = src)
print_centcom_report(ert_reason, station_time_timestamp() + " ERT Request")
var/fullmin_count = 0