From cfafcd93ad7312a31e3c7eab12bfa64dfa2dd560 Mon Sep 17 00:00:00 2001 From: forest2001 <41653574+realforest2001@users.noreply.github.com> Date: Tue, 10 Oct 2023 00:56:25 +0100 Subject: [PATCH] Project ARES: Hijack logging (#4471) # About the pull request Fixes a missing log for Queen dropship summon, and also adds security logs for xenos on a dropship. # Explain why it's good for the game Consistency! # Testing Photographs and Procedure
Screenshots & Videos Put screenshots and videos here with an empty line between the screenshots and the `
` tags.
# Changelog :cl: add: Added missing flight record for Queen dropship summon. code: Added security record option for shipwide_ai_announcement. add: Added security records for unidentified lifeforms announcement. /:cl: --- code/defines/procs/announcement.dm | 10 +++++++--- code/modules/shuttle/computers/dropship_computer.dm | 3 +++ code/modules/shuttle/shuttles/dropship.dm | 2 +- code/modules/shuttles/marine_ferry.dm | 2 +- 4 files changed, 12 insertions(+), 5 deletions(-) diff --git a/code/defines/procs/announcement.dm b/code/defines/procs/announcement.dm index 5223d63b8e59..60bf117a6b92 100644 --- a/code/defines/procs/announcement.dm +++ b/code/defines/procs/announcement.dm @@ -125,7 +125,7 @@ //AI shipside announcement, that uses announcement mechanic instead of talking into comms //to ensure that all humans on ship hear it regardless of comms and power -/proc/shipwide_ai_announcement(message, title = MAIN_AI_SYSTEM, sound_to_play = sound('sound/misc/interference.ogg'), signature) +/proc/shipwide_ai_announcement(message, title = MAIN_AI_SYSTEM, sound_to_play = sound('sound/misc/interference.ogg'), signature, ares_logging = ARES_LOG_MAIN) var/list/targets = GLOB.human_mob_list + GLOB.dead_mob_list for(var/mob/T in targets) if(isobserver(T)) @@ -136,8 +136,12 @@ if(!isnull(signature)) message += "

Signed by,
[signature]
" var/datum/ares_link/link = GLOB.ares_link - if(link.interface && !(link.interface.inoperable())) - link.log_ares_announcement(title, message) + if(ares_can_log()) + switch(ares_logging) + if(ARES_LOG_MAIN) + link.log_ares_announcement(title, message) + if(ARES_LOG_SECURITY) + link.log_ares_security(title, message) announcement_helper(message, title, targets, sound_to_play) diff --git a/code/modules/shuttle/computers/dropship_computer.dm b/code/modules/shuttle/computers/dropship_computer.dm index c7a79b9c44ca..954c91d9ca54 100644 --- a/code/modules/shuttle/computers/dropship_computer.dm +++ b/code/modules/shuttle/computers/dropship_computer.dm @@ -179,6 +179,9 @@ return to_chat(xeno, SPAN_NOTICE("You command the metal bird to come down. Clever girl.")) xeno_announcement(SPAN_XENOANNOUNCE("Your Queen has commanded the metal bird to the hive at [linked_lz]."), xeno.hivenumber, XENO_GENERAL_ANNOUNCE) + var/datum/ares_link/link = GLOB.ares_link + link.log_ares_flight("Unknown", "Remote launch signal for [shuttle.name] received. Authentication garbled.") + link.log_ares_security("Security Alert", "Remote launch signal for [shuttle.name] received. Authentication garbled.") return if(shuttle.destination.id != linked_lz) to_chat(xeno, "The shuttle not ready. The screen reads T-[shuttle.timeLeft(10)]. Have patience.") diff --git a/code/modules/shuttle/shuttles/dropship.dm b/code/modules/shuttle/shuttles/dropship.dm index d81484b0343d..e1c2bb9a1f9a 100644 --- a/code/modules/shuttle/shuttles/dropship.dm +++ b/code/modules/shuttle/shuttles/dropship.dm @@ -100,7 +100,7 @@ var/name = "Unidentified Lifesigns" var/input = "Unidentified lifesigns detected onboard. Recommendation: lockdown of exterior access ports, including ducting and ventilation." - shipwide_ai_announcement(input, name, 'sound/AI/unidentified_lifesigns.ogg') + shipwide_ai_announcement(input, name, 'sound/AI/unidentified_lifesigns.ogg', ares_logging = ARES_LOG_SECURITY) set_security_level(SEC_LEVEL_RED) return diff --git a/code/modules/shuttles/marine_ferry.dm b/code/modules/shuttles/marine_ferry.dm index 426d90c1457a..7ec4b2eb7333 100644 --- a/code/modules/shuttles/marine_ferry.dm +++ b/code/modules/shuttles/marine_ferry.dm @@ -230,7 +230,7 @@ if(X && X.stat != DEAD) var/name = "Unidentified Lifesigns" var/input = "Unidentified lifesigns detected onboard. Recommendation: lockdown of exterior access ports, including ducting and ventilation." - shipwide_ai_announcement(input, name, 'sound/AI/unidentified_lifesigns.ogg') + shipwide_ai_announcement(input, name, 'sound/AI/unidentified_lifesigns.ogg', ares_logging = ARES_LOG_SECURITY) set_security_level(SEC_LEVEL_RED) break