From 80438de31641d0079cfc66c89e7eeafbaaad3222 Mon Sep 17 00:00:00 2001 From: larentoun <31931237+larentoun@users.noreply.github.com> Date: Mon, 22 Apr 2024 23:46:20 +0300 Subject: [PATCH] Remove automatedannouncer mob (#24727) * remove automated announcer mob * remove list(z) from autosay * typo * remove more of unused role args * missed passing a value... * move comment * better check * better check * comment for say_understands * Update code/modules/mob/living/brain/living_brain.dm Co-authored-by: Charlie Nolan --------- Co-authored-by: Charlie Nolan --- code/__DEFINES/mob_defines.dm | 2 - code/game/machinery/computer/brigcells.dm | 2 +- code/game/machinery/computer/card.dm | 2 +- code/game/machinery/cryopod.dm | 2 +- code/game/machinery/doors/brigdoors.dm | 6 +-- code/game/machinery/tcomms/tcomms_base.dm | 2 +- .../items/devices/radio/radio_objects.dm | 31 +--------------- code/modules/admin/verbs/freeze.dm | 4 +- .../clothing/under/accessories/accessory.dm | 2 +- .../modules/mob/dead/observer/observer_say.dm | 17 ++++----- code/modules/mob/hear_say.dm | 15 ++++---- code/modules/mob/living/brain/living_brain.dm | 29 +++------------ .../mob/living/carbon/human/human_say.dm | 19 +++++----- .../carbon/human/species/diona_species.dm | 4 +- code/modules/mob/living/silicon/ai/ai_say.dm | 7 ++-- .../modules/mob/living/silicon/silicon_say.dm | 10 ++--- code/modules/mob/mob_say_base.dm | 37 +++++++++++-------- .../power/engines/supermatter/supermatter.dm | 18 ++++----- .../engines/supermatter/supermatter_event.dm | 4 +- code/modules/power/generators/turbine.dm | 2 +- 20 files changed, 87 insertions(+), 128 deletions(-) diff --git a/code/__DEFINES/mob_defines.dm b/code/__DEFINES/mob_defines.dm index 1d66a0504ff..ebc22191907 100644 --- a/code/__DEFINES/mob_defines.dm +++ b/code/__DEFINES/mob_defines.dm @@ -263,8 +263,6 @@ #define ispathsilicon(A) (ispath(A, /mob/living/silicon)) #define ispathanimal(A) (ispath(A, /mob/living/simple_animal)) -#define isAutoAnnouncer(A) (istype((A), /mob/living/automatedannouncer)) - #define iscameramob(A) (istype((A), /mob/camera)) #define isAIEye(A) (istype((A), /mob/camera/aiEye)) #define isovermind(A) (istype((A), /mob/camera/blob)) diff --git a/code/game/machinery/computer/brigcells.dm b/code/game/machinery/computer/brigcells.dm index 07a84e492f0..e87afa16c98 100644 --- a/code/game/machinery/computer/brigcells.dm +++ b/code/game/machinery/computer/brigcells.dm @@ -61,7 +61,7 @@ var/obj/machinery/door_timer/T = locate(ref) if(T) T.timer_end() - T.Radio.autosay("Timer stopped manually from a cell management console.", T.name, "Security", list(z)) + T.Radio.autosay("Timer stopped manually from a cell management console.", T.name, "Security") return TRUE return FALSE diff --git a/code/game/machinery/computer/card.dm b/code/game/machinery/computer/card.dm index 97a55c19cb0..40f707866e0 100644 --- a/code/game/machinery/computer/card.dm +++ b/code/game/machinery/computer/card.dm @@ -645,7 +645,7 @@ GLOBAL_VAR_INIT(time_last_changed_position, 0) if(R.fields["id"] == E.fields["id"]) if(status_valid_for_demotion(R.fields["criminal"])) set_criminal_status(usr, R, SEC_RECORD_STATUS_DEMOTE, reason, scan.assignment) - Radio.autosay("[scan.registered_name] ([scan.assignment]) has set [tempname] ([temprank]) to demote for: [reason]", name, "Command", list(z)) + Radio.autosay("[scan.registered_name] ([scan.assignment]) has set [tempname] ([temprank]) to demote for: [reason]", name, "Command") message_admins("[key_name_admin(usr)] ([scan.assignment]) has set [tempname] ([temprank]) to demote for: \"[reason]\"") log_game("[key_name(usr)] ([scan.assignment]) has set \"[tempname]\" ([temprank]) to demote for: \"[reason]\".") SSjobs.notify_by_name(tempname, "[scan.registered_name] ([scan.assignment]) has ordered your demotion. Report to their office, or the HOP. Reason given: \"[reason]\"") diff --git a/code/game/machinery/cryopod.dm b/code/game/machinery/cryopod.dm index f04445faf6f..f5a9f7ed6d8 100644 --- a/code/game/machinery/cryopod.dm +++ b/code/game/machinery/cryopod.dm @@ -433,7 +433,7 @@ announce.autosay("[occupant.real_name] ([announce_rank]) [on_store_message]", "[on_store_name]") 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/game/machinery/doors/brigdoors.dm b/code/game/machinery/doors/brigdoors.dm index fbc5c3fb08d..9af68c60df5 100644 --- a/code/game/machinery/doors/brigdoors.dm +++ b/code/game/machinery/doors/brigdoors.dm @@ -166,7 +166,7 @@ return if(timing) if(timeleft() <= 0) - Radio.autosay("Timer has expired. Releasing prisoner.", name, "Security", list(z)) + Radio.autosay("Timer has expired. Releasing prisoner.", name, "Security") occupant = CELL_NONE timer_end() // open doors, reset timer, clear status screen timing = FALSE @@ -385,7 +385,7 @@ return FALSE releasetime = world.timeofday + timetoset var/resettext = isobserver(usr) ? "for: [reset_reason]." : "by [usr.name] for: [reset_reason]." - Radio.autosay("Prisoner [occupant] had their timer reset [resettext]", name, "Security", list(z)) + Radio.autosay("Prisoner [occupant] had their timer reset [resettext]", name, "Security") notify_prisoner("Your brig timer has been reset for: '[reset_reason]'.") var/datum/data/record/R = find_security_record("name", occupant) if(istype(R)) @@ -396,7 +396,7 @@ if(timing) timer_end() var/stoptext = isobserver(usr) ? "from cell control." : "by [usr.name]." - Radio.autosay("Timer stopped manually [stoptext]", name, "Security", list(z)) + Radio.autosay("Timer stopped manually [stoptext]", name, "Security") else . = FALSE if("flash") diff --git a/code/game/machinery/tcomms/tcomms_base.dm b/code/game/machinery/tcomms/tcomms_base.dm index 2517ac6cacd..f89810dd4d8 100644 --- a/code/game/machinery/tcomms/tcomms_base.dm +++ b/code/game/machinery/tcomms/tcomms_base.dm @@ -191,7 +191,7 @@ GLOBAL_LIST_EMPTY(tcomms_machines) /// Origin of the signal var/datum/radio_frequency/connection /// Who sent it - var/mob/sender + var/atom/movable/sender /// The radio it was sent from var/obj/item/radio/radio /// The signal data (See defines/radio.dm) diff --git a/code/game/objects/items/devices/radio/radio_objects.dm b/code/game/objects/items/devices/radio/radio_objects.dm index 9553c14b5de..a26c5a126fa 100644 --- a/code/game/objects/items/devices/radio/radio_objects.dm +++ b/code/game/objects/items/devices/radio/radio_objects.dm @@ -256,7 +256,7 @@ GLOBAL_LIST_EMPTY(deadsay_radio_systems) /obj/item/radio/proc/ToggleReception() listening = !listening && !(wires.is_cut(WIRE_RADIO_RECEIVER) || wires.is_cut(WIRE_RADIO_SIGNAL)) -/obj/item/radio/proc/autosay(message, from, channel, role = "Unknown", follow_target_override) //BS12 EDIT +/obj/item/radio/proc/autosay(message, from, channel, follow_target_override) //BS12 EDIT var/datum/radio_frequency/connection = null if(channel && channels && length(channels) > 0) if(channel == "department") @@ -274,10 +274,6 @@ GLOBAL_LIST_EMPTY(deadsay_radio_systems) return if(!connection) return - var/mob/living/automatedannouncer/A = new /mob/living/automatedannouncer(src) - A.name = from - A.role = role - A.message = message var/jammed = FALSE for(var/obj/item/jammer/jammer in GLOB.active_jammers) if(get_dist(get_turf(src), get_turf(jammer)) < jammer.range) @@ -290,7 +286,7 @@ GLOBAL_LIST_EMPTY(deadsay_radio_systems) // Make us a message datum! var/datum/tcomms_message/tcm = new tcm.connection = connection - tcm.sender = A + tcm.sender = src tcm.radio = src tcm.sender_name = from tcm.message_pieces = message_pieces @@ -312,29 +308,6 @@ GLOBAL_LIST_EMPTY(deadsay_radio_systems) for(var/obj/machinery/tcomms/core/C in GLOB.tcomms_machines) C.handle_message(tcm) qdel(tcm) // Delete the message datum - qdel(A) - -// Just a dummy mob used for making announcements, so we don't create AIs to do this -// I'm not sure who thought that was a good idea. -- Crazylemon -/mob/living/automatedannouncer - var/role = "" - var/lifetime_timer - var/message = "" - universal_speak = TRUE - -/mob/living/automatedannouncer/New() - lifetime_timer = addtimer(CALLBACK(src, PROC_REF(autocleanup)), 10 SECONDS, TIMER_STOPPABLE) - ..() - -/mob/living/automatedannouncer/Destroy() - if(lifetime_timer) - deltimer(lifetime_timer) - lifetime_timer = null - return ..() - -/mob/living/automatedannouncer/proc/autocleanup() - stack_trace("An announcer somehow managed to outlive the radio! Deleting! (Message: [message])") - qdel(src) // Interprets the message mode when talking into a radio, possibly returning a connection datum /obj/item/radio/proc/handle_message_mode(mob/living/M as mob, list/message_pieces, message_mode) diff --git a/code/modules/admin/verbs/freeze.dm b/code/modules/admin/verbs/freeze.dm index 00f68307136..988c2df44b2 100644 --- a/code/modules/admin/verbs/freeze.dm +++ b/code/modules/admin/verbs/freeze.dm @@ -93,12 +93,12 @@ GLOBAL_LIST_EMPTY(frozen_atom_list) // A list of admin-frozen atoms. /obj/machinery/atmospherics/supermatter_crystal/admin_Freeze(client/admin) var/obj/effect/overlay/adminoverlay/freeze_overlay = new if(processes) - radio.autosay("Alert: Unknown intervention has frozen causality around the crystal. It is not progressing in local timespace.", name, "Engineering", list(z)) + radio.autosay("Alert: Unknown intervention has frozen causality around the crystal. It is not progressing in local timespace.", name, "Engineering") GLOB.frozen_atom_list += src processes = FALSE add_overlay(freeze_overlay) else - radio.autosay("Alert: Unknown intervention has ceased around the crystal. It has returned to the regular flow of time.", name, "Engineering", list(z)) + radio.autosay("Alert: Unknown intervention has ceased around the crystal. It has returned to the regular flow of time.", name, "Engineering") GLOB.frozen_atom_list -= src processes = TRUE cut_overlay(freeze_overlay) diff --git a/code/modules/clothing/under/accessories/accessory.dm b/code/modules/clothing/under/accessories/accessory.dm index 19cc8dbd095..3b7effb8727 100644 --- a/code/modules/clothing/under/accessories/accessory.dm +++ b/code/modules/clothing/under/accessories/accessory.dm @@ -231,7 +231,7 @@ return if(!is_station_level(user.z)) return - GLOB.global_announcer.autosay("[H] has been rewarded [src] by [user]!", "Medal Announcer", channel = channel, follow_target_override = src) + GLOB.global_announcer.autosay("[H] has been rewarded [src] by [user]!", "Medal Announcer", channel, src) channel = null // GOLD (awarded by centcom) diff --git a/code/modules/mob/dead/observer/observer_say.dm b/code/modules/mob/dead/observer/observer_say.dm index 3b97ab5d834..0f86ba90898 100644 --- a/code/modules/mob/dead/observer/observer_say.dm +++ b/code/modules/mob/dead/observer/observer_say.dm @@ -9,19 +9,18 @@ return say_dead(message) -/mob/dead/observer/handle_track(message, verb = "says", mob/speaker = null, speaker_name, atom/follow_target, hard_to_hear) +/mob/dead/observer/handle_track(message, verb = "says", atom/movable/speaker = null, speaker_name, atom/follow_target, hard_to_hear) return "[speaker_name] ([ghost_follow_link(follow_target, ghost=src)])" -/mob/dead/observer/handle_speaker_name(mob/speaker = null, vname, hard_to_hear, check_name_against) +/mob/dead/observer/handle_speaker_name(atom/movable/speaker = null, vname, hard_to_hear, check_name_against) var/speaker_name = ..() - if(!speaker) + if(!speaker || !ismob(speaker)) return speaker_name - //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(isAI(speaker) || isAutoAnnouncer(speaker)) + var/mob/speaker_mob = speaker + if(isAI(speaker_mob)) + //AI's can't pretend to be other mobs. return speaker_name - if(!check_name_against) - check_name_against = speaker_name - if(check_name_against == speaker.real_name) + if(!check_name_against || check_name_against == speaker_mob.real_name) return speaker_name - speaker_name = "[speaker.real_name] ([speaker_name])" + speaker_name = "[speaker_mob.real_name] ([speaker_name])" return speaker_name diff --git a/code/modules/mob/hear_say.dm b/code/modules/mob/hear_say.dm index b8d064d5d0c..f5f6e0e1ec1 100644 --- a/code/modules/mob/hear_say.dm +++ b/code/modules/mob/hear_say.dm @@ -1,6 +1,6 @@ // At minimum every mob has a hear_say proc. -/mob/proc/combine_message(list/message_pieces, verb, mob/speaker, always_stars = FALSE) +/mob/proc/combine_message(list/message_pieces, verb, atom/movable/speaker, always_stars = FALSE) var/iteration_count = 0 var/msg = "" // This is to make sure that the pieces have actually added something for(var/datum/multilingual_say_piece/SP in message_pieces) @@ -128,7 +128,7 @@ playsound_local(source, speech_sound, sound_vol, 1, sound_frequency) -/mob/proc/hear_radio(list/message_pieces, verb = "says", part_a, part_b, mob/speaker = null, hard_to_hear = 0, vname = "", atom/follow_target, check_name_against) +/mob/proc/hear_radio(list/message_pieces, verb = "says", part_a, part_b, atom/movable/speaker = null, hard_to_hear = 0, vname = "", atom/follow_target, check_name_against) if(!client) return @@ -155,7 +155,7 @@ else to_chat(src, "[part_a][speaker_name][part_b][message]") -/mob/proc/handle_speaker_name(mob/speaker = null, vname, hard_to_hear) +/mob/proc/handle_speaker_name(atom/movable/speaker = null, vname, hard_to_hear) var/speaker_name = "unknown" if(speaker) speaker_name = speaker.name @@ -168,7 +168,7 @@ return speaker_name -/mob/proc/handle_track(message, verb = "says", mob/speaker = null, speaker_name, atom/follow_target, hard_to_hear) +/mob/proc/handle_track(message, verb = "says", atom/movable/speaker = null, speaker_name, atom/follow_target, hard_to_hear) return /mob/proc/hear_sleep(message) @@ -192,7 +192,7 @@ to_chat(src, heard) -/mob/proc/hear_holopad_talk(list/message_pieces, verb = "says", mob/speaker = null, obj/effect/overlay/holo_pad_hologram/H) +/mob/proc/hear_holopad_talk(list/message_pieces, verb = "says", atom/movable/speaker = null, obj/effect/overlay/holo_pad_hologram/H) if(stat == UNCONSCIOUS) hear_sleep(multilingual_to_message(message_pieces)) return @@ -204,8 +204,9 @@ var/message_unverbed = combine_message(message_pieces, null, speaker) var/name = speaker.name - if(!say_understands(speaker)) - name = speaker.voice_name + if(!say_understands(speaker) && ismob(speaker)) + var/mob/speaker_mob = speaker + name = speaker_mob.voice_name if((client?.prefs.toggles2 & PREFTOGGLE_2_RUNECHAT) && can_hear()) create_chat_message(H, message_unverbed) diff --git a/code/modules/mob/living/brain/living_brain.dm b/code/modules/mob/living/brain/living_brain.dm index 46a63baf1b8..5ad1d5ac57d 100644 --- a/code/modules/mob/living/brain/living_brain.dm +++ b/code/modules/mob/living/brain/living_brain.dm @@ -18,31 +18,14 @@ return ..() /mob/living/brain/say_understands(other)//Goddamn is this hackish, but this say code is so odd - if(isAI(other)) - if(!(container && istype(container, /obj/item/mmi))) - return 0 - else - return 1 - if(istype(other, /mob/living/silicon/decoy)) - if(!(container && istype(container, /obj/item/mmi))) - return 0 - else - return 1 - if(ispAI(other)) - if(!(container && istype(container, /obj/item/mmi))) - return 0 - else - return 1 - if(isrobot(other)) - if(!(container && istype(container, /obj/item/mmi))) - return 0 - else - return 1 + if(!ismob(other)) + return ..() + if(issilicon(other)) + return istype(container, /obj/item/mmi) if(ishuman(other)) - return 1 + return TRUE if(isslime(other)) - return 1 - return ..() + return TRUE /mob/living/brain/ex_act() //you cant blow up brainmobs because it makes transfer_to() freak out when borgs blow up. return diff --git a/code/modules/mob/living/carbon/human/human_say.dm b/code/modules/mob/living/carbon/human/human_say.dm index 0041ca03dbf..f992b4215c7 100644 --- a/code/modules/mob/living/carbon/human/human_say.dm +++ b/code/modules/mob/living/carbon/human/human_say.dm @@ -6,23 +6,24 @@ return " (as [get_id_name("Unknown")])" return ..() -/mob/living/carbon/human/say_understands(mob/other, datum/language/speaking = null) +/mob/living/carbon/human/say_understands(atom/movable/other, datum/language/speaking = null) if(dna.species.can_understand(other)) - return 1 + return TRUE //These only pertain to common. Languages are handled by mob/say_understands() - if(!speaking) + if(!speaking && ismob(other)) if(isnymph(other)) - if(length(other.languages) >= 2) //They've sucked down some blood and can speak common now. - return 1 + var/mob/nymph = other + if(length(nymph.languages) >= 2) //They've sucked down some blood and can speak common now. + return TRUE if(issilicon(other)) - return 1 + return TRUE if(isbot(other)) - return 1 + return TRUE if(isbrain(other)) - return 1 + return TRUE if(isslime(other)) - return 1 + return TRUE return ..() diff --git a/code/modules/mob/living/carbon/human/species/diona_species.dm b/code/modules/mob/living/carbon/human/species/diona_species.dm index 8fd6d96e22d..0bd8e688321 100644 --- a/code/modules/mob/living/carbon/human/species/diona_species.dm +++ b/code/modules/mob/living/carbon/human/species/diona_species.dm @@ -63,8 +63,8 @@ /datum/species/diona/can_understand(mob/other) if(isnymph(other)) - return 1 - return 0 + return TRUE + return FALSE /datum/species/diona/on_species_gain(mob/living/carbon/human/H) ..() diff --git a/code/modules/mob/living/silicon/ai/ai_say.dm b/code/modules/mob/living/silicon/ai/ai_say.dm index 5f9535b43c1..1e676eb05a3 100644 --- a/code/modules/mob/living/silicon/ai/ai_say.dm +++ b/code/modules/mob/living/silicon/ai/ai_say.dm @@ -3,7 +3,7 @@ */ -/mob/living/silicon/ai/handle_track(message, verb = "says", mob/speaker = null, speaker_name, atom/follow_target, hard_to_hear) +/mob/living/silicon/ai/handle_track(message, verb = "says", atom/movable/speaker = null, speaker_name, atom/follow_target, hard_to_hear) if(hard_to_hear) return @@ -34,9 +34,8 @@ jobname = "Cyborg" else if(ispAI(speaker)) jobname = "Personal AI" - else if(isAutoAnnouncer(speaker)) - var/mob/living/automatedannouncer/AA = speaker - jobname = AA.role + else if(isradio(speaker)) + jobname = "Automated Announcement" else jobname = "Unknown" diff --git a/code/modules/mob/living/silicon/silicon_say.dm b/code/modules/mob/living/silicon/silicon_say.dm index 0420cccf33f..43eae896cac 100644 --- a/code/modules/mob/living/silicon/silicon_say.dm +++ b/code/modules/mob/living/silicon/silicon_say.dm @@ -58,15 +58,15 @@ /mob/living/silicon/say_understands(other, datum/language/speaking = null) //These only pertain to common. Languages are handled by mob/say_understands() - if(!speaking) + if(!speaking && ismob(other)) if(iscarbon(other)) - return 1 + return TRUE if(issilicon(other)) - return 1 + return TRUE if(isbot(other)) - return 1 + return TRUE if(isbrain(other)) - return 1 + return TRUE return ..() //For holopads only. Usable by AI. diff --git a/code/modules/mob/mob_say_base.dm b/code/modules/mob/mob_say_base.dm index 9182f8e6e35..6b193b3fe96 100644 --- a/code/modules/mob/mob_say_base.dm +++ b/code/modules/mob/mob_say_base.dm @@ -69,36 +69,41 @@ create_log(DEADCHAT_LOG, message) log_ghostsay(message, src) -/mob/proc/say_understands(mob/other, datum/language/speaking = null) +/** + * Checks if the mob can understand the other speaker + * + * If it return FALSE, then the message will have some letters replaced with stars from the heard message +*/ +/mob/proc/say_understands(atom/movable/other, datum/language/speaking = null) if(stat == DEAD) - return 1 + return TRUE //Universal speak makes everything understandable, for obvious reasons. if(universal_speak || universal_understand) - return 1 + return TRUE //Languages are handled after. if(!speaking) - if(!other) - return 1 - if(other.universal_speak) - return 1 - if(isAI(src) && ispAI(other)) - return 1 - if(istype(other, src.type) || istype(src, other.type)) - return 1 - return 0 + if(!other || !ismob(other)) + return TRUE + var/mob/other_mob = other + if(other_mob.universal_speak) + return TRUE + if(isAI(src) && ispAI(other_mob)) + return TRUE + if(istype(other_mob, src.type) || istype(src, other_mob.type)) + return TRUE + return FALSE if(speaking.flags & INNATE) - return 1 + return TRUE //Language check. for(var/datum/language/L in languages) if(speaking.name == L.name) - return 1 - - return 0 + return TRUE + return FALSE /mob/proc/say_quote(message, datum/language/speaking = null) var/verb = "says" diff --git a/code/modules/power/engines/supermatter/supermatter.dm b/code/modules/power/engines/supermatter/supermatter.dm index cf777dbae3b..3fc0b2826da 100644 --- a/code/modules/power/engines/supermatter/supermatter.dm +++ b/code/modules/power/engines/supermatter/supermatter.dm @@ -328,7 +328,7 @@ var/turf/T = get_turf(M) if(istype(T) && atoms_share_level(T, src)) // if the player is on the same zlevel as the SM shared SEND_SOUND(M, sound('sound/machines/engine_alert2.ogg')) // then send them the sound file - radio.autosay(speaking, name, null, list(z)) + radio.autosay(speaking, name, null) for(var/i in SUPERMATTER_COUNTDOWN_TIME to 0 step -10) if(!processes) // Stop exploding if you're frozen by an admin, damn you cut_overlay(causality_field, TRUE) @@ -336,7 +336,7 @@ damage = explosion_point - 1 // One point below exploding, so it will re-start the countdown once unfrozen return if(damage < explosion_point) // Cutting it a bit close there engineers - radio.autosay("[safe_alert] Failsafe has been disengaged.", name, null, list(z)) + radio.autosay("[safe_alert] Failsafe has been disengaged.", name, null) cut_overlay(causality_field, TRUE) final_countdown = FALSE remove_filter(list("outline", "icon")) @@ -348,7 +348,7 @@ speaking = "[DisplayTimeText(i, TRUE)] remain before causality stabilization." else speaking = "[i*0.1]..." - radio.autosay(speaking, name, null, list(z)) + radio.autosay(speaking, name, null) sleep(10) explode() @@ -648,27 +648,27 @@ //Oh shit it's bad, time to freak out if(damage > emergency_point) - radio.autosay("[emergency_alert] Integrity: [get_integrity()]%", name, null, list(z)) + radio.autosay("[emergency_alert] Integrity: [get_integrity()]%", name, null) lastwarning = REALTIMEOFDAY if(!has_reached_emergency) investigate_log("has reached the emergency point for the first time.", "supermatter") message_admins("[src] has reached the emergency point [ADMIN_JMP(src)].") has_reached_emergency = TRUE else if(damage >= damage_archived) // The damage is still going up - radio.autosay("[warning_alert] Integrity: [get_integrity()]%", name, "Engineering", list(z)) + radio.autosay("[warning_alert] Integrity: [get_integrity()]%", name, "Engineering") lastwarning = REALTIMEOFDAY - (WARNING_DELAY * 5) else // Phew, we're safe - radio.autosay("[safe_alert] Integrity: [get_integrity()]%", name, "Engineering", list(z)) + radio.autosay("[safe_alert] Integrity: [get_integrity()]%", name, "Engineering") lastwarning = REALTIMEOFDAY if(power > POWER_PENALTY_THRESHOLD) - radio.autosay("Warning: Hyperstructure has reached dangerous power level.", name, "Engineering", list(z)) + radio.autosay("Warning: Hyperstructure has reached dangerous power level.", name, "Engineering") if(powerloss_inhibitor < 0.5) - radio.autosay("DANGER: CHARGE INERTIA CHAIN REACTION IN PROGRESS.", name, "Engineering", list(z)) + radio.autosay("DANGER: CHARGE INERTIA CHAIN REACTION IN PROGRESS.", name, "Engineering") if(combined_gas > MOLE_CRUNCH_THRESHOLD) - radio.autosay("Warning: Critical coolant mass reached.", name, "Engineering", list(z)) + radio.autosay("Warning: Critical coolant mass reached.", name, "Engineering") //Boom (Mind blown) if(damage > explosion_point) countdown() diff --git a/code/modules/power/engines/supermatter/supermatter_event.dm b/code/modules/power/engines/supermatter/supermatter_event.dm index db17530f41e..8af8c5ef9b3 100644 --- a/code/modules/power/engines/supermatter/supermatter_event.dm +++ b/code/modules/power/engines/supermatter/supermatter_event.dm @@ -43,12 +43,12 @@ /datum/supermatter_event/proc/sm_radio_say(text) if(!text) return - supermatter.radio.autosay(text, supermatter, "Engineering", list(supermatter.z)) + supermatter.radio.autosay(text, supermatter, "Engineering") /datum/supermatter_event/proc/general_radio_say(text) if(!text) return - supermatter.radio.autosay(text, supermatter, null, list(supermatter.z)) + supermatter.radio.autosay(text, supermatter, null) // Below this are procs used for the SM events, in order of severity diff --git a/code/modules/power/generators/turbine.dm b/code/modules/power/generators/turbine.dm index a9e7ca43a04..cd8a1078922 100644 --- a/code/modules/power/generators/turbine.dm +++ b/code/modules/power/generators/turbine.dm @@ -174,7 +174,7 @@ starter = FALSE last_overheat = world.time overheat -= 50 - radio.autosay(OVERHEAT_MESSAGE, name, "Engineering", list(z)) + radio.autosay(OVERHEAT_MESSAGE, name, "Engineering") playsound(src, 'sound/machines/buzz-two.ogg', 100, FALSE, 40, 30, falloff_distance = 10) /obj/machinery/power/compressor/proc/time_until_overheat_done()