diff --git a/code/game/gamemodes/malfunction/Malf_Modules.dm b/code/game/gamemodes/malfunction/Malf_Modules.dm
index 199c07cf86..556ac28732 100644
--- a/code/game/gamemodes/malfunction/Malf_Modules.dm
+++ b/code/game/gamemodes/malfunction/Malf_Modules.dm
@@ -1,3 +1,4 @@
+#define DEFAULT_DOOMSDAY_TIMER 4500
/datum/AI_Module
var/uses = 0
var/module_name
@@ -37,12 +38,13 @@
to_chat(src, "Doomsday device armed.")
priority_announce("Hostile runtimes detected in all station systems, please deactivate your AI to prevent possible damage to its morality core.", "Anomaly Alert", 'sound/AI/aimalf.ogg')
set_security_level("delta")
- nuking = 1
- var/obj/machinery/doomsday_device/DOOM = new /obj/machinery/doomsday_device(src)
+ nuking = TRUE
+ var/obj/machinery/doomsday_device/DOOM = new (src)
doomsday_device = DOOM
doomsday_device.start()
verbs -= /mob/living/silicon/ai/proc/nuke_station
- for(var/obj/item/weapon/pinpointer/P in GLOB.pinpointer_list)
+ for(var/pinpointer in GLOB.pinpointer_list)
+ var/obj/item/weapon/pinpointer/P = pinpointer
P.switch_mode_to(TRACK_MALF_AI) //Pinpointers start tracking the AI wherever it goes
/obj/machinery/doomsday_device
@@ -50,34 +52,32 @@
name = "doomsday device"
icon_state = "nuclearbomb_base"
desc = "A weapon which disintegrates all organic life in a large area."
- anchored = 1
- density = 1
+ anchored = TRUE
+ density = TRUE
verb_exclaim = "blares"
var/timing = FALSE
- var/default_timer = 4500
var/obj/effect/countdown/doomsday/countdown
var/detonation_timer
- var/list/milestones = list()
+ var/list/milestones
-/obj/machinery/doomsday_device/New()
- ..()
+/obj/machinery/doomsday_device/Initialize()
+ . = ..()
countdown = new(src)
+ milestones = list()
/obj/machinery/doomsday_device/Destroy()
- if(countdown)
- qdel(countdown)
- countdown = null
+ QDEL_NULL(countdown)
STOP_PROCESSING(SSfastprocess, src)
SSshuttle.clearHostileEnvironment(src)
SSmapping.remove_nuke_threat(src)
for(var/A in GLOB.ai_list)
- var/mob/living/silicon/ai/Mlf = A
- if(Mlf.doomsday_device == src)
- Mlf.doomsday_device = null
- . = ..()
+ var/mob/living/silicon/ai/AI = A
+ if(AI.doomsday_device == src)
+ AI.doomsday_device = null
+ return ..()
/obj/machinery/doomsday_device/proc/start()
- detonation_timer = world.time + default_timer
+ detonation_timer = world.time + DEFAULT_DOOMSDAY_TIMER
timing = TRUE
countdown.start()
START_PROCESSING(SSfastprocess, src)
@@ -90,24 +90,24 @@
/obj/machinery/doomsday_device/process()
var/turf/T = get_turf(src)
if(!T || T.z != ZLEVEL_STATION)
- minor_announce("DOOMSDAY DEVICE OUT OF STATION RANGE, ABORTING", "ERROR ER0RR $R0RRO$!R41.%%!!(%$^^__+ @#F0E4", 1)
+ minor_announce("DOOMSDAY DEVICE OUT OF STATION RANGE, ABORTING", "ERROR ER0RR $R0RRO$!R41.%%!!(%$^^__+ @#F0E4", TRUE)
SSshuttle.clearHostileEnvironment(src)
qdel(src)
+ return
if(!timing)
STOP_PROCESSING(SSfastprocess, src)
return
var/sec_left = seconds_remaining()
- if(sec_left <= 0)
+ if(!sec_left)
timing = FALSE
detonate(T.z)
else
var/key = num2text(sec_left)
if(!(sec_left % 60) && !(key in milestones))
milestones[key] = TRUE
- var/message = "[key] SECONDS UNTIL DOOMSDAY DEVICE ACTIVATION!"
- minor_announce(message, "ERROR ER0RR $R0RRO$!R41.%%!!(%$^^__+ @#F0E4", 1)
+ minor_announce("[key] SECONDS UNTIL DOOMSDAY DEVICE ACTIVATION!", "ERROR ER0RR $R0RRO$!R41.%%!!(%$^^__+ @#F0E4", TRUE)
-/obj/machinery/doomsday_device/proc/detonate(z_level = 1)
+/obj/machinery/doomsday_device/proc/detonate(z_level = ZLEVEL_STATION)
for(var/mob/M in GLOB.player_list)
M << 'sound/machines/Alarm.ogg'
sleep(100)
@@ -604,3 +604,6 @@
eyeobj.relay_speech = TRUE
to_chat(src, "OTA firmware distribution complete! Cameras upgraded: Enhanced surveillance package online.")
verbs -= /mob/living/silicon/ai/proc/surveillance
+
+
+#undef DEFAULT_DOOMSDAY_TIMER
\ No newline at end of file