diff --git a/code/ATMOSPHERICS/_atmos_setup.dm b/code/ATMOSPHERICS/_atmos_setup.dm
index 4b2c4d1d28..172d95b0ac 100644
--- a/code/ATMOSPHERICS/_atmos_setup.dm
+++ b/code/ATMOSPHERICS/_atmos_setup.dm
@@ -6,8 +6,6 @@
// atmospherics devices.
//--------------------------------------------
-GLOBAL_LIST_INIT(pipe_colors, list("grey" = PIPE_COLOR_GREY, "red" = PIPE_COLOR_RED, "blue" = PIPE_COLOR_BLUE, "cyan" = PIPE_COLOR_CYAN, "green" = PIPE_COLOR_GREEN, "yellow" = PIPE_COLOR_YELLOW, "black" = PIPE_COLOR_BLACK, "orange" = PIPE_COLOR_ORANGE, "white" = PIPE_COLOR_WHITE, "purple" = PIPE_COLOR_PURPLE))
-
/proc/pipe_color_lookup(var/color)
for(var/C in GLOB.pipe_colors)
if(color == GLOB.pipe_colors[C])
diff --git a/code/ATMOSPHERICS/atmospherics.dm b/code/ATMOSPHERICS/atmospherics.dm
index 1f598436a7..aba125e7b8 100644
--- a/code/ATMOSPHERICS/atmospherics.dm
+++ b/code/ATMOSPHERICS/atmospherics.dm
@@ -38,8 +38,6 @@ Pipelines + Other Objects -> Pipe network
/obj/machinery/atmospherics/Initialize(mapload, newdir)
. = ..()
- if(!icon_manager)
- icon_manager = new()
if(!isnull(newdir))
set_dir(newdir)
if(!pipe_color)
@@ -91,28 +89,16 @@ Pipelines + Other Objects -> Pipe network
if(node)
if(!T.is_plating() && node.level == 1 && istype(node, /obj/machinery/atmospherics/pipe))
//underlays += icon_manager.get_atmos_icon("underlay_down", direction, color_cache_name(node))
- underlays += icon_manager.get_atmos_icon("underlay", direction, color_cache_name(node), "down" + icon_connect_type)
+ underlays += GLOB.icon_manager.get_atmos_icon("underlay", direction, color_cache_name(node), "down" + icon_connect_type)
else
//underlays += icon_manager.get_atmos_icon("underlay_intact", direction, color_cache_name(node))
- underlays += icon_manager.get_atmos_icon("underlay", direction, color_cache_name(node), "intact" + icon_connect_type)
+ underlays += GLOB.icon_manager.get_atmos_icon("underlay", direction, color_cache_name(node), "intact" + icon_connect_type)
else
//underlays += icon_manager.get_atmos_icon("underlay_exposed", direction, pipe_color)
- underlays += icon_manager.get_atmos_icon("underlay", direction, color_cache_name(node), "exposed" + icon_connect_type)
+ underlays += GLOB.icon_manager.get_atmos_icon("underlay", direction, color_cache_name(node), "exposed" + icon_connect_type)
/obj/machinery/atmospherics/proc/update_underlays()
- if(check_icon_cache())
- return 1
- else
- return 0
-
-/obj/machinery/atmospherics/proc/check_icon_cache(var/safety = 0)
- if(!istype(icon_manager))
- if(!safety) //to prevent infinite loops
- icon_manager = new()
- check_icon_cache(1)
- return 0
-
- return 1
+ return TRUE
/obj/machinery/atmospherics/proc/color_cache_name(var/obj/machinery/atmospherics/node)
//Don't use this for standard pipes
diff --git a/code/ATMOSPHERICS/components/binary_devices/dp_vent_pump.dm b/code/ATMOSPHERICS/components/binary_devices/dp_vent_pump.dm
index 3fa56b7da8..efde351896 100644
--- a/code/ATMOSPHERICS/components/binary_devices/dp_vent_pump.dm
+++ b/code/ATMOSPHERICS/components/binary_devices/dp_vent_pump.dm
@@ -64,9 +64,6 @@
air2.volume = ATMOS_DEFAULT_VOLUME_PUMP + 800
/obj/machinery/atmospherics/binary/dp_vent_pump/update_icon(var/safety = 0)
- if(!check_icon_cache())
- return
-
cut_overlays()
var/vent_icon = "vent"
@@ -83,25 +80,25 @@
else
vent_icon += "[use_power ? "[pump_direction ? "out" : "in"]" : "off"]"
- add_overlay(icon_manager.get_atmos_icon("device", , , vent_icon))
+ add_overlay(GLOB.icon_manager.get_atmos_icon("device", , , vent_icon))
/obj/machinery/atmospherics/binary/dp_vent_pump/update_underlays()
- if(..())
- underlays.Cut()
- var/turf/T = get_turf(src)
- if(!istype(T))
- return
- if(!T.is_plating() && node1 && node2 && node1.level == 1 && node2.level == 1 && istype(node1, /obj/machinery/atmospherics/pipe) && istype(node2, /obj/machinery/atmospherics/pipe))
- return
+ ..()
+ underlays.Cut()
+ var/turf/T = get_turf(src)
+ if(!istype(T))
+ return
+ if(!T.is_plating() && node1 && node2 && node1.level == 1 && node2.level == 1 && istype(node1, /obj/machinery/atmospherics/pipe) && istype(node2, /obj/machinery/atmospherics/pipe))
+ return
+ else
+ if (node1)
+ add_underlay(T, node1, turn(dir, -180), node1.icon_connect_type)
else
- if (node1)
- add_underlay(T, node1, turn(dir, -180), node1.icon_connect_type)
- else
- add_underlay(T, node1, turn(dir, -180))
- if (node2)
- add_underlay(T, node2, dir, node2.icon_connect_type)
- else
- add_underlay(T, node2, dir)
+ add_underlay(T, node1, turn(dir, -180))
+ if (node2)
+ add_underlay(T, node2, dir, node2.icon_connect_type)
+ else
+ add_underlay(T, node2, dir)
/obj/machinery/atmospherics/binary/dp_vent_pump/hide(var/i)
update_icon()
diff --git a/code/ATMOSPHERICS/components/binary_devices/passive_gate.dm b/code/ATMOSPHERICS/components/binary_devices/passive_gate.dm
index 9ac395439d..cb39381e4b 100644
--- a/code/ATMOSPHERICS/components/binary_devices/passive_gate.dm
+++ b/code/ATMOSPHERICS/components/binary_devices/passive_gate.dm
@@ -42,13 +42,13 @@
icon_state = (unlocked && flowing)? "on" : "off"
/obj/machinery/atmospherics/binary/passive_gate/update_underlays()
- if(..())
- underlays.Cut()
- var/turf/T = get_turf(src)
- if(!istype(T))
- return
- add_underlay(T, node1, turn(dir, 180))
- add_underlay(T, node2, dir)
+ ..()
+ underlays.Cut()
+ var/turf/T = get_turf(src)
+ if(!istype(T))
+ return
+ add_underlay(T, node1, turn(dir, 180))
+ add_underlay(T, node2, dir)
/obj/machinery/atmospherics/binary/passive_gate/hide(var/i)
update_underlays()
diff --git a/code/ATMOSPHERICS/components/binary_devices/pump.dm b/code/ATMOSPHERICS/components/binary_devices/pump.dm
index 450f8bf021..b731b2c3e5 100644
--- a/code/ATMOSPHERICS/components/binary_devices/pump.dm
+++ b/code/ATMOSPHERICS/components/binary_devices/pump.dm
@@ -80,13 +80,13 @@ Thus, the two variables affect pump operation are set in New():
icon_state = "[use_power ? "[base_icon]-on" : "[base_icon]-off"]"
/obj/machinery/atmospherics/binary/pump/update_underlays()
- if(..())
- underlays.Cut()
- var/turf/T = get_turf(src)
- if(!istype(T))
- return
- add_underlay(T, node1, turn(dir, -180), node1?.icon_connect_type)
- add_underlay(T, node2, dir, node2?.icon_connect_type)
+ ..()
+ underlays.Cut()
+ var/turf/T = get_turf(src)
+ if(!istype(T))
+ return
+ add_underlay(T, node1, turn(dir, -180), node1?.icon_connect_type)
+ add_underlay(T, node2, dir, node2?.icon_connect_type)
/obj/machinery/atmospherics/binary/pump/hide(var/i)
update_underlays()
diff --git a/code/ATMOSPHERICS/components/binary_devices/volume_pump.dm b/code/ATMOSPHERICS/components/binary_devices/volume_pump.dm
index 4945a83cd9..e0cd6f58f2 100644
--- a/code/ATMOSPHERICS/components/binary_devices/volume_pump.dm
+++ b/code/ATMOSPHERICS/components/binary_devices/volume_pump.dm
@@ -88,13 +88,13 @@ Thus, the two variables affect pump operation are set in New():
cut_overlay(overclock_overlay)
/obj/machinery/atmospherics/binary/volume_pump/update_underlays()
- if(..())
- underlays.Cut()
- var/turf/T = get_turf(src)
- if(!istype(T))
- return
- add_underlay(T, node1, turn(dir, -180), node1?.icon_connect_type)
- add_underlay(T, node2, dir, node2?.icon_connect_type)
+ ..()
+ underlays.Cut()
+ var/turf/T = get_turf(src)
+ if(!istype(T))
+ return
+ add_underlay(T, node1, turn(dir, -180), node1?.icon_connect_type)
+ add_underlay(T, node2, dir, node2?.icon_connect_type)
/obj/machinery/atmospherics/binary/volume_pump/hide(var/i)
update_underlays()
diff --git a/code/ATMOSPHERICS/components/omni_devices/omni_base.dm b/code/ATMOSPHERICS/components/omni_devices/omni_base.dm
index bc4bec9958..e767140ff2 100644
--- a/code/ATMOSPHERICS/components/omni_devices/omni_base.dm
+++ b/code/ATMOSPHERICS/components/omni_devices/omni_base.dm
@@ -106,9 +106,6 @@
return
/obj/machinery/atmospherics/omni/proc/build_icons()
- if(!check_icon_cache())
- return
-
var/core_icon = null
if(istype(src, /obj/machinery/atmospherics/omni/mixer))
core_icon = "mixer"
@@ -119,16 +116,13 @@
//directional icons are layers 1-4, with the core icon on layer 5
if(core_icon)
- overlays_off[5] = icon_manager.get_atmos_icon("omni", , , core_icon)
- overlays_on[5] = icon_manager.get_atmos_icon("omni", , , core_icon + "_glow")
+ overlays_off[5] = GLOB.icon_manager.get_atmos_icon("omni", , , core_icon)
+ overlays_on[5] = GLOB.icon_manager.get_atmos_icon("omni", , , core_icon + "_glow")
- overlays_error[1] = icon_manager.get_atmos_icon("omni", , , core_icon)
- overlays_error[2] = icon_manager.get_atmos_icon("omni", , , "error")
+ overlays_error[1] = GLOB.icon_manager.get_atmos_icon("omni", , , core_icon)
+ overlays_error[2] = GLOB.icon_manager.get_atmos_icon("omni", , , "error")
/obj/machinery/atmospherics/omni/proc/update_port_icons()
- if(!check_icon_cache())
- return
-
for(var/datum/omni_port/P in ports)
if(P.update)
var/ref_layer = 0
@@ -179,8 +173,8 @@
ic_on += "_filter"
ic_off += "_out"
- ic_on = icon_manager.get_atmos_icon("omni", , , ic_on)
- ic_off = icon_manager.get_atmos_icon("omni", , , ic_off)
+ ic_on = GLOB.icon_manager.get_atmos_icon("omni", , , ic_on)
+ ic_off = GLOB.icon_manager.get_atmos_icon("omni", , , ic_off)
var/pipe_state
var/turf/T = get_turf(src)
@@ -188,10 +182,10 @@
return
if(!T.is_plating() && istype(P.node, /obj/machinery/atmospherics/pipe) && P.node.level == 1 )
//pipe_state = icon_manager.get_atmos_icon("underlay_down", P.dir, color_cache_name(P.node))
- pipe_state = icon_manager.get_atmos_icon("underlay", P.dir, color_cache_name(P.node), "down")
+ pipe_state = GLOB.icon_manager.get_atmos_icon("underlay", P.dir, color_cache_name(P.node), "down")
else
//pipe_state = icon_manager.get_atmos_icon("underlay_intact", P.dir, color_cache_name(P.node))
- pipe_state = icon_manager.get_atmos_icon("underlay", P.dir, color_cache_name(P.node), "intact")
+ pipe_state = GLOB.icon_manager.get_atmos_icon("underlay", P.dir, color_cache_name(P.node), "intact")
return list("on_icon" = ic_on, "off_icon" = ic_off, "pipe_icon" = pipe_state)
diff --git a/code/ATMOSPHERICS/components/portables_connector.dm b/code/ATMOSPHERICS/components/portables_connector.dm
index e692557d34..8f163cd670 100644
--- a/code/ATMOSPHERICS/components/portables_connector.dm
+++ b/code/ATMOSPHERICS/components/portables_connector.dm
@@ -42,12 +42,12 @@
icon_state = "connector"
/obj/machinery/atmospherics/portables_connector/update_underlays()
- if(..())
- underlays.Cut()
- var/turf/T = get_turf(src)
- if(!istype(T))
- return
- add_underlay(T, node, dir, node?.icon_connect_type)
+ ..()
+ underlays.Cut()
+ var/turf/T = get_turf(src)
+ if(!istype(T))
+ return
+ add_underlay(T, node, dir, node?.icon_connect_type)
/obj/machinery/atmospherics/portables_connector/hide(var/i)
update_underlays()
diff --git a/code/ATMOSPHERICS/components/trinary_devices/trinary_base.dm b/code/ATMOSPHERICS/components/trinary_devices/trinary_base.dm
index 48647c02a0..60421bdbae 100644
--- a/code/ATMOSPHERICS/components/trinary_devices/trinary_base.dm
+++ b/code/ATMOSPHERICS/components/trinary_devices/trinary_base.dm
@@ -32,15 +32,15 @@
initialize_directions = get_initialize_directions_trinary(dir, mirrored, tee)
/obj/machinery/atmospherics/trinary/update_underlays()
- if(..())
- underlays.Cut()
- var/turf/T = get_turf(src)
- if(!istype(T))
- return
- var/list/node_connects = get_node_connect_dirs()
- add_underlay(T, node1, node_connects[1])
- add_underlay(T, node2, node_connects[2])
- add_underlay(T, node3, node_connects[3])
+ ..()
+ underlays.Cut()
+ var/turf/T = get_turf(src)
+ if(!istype(T))
+ return
+ var/list/node_connects = get_node_connect_dirs()
+ add_underlay(T, node1, node_connects[1])
+ add_underlay(T, node2, node_connects[2])
+ add_underlay(T, node3, node_connects[3])
/obj/machinery/atmospherics/trinary/hide(var/i)
update_underlays()
diff --git a/code/ATMOSPHERICS/components/tvalve.dm b/code/ATMOSPHERICS/components/tvalve.dm
index 904ae90e47..548127f502 100644
--- a/code/ATMOSPHERICS/components/tvalve.dm
+++ b/code/ATMOSPHERICS/components/tvalve.dm
@@ -34,15 +34,15 @@
icon_state = "tvalve[mirrored ? "m" : ""][state]"
/obj/machinery/atmospherics/tvalve/update_underlays()
- if(..())
- underlays.Cut()
- var/turf/T = get_turf(src)
- if(!istype(T))
- return
- var/list/node_connects = get_node_connect_dirs()
- add_underlay(T, node1, node_connects[1])
- add_underlay(T, node2, node_connects[2])
- add_underlay(T, node3, node_connects[3])
+ ..()
+ underlays.Cut()
+ var/turf/T = get_turf(src)
+ if(!istype(T))
+ return
+ var/list/node_connects = get_node_connect_dirs()
+ add_underlay(T, node1, node_connects[1])
+ add_underlay(T, node2, node_connects[2])
+ add_underlay(T, node3, node_connects[3])
/obj/machinery/atmospherics/tvalve/hide(var/i)
update_underlays()
diff --git a/code/ATMOSPHERICS/components/unary/outlet_injector.dm b/code/ATMOSPHERICS/components/unary/outlet_injector.dm
index 59ca73c9b4..c53456d657 100644
--- a/code/ATMOSPHERICS/components/unary/outlet_injector.dm
+++ b/code/ATMOSPHERICS/components/unary/outlet_injector.dm
@@ -42,12 +42,12 @@
icon_state = "[use_power ? "on" : "off"]"
/obj/machinery/atmospherics/unary/outlet_injector/update_underlays()
- if(..())
- underlays.Cut()
- var/turf/T = get_turf(src)
- if(!istype(T))
- return
- add_underlay(T, node, dir)
+ ..()
+ underlays.Cut()
+ var/turf/T = get_turf(src)
+ if(!istype(T))
+ return
+ add_underlay(T, node, dir)
/obj/machinery/atmospherics/unary/outlet_injector/power_change()
var/old_stat = stat
diff --git a/code/ATMOSPHERICS/components/unary/vent_pump.dm b/code/ATMOSPHERICS/components/unary/vent_pump.dm
index a81e0ff4c9..fe8aaf8369 100644
--- a/code/ATMOSPHERICS/components/unary/vent_pump.dm
+++ b/code/ATMOSPHERICS/components/unary/vent_pump.dm
@@ -146,9 +146,6 @@
air_contents.volume = ATMOS_DEFAULT_VOLUME_PUMP + 500 //meant to match air injector
/obj/machinery/atmospherics/unary/vent_pump/update_icon(var/safety = 0)
- if(!check_icon_cache())
- return
-
cut_overlays()
var/vent_icon = "vent"
@@ -172,21 +169,21 @@
playsound(src, start_sound, 25, ignore_walls = FALSE, preference = /datum/preference/toggle/air_pump_noise)
- add_overlay(icon_manager.get_atmos_icon("device", , , vent_icon))
+ add_overlay(GLOB.icon_manager.get_atmos_icon("device", , , vent_icon))
/obj/machinery/atmospherics/unary/vent_pump/update_underlays()
- if(..())
- underlays.Cut()
- var/turf/T = get_turf(src)
- if(!istype(T))
- return
- if(!T.is_plating() && node && node.level == 1 && istype(node, /obj/machinery/atmospherics/pipe))
- return
+ ..()
+ underlays.Cut()
+ var/turf/T = get_turf(src)
+ if(!istype(T))
+ return
+ if(!T.is_plating() && node && node.level == 1 && istype(node, /obj/machinery/atmospherics/pipe))
+ return
+ else
+ if(node)
+ add_underlay(T, node, dir, node.icon_connect_type)
else
- if(node)
- add_underlay(T, node, dir, node.icon_connect_type)
- else
- add_underlay(T,, dir)
+ add_underlay(T,, dir)
/obj/machinery/atmospherics/unary/vent_pump/hide()
update_icon()
diff --git a/code/ATMOSPHERICS/components/unary/vent_scrubber.dm b/code/ATMOSPHERICS/components/unary/vent_scrubber.dm
index cf7ca4ae63..98b7c1489f 100644
--- a/code/ATMOSPHERICS/components/unary/vent_scrubber.dm
+++ b/code/ATMOSPHERICS/components/unary/vent_scrubber.dm
@@ -57,9 +57,6 @@
return ..()
/obj/machinery/atmospherics/unary/vent_scrubber/update_icon(var/safety = 0)
- if(!check_icon_cache())
- return
-
cut_overlays()
var/scrubber_icon = "scrubber"
@@ -75,21 +72,21 @@
else
scrubber_icon += "[use_power ? "[scrubbing ? "on" : "in"]" : "off"]"
- add_overlay(icon_manager.get_atmos_icon("device", , , scrubber_icon))
+ add_overlay(GLOB.icon_manager.get_atmos_icon("device", , , scrubber_icon))
/obj/machinery/atmospherics/unary/vent_scrubber/update_underlays()
- if(..())
- underlays.Cut()
- var/turf/T = get_turf(src)
- if(!istype(T))
- return
- if(!T.is_plating() && node && node.level == 1 && istype(node, /obj/machinery/atmospherics/pipe))
- return
+ ..()
+ underlays.Cut()
+ var/turf/T = get_turf(src)
+ if(!istype(T))
+ return
+ if(!T.is_plating() && node && node.level == 1 && istype(node, /obj/machinery/atmospherics/pipe))
+ return
+ else
+ if(node)
+ add_underlay(T, node, dir, node.icon_connect_type)
else
- if(node)
- add_underlay(T, node, dir, node.icon_connect_type)
- else
- add_underlay(T,, dir)
+ add_underlay(T,, dir)
/obj/machinery/atmospherics/unary/vent_scrubber/proc/set_frequency(new_frequency)
SSradio.remove_object(src, frequency)
diff --git a/code/ATMOSPHERICS/components/valve.dm b/code/ATMOSPHERICS/components/valve.dm
index 3ce203140d..3c26d21cb4 100644
--- a/code/ATMOSPHERICS/components/valve.dm
+++ b/code/ATMOSPHERICS/components/valve.dm
@@ -29,13 +29,13 @@
icon_state = "valve[open]"
/obj/machinery/atmospherics/valve/update_underlays()
- if(..())
- underlays.Cut()
- var/turf/T = get_turf(src)
- if(!istype(T))
- return
- add_underlay(T, node1, get_dir(src, node1))
- add_underlay(T, node2, get_dir(src, node2))
+ ..()
+ underlays.Cut()
+ var/turf/T = get_turf(src)
+ if(!istype(T))
+ return
+ add_underlay(T, node1, get_dir(src, node1))
+ add_underlay(T, node2, get_dir(src, node2))
/obj/machinery/atmospherics/valve/hide(var/i)
update_underlays()
diff --git a/code/ATMOSPHERICS/pipes/cap.dm b/code/ATMOSPHERICS/pipes/cap.dm
index 36fe8f2292..e5f731238f 100644
--- a/code/ATMOSPHERICS/pipes/cap.dm
+++ b/code/ATMOSPHERICS/pipes/cap.dm
@@ -48,13 +48,10 @@
node.update_underlays()
/obj/machinery/atmospherics/pipe/cap/update_icon(var/safety = 0)
- if(!check_icon_cache())
- return
-
alpha = 255
cut_overlays()
- add_overlay(icon_manager.get_atmos_icon("pipe", , pipe_color, "cap[icon_connect_type]"))
+ add_overlay(GLOB.icon_manager.get_atmos_icon("pipe", , pipe_color, "cap[icon_connect_type]"))
/obj/machinery/atmospherics/pipe/cap/atmos_init()
for(var/obj/machinery/atmospherics/target in get_step(src, dir))
diff --git a/code/ATMOSPHERICS/pipes/manifold.dm b/code/ATMOSPHERICS/pipes/manifold.dm
index a0f7789c7c..101d337501 100644
--- a/code/ATMOSPHERICS/pipes/manifold.dm
+++ b/code/ATMOSPHERICS/pipes/manifold.dm
@@ -97,14 +97,11 @@
node3.update_underlays()
/obj/machinery/atmospherics/pipe/manifold/update_icon(var/safety = 0)
- if(!check_icon_cache())
- return
-
alpha = 255
cut_overlays()
- add_overlay(icon_manager.get_atmos_icon("manifold", , pipe_color, "core" + icon_connect_type))
- add_overlay(icon_manager.get_atmos_icon("manifold", , , "clamps" + icon_connect_type))
+ add_overlay(GLOB.icon_manager.get_atmos_icon("manifold", , pipe_color, "core" + icon_connect_type))
+ add_overlay(GLOB.icon_manager.get_atmos_icon("manifold", , , "clamps" + icon_connect_type))
underlays.Cut()
var/turf/T = get_turf(src)
diff --git a/code/ATMOSPHERICS/pipes/manifold4w.dm b/code/ATMOSPHERICS/pipes/manifold4w.dm
index de31d92fd4..8979693b69 100644
--- a/code/ATMOSPHERICS/pipes/manifold4w.dm
+++ b/code/ATMOSPHERICS/pipes/manifold4w.dm
@@ -97,14 +97,11 @@
node4.update_underlays()
/obj/machinery/atmospherics/pipe/manifold4w/update_icon(var/safety = 0)
- if(!check_icon_cache())
- return
-
alpha = 255
cut_overlays()
- add_overlay(icon_manager.get_atmos_icon("manifold", , pipe_color, "4way" + icon_connect_type))
- add_overlay(icon_manager.get_atmos_icon("manifold", , , "clamps_4way" + icon_connect_type))
+ add_overlay(GLOB.icon_manager.get_atmos_icon("manifold", , pipe_color, "4way" + icon_connect_type))
+ add_overlay(GLOB.icon_manager.get_atmos_icon("manifold", , , "clamps_4way" + icon_connect_type))
underlays.Cut()
var/turf/T = get_turf(src)
diff --git a/code/ATMOSPHERICS/pipes/simple.dm b/code/ATMOSPHERICS/pipes/simple.dm
index de5a26a8e3..a7c31b1d29 100644
--- a/code/ATMOSPHERICS/pipes/simple.dm
+++ b/code/ATMOSPHERICS/pipes/simple.dm
@@ -112,17 +112,14 @@
node2.update_underlays()
/obj/machinery/atmospherics/pipe/simple/update_icon(var/safety = 0)
- if(!check_icon_cache())
- return
-
alpha = 255
cut_overlays()
if(node1 && node2)
- add_overlay(icon_manager.get_atmos_icon("pipe", , pipe_color, "[pipe_icon]intact[icon_connect_type]"))
+ add_overlay(GLOB.icon_manager.get_atmos_icon("pipe", , pipe_color, "[pipe_icon]intact[icon_connect_type]"))
else
- add_overlay(icon_manager.get_atmos_icon("pipe", , pipe_color, "[pipe_icon]exposed[node1?1:0][node2?1:0][icon_connect_type]"))
+ add_overlay(GLOB.icon_manager.get_atmos_icon("pipe", , pipe_color, "[pipe_icon]exposed[node1?1:0][node2?1:0][icon_connect_type]"))
/obj/machinery/atmospherics/pipe/simple/update_underlays()
return
diff --git a/code/ATMOSPHERICS/pipes/tank.dm b/code/ATMOSPHERICS/pipes/tank.dm
index c9654a6068..a514451437 100644
--- a/code/ATMOSPHERICS/pipes/tank.dm
+++ b/code/ATMOSPHERICS/pipes/tank.dm
@@ -37,12 +37,12 @@
return list(node1)
/obj/machinery/atmospherics/pipe/tank/update_underlays()
- if(..())
- underlays.Cut()
- var/turf/T = get_turf(src)
- if(!istype(T))
- return
- add_underlay(T, node1, dir)
+ ..()
+ underlays.Cut()
+ var/turf/T = get_turf(src)
+ if(!istype(T))
+ return
+ add_underlay(T, node1, dir)
/obj/machinery/atmospherics/pipe/tank/hide()
update_underlays()
diff --git a/code/ATMOSPHERICS/pipes/universal.dm b/code/ATMOSPHERICS/pipes/universal.dm
index e1df93ee67..e5b9907a17 100644
--- a/code/ATMOSPHERICS/pipes/universal.dm
+++ b/code/ATMOSPHERICS/pipes/universal.dm
@@ -11,13 +11,10 @@
pipe_state = "universal"
/obj/machinery/atmospherics/pipe/simple/visible/universal/update_icon(var/safety = 0)
- if(!check_icon_cache())
- return
-
alpha = 255
cut_overlays()
- add_overlay(icon_manager.get_atmos_icon("pipe", , pipe_color, "universal"))
+ add_overlay(GLOB.icon_manager.get_atmos_icon("pipe", , pipe_color, "universal"))
underlays.Cut()
if (node1)
@@ -49,13 +46,10 @@
pipe_state = "universal"
/obj/machinery/atmospherics/pipe/simple/hidden/universal/update_icon(var/safety = 0) // Doesn't leak. It's a special pipe.
- if(!check_icon_cache())
- return
-
alpha = 255
cut_overlays()
- add_overlay(icon_manager.get_atmos_icon("pipe", , pipe_color, "universal"))
+ add_overlay(GLOB.icon_manager.get_atmos_icon("pipe", , pipe_color, "universal"))
underlays.Cut()
if (node1)
@@ -122,8 +116,8 @@
/obj/machinery/atmospherics/proc/add_underlay_adapter(var/turf/T, var/obj/machinery/atmospherics/node, var/direction, var/icon_connect_type) //modified from add_underlay, does not make exposed underlays
if(node)
if(!T.is_plating() && node.level == 1 && istype(node, /obj/machinery/atmospherics/pipe))
- underlays += icon_manager.get_atmos_icon("underlay", direction, color_cache_name(node), "down" + icon_connect_type)
+ underlays += GLOB.icon_manager.get_atmos_icon("underlay", direction, color_cache_name(node), "down" + icon_connect_type)
else
- underlays += icon_manager.get_atmos_icon("underlay", direction, color_cache_name(node), "intact" + icon_connect_type)
+ underlays += GLOB.icon_manager.get_atmos_icon("underlay", direction, color_cache_name(node), "intact" + icon_connect_type)
else
- underlays += icon_manager.get_atmos_icon("underlay", direction, color_cache_name(node), "retracted" + icon_connect_type)
+ underlays += GLOB.icon_manager.get_atmos_icon("underlay", direction, color_cache_name(node), "retracted" + icon_connect_type)
diff --git a/code/__defines/damage_organs.dm b/code/__defines/damage_organs.dm
index 5d378ff68d..df33e9d1ac 100644
--- a/code/__defines/damage_organs.dm
+++ b/code/__defines/damage_organs.dm
@@ -68,3 +68,22 @@
#define MODULAR_BODYPART_INVALID 0 // Cannot be detached or reattached.
#define MODULAR_BODYPART_PROSTHETIC 1 // Can be detached or reattached freely.
#define MODULAR_BODYPART_CYBERNETIC 2 // Can be detached or reattached to compatible parent organs.
+
+//CitRP Port
+#define CYBERBEAST_MONITOR_STYLES "blank=cyber_blank;\
+ default=cyber_default;\
+ eyes=eyes;\
+ static=cyber_static;\
+ alert=cyber_alert;\
+ happy=cyber_happ;\
+ unhappy=cyber_unhapp;\
+ flat=cyber_flat;\
+ sad=cyber_sad;\
+ heart=cyber_heart;\
+ cross=cyber_cross;\
+ wave=cyber_wave;\
+ uwu=cyber_uwu;\
+ question=cyber_question;\
+ lowpower=cyber_lowpower;\
+ idle=cyber_idle;\
+ nwn=cyber_nwn"
diff --git a/code/__defines/machinery.dm b/code/__defines/machinery.dm
index a776a1d945..e2abdb7899 100644
--- a/code/__defines/machinery.dm
+++ b/code/__defines/machinery.dm
@@ -80,9 +80,6 @@
#define NETWORK_OUTSIDE "Outside"
#define NETWORK_HALLS "Halls"
-// Those networks can only be accessed by pre-existing terminals. AIs and new terminals can't use them.
-var/list/restricted_camera_networks = list(NETWORK_ERT,NETWORK_MERCENARY,"Secret", NETWORK_COMMUNICATORS)
-
#define TRANSMISSION_WIRE 0 //Is this ever used? I don't think it is.
#define TRANSMISSION_RADIO 1 //Radio transmissions (like airlock controller to pump)
#define TRANSMISSION_SUBSPACE 2 //Like headsets
diff --git a/code/__defines/time.dm b/code/__defines/time.dm
index b580e01a1b..fe522d78f3 100644
--- a/code/__defines/time.dm
+++ b/code/__defines/time.dm
@@ -4,6 +4,9 @@
/// Define that just has the current in-universe year for use in whatever context you might want to display that in. (For example, 2022 -> 2562 given a 540 year offset)
#define CURRENT_STATION_YEAR (GLOB.year_integer + STATION_YEAR_OFFSET)
+/// Used in the GLOB year and tgui PreInit
+#define UTC_YEAR time2text(world.realtime,"YYYY",NO_TIMEZONE)
+
/// In-universe, SS13 is set 300 years in the future from the real-world day, hence this number for determining the year-offset for the in-game year.
#define STATION_YEAR_OFFSET 300
diff --git a/code/_global_vars/__unsorted.dm b/code/_global_vars/__unsorted.dm
index 22c08dbb20..651a74fe1f 100644
--- a/code/_global_vars/__unsorted.dm
+++ b/code/_global_vars/__unsorted.dm
@@ -75,3 +75,6 @@ GLOBAL_DATUM_INIT(buildmode_hud, /icon, icon('icons/misc/buildmode.dmi'))
GLOBAL_LIST_EMPTY(cached_character_icons)
GLOBAL_VAR_INIT(triai, FALSE)
+
+// Pipe colors, needs to be inited before our pipe icon_manager
+GLOBAL_LIST_INIT(pipe_colors, list("grey" = PIPE_COLOR_GREY, "red" = PIPE_COLOR_RED, "blue" = PIPE_COLOR_BLUE, "cyan" = PIPE_COLOR_CYAN, "green" = PIPE_COLOR_GREEN, "yellow" = PIPE_COLOR_YELLOW, "black" = PIPE_COLOR_BLACK, "orange" = PIPE_COLOR_ORANGE, "white" = PIPE_COLOR_WHITE, "purple" = PIPE_COLOR_PURPLE))
diff --git a/code/_global_vars/time_vars.dm b/code/_global_vars/time_vars.dm
index 1b4fc6401a..18bb727bf0 100644
--- a/code/_global_vars/time_vars.dm
+++ b/code/_global_vars/time_vars.dm
@@ -1,2 +1,2 @@
-GLOBAL_VAR_INIT(year, time2text(world.realtime,"YYYY"))
+GLOBAL_VAR_INIT(year, UTC_YEAR)
GLOBAL_VAR_INIT(year_integer, text2num(year)) // = 2013???
diff --git a/code/_helpers/_global_objects.dm b/code/_helpers/_global_objects.dm
index a658bf3cbf..365268d4e0 100644
--- a/code/_helpers/_global_objects.dm
+++ b/code/_helpers/_global_objects.dm
@@ -1,4 +1,18 @@
GLOBAL_DATUM_INIT(gear_tweak_free_color_choice, /datum/gear_tweak/color, new)
GLOBAL_DATUM_INIT(gear_tweak_implant_location, /datum/gear_tweak/implant_location, new)
+GLOBAL_DATUM_INIT(gear_tweak_collar_tag, /datum/gear_tweak/collar_tag, new)
+
//Underwear
GLOBAL_DATUM_INIT(global_underwear, /datum/category_collection/underwear, new)
+
+//Global Datums
+GLOBAL_DATUM_INIT(icon_manager, /datum/pipe_icon_manager, new)
+GLOBAL_DATUM_INIT(emergency_shuttle, /datum/emergency_shuttle_controller, new)
+
+// We manually initialize the alarm handlers instead of looping over all existing types
+// to make it possible to write: camera_alarm.triggerAlarm() rather than SSalarm.managers[datum/alarm_handler/camera].triggerAlarm() or a variant thereof.
+GLOBAL_DATUM_INIT(atmosphere_alarm, /datum/alarm_handler/atmosphere, new)
+GLOBAL_DATUM_INIT(camera_alarm, /datum/alarm_handler/camera, new)
+GLOBAL_DATUM_INIT(fire_alarm, /datum/alarm_handler/fire, new)
+GLOBAL_DATUM_INIT(motion_alarm, /datum/alarm_handler/motion, new)
+GLOBAL_DATUM_INIT(power_alarm, /datum/alarm_handler/power, new)
diff --git a/code/_helpers/_global_objects_vr.dm b/code/_helpers/_global_objects_vr.dm
deleted file mode 100644
index 71e7c1ee81..0000000000
--- a/code/_helpers/_global_objects_vr.dm
+++ /dev/null
@@ -1 +0,0 @@
-var/datum/gear_tweak/collar_tag/gear_tweak_collar_tag = new()
diff --git a/code/_helpers/global_lists.dm b/code/_helpers/global_lists.dm
index 1ca962af15..c29e8b4155 100644
--- a/code/_helpers/global_lists.dm
+++ b/code/_helpers/global_lists.dm
@@ -22,6 +22,8 @@ GLOBAL_LIST_EMPTY(mechas_list) //list of all mechs. Used by hostile mobs ta
var/global/list/obj/item/pda/PDAs = list()
var/global/list/obj/item/communicator/all_communicators = list()
+// Those networks can only be accessed by pre-existing terminals. AIs and new terminals can't use them.
+GLOBAL_LIST_INIT(restricted_camera_networks, list(NETWORK_ERT,NETWORK_MERCENARY,"Secret", NETWORK_COMMUNICATORS))
#define all_genders_define_list list(MALE,FEMALE,PLURAL,NEUTER,HERM)
#define all_genders_text_list list("Male","Female","Plural","Neuter","Herm")
@@ -631,7 +633,7 @@ var/global/list/assigned_blocks[DNA_SE_LENGTH]
GLOBAL_LIST_EMPTY(gear_distributed_to)
GLOBAL_LIST_EMPTY(overlay_cache) //cache recent overlays
-var/global/list/all_technomancer_gambit_spells = typesof(/obj/item/spell) - list(
+GLOBAL_LIST_INIT(all_technomancer_gambit_spells, typesof(/obj/item/spell) - list(
/obj/item/spell,
/obj/item/spell/gambit,
/obj/item/spell/projectile,
@@ -639,7 +641,7 @@ var/global/list/all_technomancer_gambit_spells = typesof(/obj/item/spell) - list
// /obj/item/spell/insert,
/obj/item/spell/spawner,
/obj/item/spell/summon,
- /obj/item/spell/modifier)
+ /obj/item/spell/modifier))
var/global/list/image/splatter_cache=list()
var/global/list/obj/cortical_stacks = list() //Stacks for 'leave nobody behind' objective. Clumsy, rewrite sometime.
@@ -1199,18 +1201,6 @@ GLOBAL_LIST_INIT(all_tooltip_styles, list(
"Clockwork"
))
-//Global Datums
-var/global/datum/pipe_icon_manager/icon_manager
-var/global/datum/emergency_shuttle_controller/emergency_shuttle = new
-
-// We manually initialize the alarm handlers instead of looping over all existing types
-// to make it possible to write: camera_alarm.triggerAlarm() rather than SSalarm.managers[datum/alarm_handler/camera].triggerAlarm() or a variant thereof.
-/var/global/datum/alarm_handler/atmosphere/atmosphere_alarm = new()
-/var/global/datum/alarm_handler/camera/camera_alarm = new()
-/var/global/datum/alarm_handler/fire/fire_alarm = new()
-/var/global/datum/alarm_handler/motion/motion_alarm = new()
-/var/global/datum/alarm_handler/power/power_alarm = new()
-
GLOBAL_LIST_EMPTY(gun_choices)
GLOBAL_ALIST_INIT(severity_to_string, list(
@@ -1624,6 +1614,11 @@ GLOBAL_LIST_INIT(suitable_fish_turf_types, list(
/turf/simulated/floor/water
))
+GLOBAL_LIST_INIT(ventcrawl_machinery, list(
+ /obj/machinery/atmospherics/unary/vent_pump,
+ /obj/machinery/atmospherics/unary/vent_scrubber
+ ))
+
GLOBAL_LIST_BOILERPLATE(papers_dockingcode, /obj/item/paper/dockingcodes)
//Chamelion clothing was all stupid so it's done here instead.
diff --git a/code/_helpers/roundend.dm b/code/_helpers/roundend.dm
index 5222c0f07f..292404960a 100644
--- a/code/_helpers/roundend.dm
+++ b/code/_helpers/roundend.dm
@@ -15,7 +15,7 @@
if(Player.mind && !isnewplayer(Player))
if(Player.stat != DEAD)
var/turf/playerTurf = get_turf(Player)
- if(emergency_shuttle.departed && emergency_shuttle.evac)
+ if(GLOB.emergency_shuttle.departed && GLOB.emergency_shuttle.evac)
if(isNotAdminLevel(playerTurf.z))
to_chat(Player, span_filter_system(span_blue(span_bold("You survived the round, but remained on [station_name()] as [Player.real_name]."))))
else
diff --git a/code/controllers/admin.dm b/code/controllers/admin.dm
index 0bea402d97..9adf394aa3 100644
--- a/code/controllers/admin.dm
+++ b/code/controllers/admin.dm
@@ -79,8 +79,7 @@ ADMIN_VERB(debug_controller, R_DEBUG, "Debug Controller", "Debug the various per
//Goon PS stuff, and other yet-to-be-subsystem things.
options["LEGACY: master_controller"] = GLOB.master_controller
options["LEGACY: job_master"] = GLOB.job_master
- options["LEGACY: SSradio"] = SSradio
- options["LEGACY: emergency_shuttle"] = emergency_shuttle
+ options["LEGACY: emergency_shuttle"] = GLOB.emergency_shuttle
options["LEGACY: paiController"] = paiController
options["LEGACY: cameranet"] = cameranet
options["LEGACY: transfer_controller"] = GLOB.transfer_controller
diff --git a/code/controllers/emergency_shuttle_controller.dm b/code/controllers/emergency_shuttle_controller.dm
index 226557bf7e..7b7985344b 100644
--- a/code/controllers/emergency_shuttle_controller.dm
+++ b/code/controllers/emergency_shuttle_controller.dm
@@ -177,7 +177,7 @@
return 0 //not at station
return (wait_for_launch || shuttle.moving_status != SHUTTLE_INTRANSIT)
-//so we don't have emergency_shuttle.shuttle.location everywhere
+//so we don't have GLOB.emergency_shuttle.shuttle.location everywhere
/datum/emergency_shuttle_controller/proc/location()
if (!shuttle)
return 1 //if we dont have a shuttle datum, just act like it's at centcom
@@ -228,14 +228,14 @@
/datum/emergency_shuttle_controller/proc/get_status_panel_eta()
if (online())
if (shuttle.has_arrive_time())
- var/timeleft = emergency_shuttle.estimate_arrival_time()
+ var/timeleft = GLOB.emergency_shuttle.estimate_arrival_time()
return "ETA-[(timeleft / 60) % 60]:[add_zero(num2text(timeleft % 60), 2)]"
if (waiting_to_leave())
if (shuttle.moving_status == SHUTTLE_WARMUP)
return "Departing..."
- var/timeleft = emergency_shuttle.estimate_launch_time()
+ var/timeleft = GLOB.emergency_shuttle.estimate_launch_time()
return "ETD-[(timeleft / 60) % 60]:[add_zero(num2text(timeleft % 60), 2)]"
return ""
diff --git a/code/controllers/subsystems/alarm.dm b/code/controllers/subsystems/alarm.dm
index 61af1f852d..27a554403a 100644
--- a/code/controllers/subsystems/alarm.dm
+++ b/code/controllers/subsystems/alarm.dm
@@ -10,7 +10,7 @@ SUBSYSTEM_DEF(alarm)
var/static/list/active_alarm_cache = list()
/datum/controller/subsystem/alarm/Initialize()
- all_handlers = list(atmosphere_alarm, camera_alarm, fire_alarm, motion_alarm, power_alarm)
+ all_handlers = list(GLOB.atmosphere_alarm, GLOB.camera_alarm, GLOB.fire_alarm, GLOB.motion_alarm, GLOB.power_alarm)
return SS_INIT_SUCCESS
/datum/controller/subsystem/alarm/fire(resumed = FALSE)
diff --git a/code/controllers/subsystems/internal_wiki.dm b/code/controllers/subsystems/internal_wiki.dm
index 2c9ddd9f7c..4794a8e276 100644
--- a/code/controllers/subsystems/internal_wiki.dm
+++ b/code/controllers/subsystems/internal_wiki.dm
@@ -469,8 +469,8 @@ SUBSYSTEM_DEF(internal_wiki)
SHOULD_NOT_OVERRIDE(TRUE)
PRIVATE_PROC(TRUE)
// assemble material wiki
- for(var/mat in name_to_material)
- var/datum/material/M = name_to_material[mat]
+ for(var/mat, value in GLOB.name_to_material)
+ var/datum/material/M = value
if(M.wiki_flag & WIKI_SPOILER)
spoiler_entries.Add(M.type)
continue
diff --git a/code/controllers/subsystems/statpanel.dm b/code/controllers/subsystems/statpanel.dm
index b3c5cd7d66..c40c591d07 100644
--- a/code/controllers/subsystems/statpanel.dm
+++ b/code/controllers/subsystems/statpanel.dm
@@ -36,8 +36,8 @@ SUBSYSTEM_DEF(statpanels)
"Time Dilation: [round(SStime_track.time_dilation_current,1)]% AVG:([round(SStime_track.time_dilation_avg_fast,1)]%, [round(SStime_track.time_dilation_avg,1)]%, [round(SStime_track.time_dilation_avg_slow,1)]%)"
)
- if(emergency_shuttle.evac)
- var/ETA = emergency_shuttle.get_status_panel_eta()
+ if(GLOB.emergency_shuttle.evac)
+ var/ETA = GLOB.emergency_shuttle.get_status_panel_eta()
if(ETA)
global_data += "[ETA]"
diff --git a/code/controllers/subsystems/tgui.dm b/code/controllers/subsystems/tgui.dm
index 91cce577cd..aec707a52a 100644
--- a/code/controllers/subsystems/tgui.dm
+++ b/code/controllers/subsystems/tgui.dm
@@ -41,7 +41,7 @@ SUBSYSTEM_DEF(tgui)
ntos_error = ""
basehtml = replacetextEx(basehtml, "", ntos_error)
- basehtml = replacetextEx(basehtml, "", "Nanotrasen (c) 2284-[text2num(time2text(world.realtime,"YYYY")) + STATION_YEAR_OFFSET]")
+ basehtml = replacetextEx(basehtml, "", "Nanotrasen (c) 2284-[text2num(UTC_YEAR) + STATION_YEAR_OFFSET]") // This can't use the GLOB as it runs before those are populated
/datum/controller/subsystem/tgui/OnConfigLoad()
var/storage_iframe = CONFIG_GET(string/storage_cdn_iframe)
diff --git a/code/controllers/subsystems/ticker.dm b/code/controllers/subsystems/ticker.dm
index 38a836e8cb..28dc6b218b 100644
--- a/code/controllers/subsystems/ticker.dm
+++ b/code/controllers/subsystems/ticker.dm
@@ -158,10 +158,10 @@ SUBSYSTEM_DEF(ticker)
var/game_finished = FALSE
var/mode_finished = FALSE
if (CONFIG_GET(flag/continuous_rounds)) // Game keeps going after mode ends.
- game_finished = (emergency_shuttle.returned() || mode.station_was_nuked)
+ game_finished = (GLOB.emergency_shuttle.returned() || mode.station_was_nuked)
mode_finished = ((end_game_state >= END_GAME_MODE_FINISHED) || mode.check_finished()) // Short circuit if already finished.
else // Game ends when mode does
- game_finished = (mode.check_finished() || (emergency_shuttle.returned() && emergency_shuttle.evac == 1)) || GLOB.universe_has_ended
+ game_finished = (mode.check_finished() || (GLOB.emergency_shuttle.returned() && GLOB.emergency_shuttle.evac == 1)) || GLOB.universe_has_ended
mode_finished = game_finished
if(game_finished && mode_finished)
diff --git a/code/datums/autolathe/autolathe.dm b/code/datums/autolathe/autolathe.dm
index d24e49f291..2bad2075fc 100644
--- a/code/datums/autolathe/autolathe.dm
+++ b/code/datums/autolathe/autolathe.dm
@@ -42,8 +42,8 @@
/datum/category_group/autolathe/all/New()
..()
- for(var/Name in name_to_material)
- var/datum/material/M = name_to_material[Name]
+ for(var/mame, value in GLOB.name_to_material)
+ var/datum/material/M = value
if(!M.stack_type) // Shouldn't happen, but might. Never know.
continue
@@ -93,8 +93,8 @@
/datum/category_group/autolathe/materials/New()
..()
- for(var/Name in name_to_material)
- var/datum/material/M = name_to_material[Name]
+ for(var/name, value in GLOB.name_to_material)
+ var/datum/material/M = value
if(!M.stack_type) // Shouldn't happen, but might. Never know.
continue
diff --git a/code/datums/components/antags/changeling/powers/hivemind.dm b/code/datums/components/antags/changeling/powers/hivemind.dm
index 84e86afa9c..b06c60f66d 100644
--- a/code/datums/components/antags/changeling/powers/hivemind.dm
+++ b/code/datums/components/antags/changeling/powers/hivemind.dm
@@ -18,8 +18,7 @@
verbpath = /mob/proc/changeling_hivedownload
// HIVE MIND UPLOAD/DOWNLOAD DNA
-
-var/list/datum/dna/hivemind_bank = list()
+GLOBAL_LIST_EMPTY_TYPED(hivemind_bank, /datum/dna)
/mob/proc/changeling_hiveupload()
set category = "Changeling"
@@ -32,7 +31,7 @@ var/list/datum/dna/hivemind_bank = list()
var/list/names = list()
for(var/datum/absorbed_dna/DNA in changeling.absorbed_dna)
- if(!(DNA in hivemind_bank))
+ if(!(DNA in GLOB.hivemind_bank))
names += DNA.name
if(names.len <= 0)
@@ -48,7 +47,7 @@ var/list/datum/dna/hivemind_bank = list()
return
changeling.chem_charges -= 10
- hivemind_bank += chosen_dna
+ GLOB.hivemind_bank += chosen_dna
to_chat(src, span_notice("We channel the DNA of [S] to the air."))
feedback_add_details("changeling_powers","HU")
return TRUE
@@ -63,7 +62,7 @@ var/list/datum/dna/hivemind_bank = list()
return
var/list/names = list()
- for(var/datum/absorbed_dna/DNA in hivemind_bank)
+ for(var/datum/absorbed_dna/DNA in GLOB.hivemind_bank)
if(!(DNA in changeling.absorbed_dna))
names[DNA.name] = DNA
diff --git a/code/game/area/areas.dm b/code/game/area/areas.dm
index 9efe132bc1..77bf310b66 100644
--- a/code/game/area/areas.dm
+++ b/code/game/area/areas.dm
@@ -109,13 +109,13 @@ GLOBAL_LIST_EMPTY(areas_by_type)
/area/proc/atmosalert(danger_level, var/alarm_source)
if (danger_level == 0)
- atmosphere_alarm.clearAlarm(src, alarm_source)
+ GLOB.atmosphere_alarm.clearAlarm(src, alarm_source)
else
var/obj/machinery/alarm/atmosalarm = alarm_source //maybe other things can trigger these, who knows
if(istype(atmosalarm))
- atmosphere_alarm.triggerAlarm(src, alarm_source, severity = danger_level, hidden = atmosalarm.alarms_hidden)
+ GLOB.atmosphere_alarm.triggerAlarm(src, alarm_source, severity = danger_level, hidden = atmosalarm.alarms_hidden)
else
- atmosphere_alarm.triggerAlarm(src, alarm_source, severity = danger_level)
+ GLOB.atmosphere_alarm.triggerAlarm(src, alarm_source, severity = danger_level)
//Check all the alarms before lowering atmosalm. Raising is perfectly fine.
var/obj/machinery/alarm/AM = main_air_alarm?.resolve()
diff --git a/code/game/gamemodes/cult/narsie.dm b/code/game/gamemodes/cult/narsie.dm
index 3307cbbfe6..a1d092f8ac 100644
--- a/code/game/gamemodes/cult/narsie.dm
+++ b/code/game/gamemodes/cult/narsie.dm
@@ -53,9 +53,9 @@ GLOBAL_VAR_INIT(narsie_cometh, 0)
GLOB.narsie_cometh = 1
spawn(10 SECONDS)
- if(emergency_shuttle)
- emergency_shuttle.call_evac()
- emergency_shuttle.launch_time = 0 // Cannot recall
+ if(GLOB.emergency_shuttle)
+ GLOB.emergency_shuttle.call_evac()
+ GLOB.emergency_shuttle.launch_time = 0 // Cannot recall
/obj/singularity/narsie/process()
eat()
diff --git a/code/game/gamemodes/cult/runes.dm b/code/game/gamemodes/cult/runes.dm
index 3ff5830738..8332c306bf 100644
--- a/code/game/gamemodes/cult/runes.dm
+++ b/code/game/gamemodes/cult/runes.dm
@@ -203,9 +203,9 @@ GLOBAL_LIST_EMPTY(sacrificed)
GLOB.narsie_cometh = 1
spawn(10 SECONDS)
- if(emergency_shuttle)
- emergency_shuttle.call_evac()
- emergency_shuttle.launch_time = 0 // Cannot recall
+ if(GLOB.emergency_shuttle)
+ GLOB.emergency_shuttle.call_evac()
+ GLOB.emergency_shuttle.launch_time = 0 // Cannot recall
log_and_message_admins_many(cultists, "summoned the end of days.")
return
diff --git a/code/game/gamemodes/endgame/supermatter_cascade/universe.dm b/code/game/gamemodes/endgame/supermatter_cascade/universe.dm
index 930580fa7a..15ed5a3ce5 100644
--- a/code/game/gamemodes/endgame/supermatter_cascade/universe.dm
+++ b/code/game/gamemodes/endgame/supermatter_cascade/universe.dm
@@ -44,9 +44,9 @@ GLOBAL_VAR_INIT(universe_has_ended, 0)
for(var/mob/M in GLOB.player_list)
M.flash_eyes()
- if(emergency_shuttle.can_recall())
+ if(GLOB.emergency_shuttle.can_recall())
priority_announcement.Announce("The emergency shuttle has returned due to bluespace distortion.")
- emergency_shuttle.recall()
+ GLOB.emergency_shuttle.recall()
AreaSet()
MiscSet()
diff --git a/code/game/gamemodes/game_mode.dm b/code/game/gamemodes/game_mode.dm
index 496add78b8..55292cf79d 100644
--- a/code/game/gamemodes/game_mode.dm
+++ b/code/game/gamemodes/game_mode.dm
@@ -214,8 +214,8 @@ GLOBAL_LIST_EMPTY(additional_antag_types)
if(antag.is_latejoin_template())
latejoin_templates |= antag
- if(emergency_shuttle && auto_recall_shuttle)
- emergency_shuttle.auto_recall = 1
+ if(GLOB.emergency_shuttle && auto_recall_shuttle)
+ GLOB.emergency_shuttle.auto_recall = 1
feedback_set_details("round_start","[time2text(world.realtime)]")
INVOKE_ASYNC(SSdbcore, TYPE_PROC_REF(/datum/controller/subsystem/dbcore, SetRoundStart))
@@ -267,14 +267,14 @@ GLOBAL_LIST_EMPTY(additional_antag_types)
command_announcement.Announce("The presence of [pick(reasons)] in the region is tying up all available local emergency resources; emergency response teams cannot be called at this time, and post-evacuation recovery efforts will be substantially delayed.","Emergency Transmission")
/datum/game_mode/proc/check_finished()
- if(emergency_shuttle.returned() || station_was_nuked)
+ if(GLOB.emergency_shuttle.returned() || station_was_nuked)
return 1
if(end_on_antag_death && antag_templates && antag_templates.len)
for(var/datum/antagonist/antag in antag_templates)
if(!antag.antags_are_dead())
return 0
if(CONFIG_GET(flag/continuous_rounds))
- emergency_shuttle.auto_recall = 0
+ GLOB.emergency_shuttle.auto_recall = 0
return 0
return 1
return 0
@@ -344,7 +344,7 @@ GLOBAL_LIST_EMPTY(additional_antag_types)
var/text = ""
if(surviving_total > 0)
text += "
There [surviving_total>1 ? ("were " + span_bold("[surviving_total] survivors")) : ("was " + span_bold("one survivor"))] ("
- text += span_bold("[escaped_total>0 ? escaped_total : "none"] [emergency_shuttle.evac ? "escaped" : "transferred"]") + ") and " + span_bold("[ghosts] ghosts")
+ text += span_bold("[escaped_total>0 ? escaped_total : "none"] [GLOB.emergency_shuttle.evac ? "escaped" : "transferred"]") + ") and " + span_bold("[ghosts] ghosts")
text += ".
"
else
text += "There were " + span_bold("no survivors") + " (" + span_bold("[ghosts] ghosts") + ")."
diff --git a/code/game/gamemodes/game_mode_latespawn.dm b/code/game/gamemodes/game_mode_latespawn.dm
index 9fcb4bd0ea..d1378086b9 100644
--- a/code/game/gamemodes/game_mode_latespawn.dm
+++ b/code/game/gamemodes/game_mode_latespawn.dm
@@ -28,10 +28,10 @@
/datum/game_mode/proc/try_latespawn(var/datum/mind/player, var/latejoin_only)
- if(emergency_shuttle.departed || !round_autoantag)
+ if(GLOB.emergency_shuttle.departed || !round_autoantag)
return
- if(emergency_shuttle.shuttle && (emergency_shuttle.shuttle.moving_status == SHUTTLE_WARMUP || emergency_shuttle.shuttle.moving_status == SHUTTLE_INTRANSIT))
+ if(GLOB.emergency_shuttle.shuttle && (GLOB.emergency_shuttle.shuttle.moving_status == SHUTTLE_WARMUP || GLOB.emergency_shuttle.shuttle.moving_status == SHUTTLE_INTRANSIT))
return // Don't do anything if the shuttle's coming.
var/mills = round_duration_in_ds
diff --git a/code/game/gamemodes/newobjective.dm b/code/game/gamemodes/newobjective.dm
index 3ad05215d7..2971040e6e 100644
--- a/code/game/gamemodes/newobjective.dm
+++ b/code/game/gamemodes/newobjective.dm
@@ -267,7 +267,7 @@ datum
explanation_text = "Frame [target.current.real_name], the [target.assigned_role] for a crime and make sure they are arrested and brought back to the CentCom station alive. We'll handle the rest from there."
check_completion()
- if(!emergency_shuttle.returned())
+ if(!GLOB.emergency_shuttle.returned())
return 0
if(target.current.stat == 2)
return 0
@@ -313,7 +313,7 @@ datum
explanation_text = "[target.current.real_name], the [target.assigned_role] is a [pick("relative of a","friend of a","") + pick("high ranking","important","well-liked")] mercenary [pick("Leader","Officer","Agent","sympathiser")]. Make sure they get off the station safely, while minimizing intervention."
check_completion()
- if(!emergency_shuttle.returned())
+ if(!GLOB.emergency_shuttle.returned())
return 0
if(target.current.stat == 2)
@@ -477,7 +477,7 @@ datum
explanation_text = "Hijack the emergency shuttle by escaping alone."
check_completion()
- if(!emergency_shuttle.returned())
+ if(!GLOB.emergency_shuttle.returned())
return 0
if(!owner.current || owner.current.stat == 2)
@@ -512,7 +512,7 @@ datum
explanation_text = "Escape on the shuttle alive, without being arrested."
check_completion()
- if(!emergency_shuttle.returned())
+ if(!GLOB.emergency_shuttle.returned())
return 0
if(!owner.current || owner.current.stat ==2)
@@ -1230,7 +1230,7 @@ datum
check_completion()
if(!istype(owner.current, /mob/living/silicon))
return 0
- if(!emergency_shuttle.returned())
+ if(!GLOB.emergency_shuttle.returned())
return 0
if(!owner.current)
return 0
@@ -1457,7 +1457,7 @@ datum
explanation_text = "Do not allow anyone to escape the station. Only allow the shuttle to be called when everyone is dead and your story is the only one left."
check_completion()
- if(!emergency_shuttle.returned())
+ if(!GLOB.emergency_shuttle.returned())
return 0
var/area/shuttle = locate(/area/shuttle/escape/centcom)
diff --git a/code/game/gamemodes/nuclear/nuclear.dm b/code/game/gamemodes/nuclear/nuclear.dm
index db33e2ed95..8791115b34 100644
--- a/code/game/gamemodes/nuclear/nuclear.dm
+++ b/code/game/gamemodes/nuclear/nuclear.dm
@@ -41,7 +41,7 @@ GLOBAL_LIST_EMPTY(nuke_disks)
if(!is_type_in_list(disk_area, GLOB.centcom_areas))
disk_rescued = 0
break
- var/crew_evacuated = (emergency_shuttle.returned())
+ var/crew_evacuated = (GLOB.emergency_shuttle.returned())
if(!disk_rescued && station_was_nuked && !syndies_didnt_escape)
feedback_set_details("round_end_result","win - syndicate nuke")
diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm
index 99041601ba..7d2f504a22 100644
--- a/code/game/gamemodes/objective.dm
+++ b/code/game/gamemodes/objective.dm
@@ -219,7 +219,7 @@ GLOBAL_LIST_EMPTY(all_objectives)
/datum/objective/hijack/check_completion()
if(!owner.current || owner.current.stat)
return 0
- if(!emergency_shuttle.returned())
+ if(!GLOB.emergency_shuttle.returned())
return 0
if(issilicon(owner.current))
return 0
@@ -241,7 +241,7 @@ GLOBAL_LIST_EMPTY(all_objectives)
/datum/objective/block/check_completion()
if(!istype(owner.current, /mob/living/silicon))
return 0
- if(!emergency_shuttle.returned())
+ if(!GLOB.emergency_shuttle.returned())
return 0
if(!owner.current)
return 0
@@ -259,7 +259,7 @@ GLOBAL_LIST_EMPTY(all_objectives)
explanation_text = "Do not allow anyone to escape the station. Only allow the shuttle to be called when everyone is dead and your story is the only one left."
/datum/objective/silence/check_completion()
- if(!emergency_shuttle.returned())
+ if(!GLOB.emergency_shuttle.returned())
return 0
for(var/mob/living/player in GLOB.player_list)
@@ -284,7 +284,7 @@ GLOBAL_LIST_EMPTY(all_objectives)
return 0
if(isbrain(owner.current))
return 0
- if(!emergency_shuttle.returned())
+ if(!GLOB.emergency_shuttle.returned())
return 0
if(!owner.current || owner.current.stat ==2)
return 0
diff --git a/code/game/gamemodes/sandbox/sandbox.dm b/code/game/gamemodes/sandbox/sandbox.dm
index c261cc8f6d..505bd22ea1 100644
--- a/code/game/gamemodes/sandbox/sandbox.dm
+++ b/code/game/gamemodes/sandbox/sandbox.dm
@@ -14,4 +14,4 @@
/datum/game_mode/sandbox/post_setup()
..()
if(emergency_shuttle)
- emergency_shuttle.auto_recall = 1
+ GLOB.emergency_shuttle.auto_recall = 1
diff --git a/code/game/gamemodes/technomancer/spells/gambit.dm b/code/game/gamemodes/technomancer/spells/gambit.dm
index 0a85ddcbd3..b871ccea1f 100644
--- a/code/game/gamemodes/technomancer/spells/gambit.dm
+++ b/code/game/gamemodes/technomancer/spells/gambit.dm
@@ -35,7 +35,7 @@
// Gives a random spell.
/obj/item/spell/gambit/proc/random_spell()
- var/list/potential_spells = all_technomancer_gambit_spells.Copy()
+ var/list/potential_spells = GLOB.all_technomancer_gambit_spells.Copy()
var/rare_spell_chance = between(0, calculate_spell_power(100) - 100, 100) // Having 120% spellpower means a 20% chance to get to roll for rare spells.
if(prob(rare_spell_chance))
potential_spells += rare_spells.Copy()
@@ -119,6 +119,6 @@
// Fallback method in case nothing gets added.
if(!potential_spells.len)
- potential_spells = all_technomancer_gambit_spells.Copy()
+ potential_spells = GLOB.all_technomancer_gambit_spells.Copy()
return pick(potential_spells)
diff --git a/code/game/machinery/camera/camera.dm b/code/game/machinery/camera/camera.dm
index 7918bf8f55..605a69b881 100644
--- a/code/game/machinery/camera/camera.dm
+++ b/code/game/machinery/camera/camera.dm
@@ -310,14 +310,14 @@
/obj/machinery/camera/proc/triggerCameraAlarm(var/duration = 0)
alarm_on = 1
- camera_alarm.triggerAlarm(loc, src, duration)
+ GLOB.camera_alarm.triggerAlarm(loc, src, duration)
/obj/machinery/camera/proc/cancelCameraAlarm()
if(wires.is_cut(WIRE_CAM_ALARM))
return
alarm_on = 0
- camera_alarm.clearAlarm(loc, src)
+ GLOB.camera_alarm.clearAlarm(loc, src)
//if false, then the camera is listed as DEACTIVATED and cannot be used
/obj/machinery/camera/proc/can_use()
@@ -462,7 +462,7 @@
/obj/machinery/camera/proc/update_coverage(var/network_change = 0)
if(network_change)
- var/list/open_networks = difflist(network, restricted_camera_networks)
+ var/list/open_networks = difflist(network, GLOB.restricted_camera_networks)
// Add or remove camera from the camera net as necessary
if(on_open_network && !open_networks.len)
cameranet.removeCamera(src)
diff --git a/code/game/machinery/camera/motion.dm b/code/game/machinery/camera/motion.dm
index d89c123b4d..b85fae71ee 100644
--- a/code/game/machinery/camera/motion.dm
+++ b/code/game/machinery/camera/motion.dm
@@ -42,7 +42,7 @@
if (!status || (stat & NOPOWER))
return 0
if (detectTime == -1)
- motion_alarm.clearAlarm(loc, src)
+ GLOB.motion_alarm.clearAlarm(loc, src)
detectTime = 0
return 1
@@ -50,7 +50,7 @@
if (!status || (stat & NOPOWER))
return 0
if (!detectTime) return 0
- motion_alarm.triggerAlarm(loc, src)
+ GLOB.motion_alarm.triggerAlarm(loc, src)
detectTime = -1
return 1
diff --git a/code/game/machinery/computer/atmos_alert.dm b/code/game/machinery/computer/atmos_alert.dm
index 0af12f61e1..54f67c1de2 100644
--- a/code/game/machinery/computer/atmos_alert.dm
+++ b/code/game/machinery/computer/atmos_alert.dm
@@ -8,10 +8,10 @@
/obj/machinery/computer/atmos_alert/Initialize(mapload)
. = ..()
- atmosphere_alarm.register_alarm(src, /atom/proc/update_icon)
+ GLOB.atmosphere_alarm.register_alarm(src, /atom/proc/update_icon)
/obj/machinery/computer/atmos_alert/Destroy()
- atmosphere_alarm.unregister_alarm(src)
+ GLOB.atmosphere_alarm.unregister_alarm(src)
. = ..()
/obj/machinery/computer/atmos_alert/attack_hand(mob/user)
@@ -28,10 +28,10 @@
var/list/major_alarms = list()
var/list/minor_alarms = list()
- for(var/datum/alarm/alarm in atmosphere_alarm.major_alarms(get_z(src)))
+ for(var/datum/alarm/alarm in GLOB.atmosphere_alarm.major_alarms(get_z(src)))
major_alarms[++major_alarms.len] = list("name" = sanitize(alarm.alarm_name()), "ref" = "\ref[alarm]")
- for(var/datum/alarm/alarm in atmosphere_alarm.minor_alarms(get_z(src)))
+ for(var/datum/alarm/alarm in GLOB.atmosphere_alarm.minor_alarms(get_z(src)))
minor_alarms[++minor_alarms.len] = list("name" = sanitize(alarm.alarm_name()), "ref" = "\ref[alarm]")
data["priority_alarms"] = major_alarms
@@ -41,11 +41,11 @@
/obj/machinery/computer/atmos_alert/update_icon()
if(!(stat & (NOPOWER|BROKEN)))
- var/list/alarms = atmosphere_alarm.major_alarms()
+ var/list/alarms = GLOB.atmosphere_alarm.major_alarms()
if(alarms.len)
icon_screen = "alert:2"
else
- alarms = atmosphere_alarm.minor_alarms()
+ alarms = GLOB.atmosphere_alarm.minor_alarms()
if(alarms.len)
icon_screen = "alert:1"
else
@@ -58,7 +58,7 @@
switch(action)
if("clear")
- var/datum/alarm/alarm = locate(params["ref"]) in atmosphere_alarm.alarms
+ var/datum/alarm/alarm = locate(params["ref"]) in GLOB.atmosphere_alarm.alarms
if(alarm)
for(var/datum/alarm_source/alarm_source in alarm.sources)
var/obj/machinery/alarm/air_alarm = alarm_source.source
diff --git a/code/game/machinery/computer/shuttle.dm b/code/game/machinery/computer/shuttle.dm
index a48dfc100c..4b240d76fa 100644
--- a/code/game/machinery/computer/shuttle.dm
+++ b/code/game/machinery/computer/shuttle.dm
@@ -10,7 +10,7 @@
/obj/machinery/computer/shuttle/attackby(var/obj/item/card/W as obj, var/mob/user as mob)
if(stat & (BROKEN|NOPOWER)) return
- if ((!( istype(W, /obj/item/card) ) || !( SSticker ) || emergency_shuttle.location() || !( user ))) return
+ if ((!( istype(W, /obj/item/card) ) || !( SSticker ) || GLOB.emergency_shuttle.location() || !( user ))) return
if (istype(W, /obj/item/card/id)||istype(W, /obj/item/pda))
if (istype(W, /obj/item/pda))
var/obj/item/pda/pda = W
@@ -29,7 +29,7 @@
return 0
var/choice = tgui_alert(user, text("Would you like to (un)authorize a shortened launch time? [] authorization\s are still needed. Use abort to cancel all authorizations.", src.auth_need - src.authorized.len), "Shuttle Launch", list("Authorize", "Repeal", "Abort"))
- if(emergency_shuttle.location() && user.get_active_hand() != W)
+ if(GLOB.emergency_shuttle.location() && user.get_active_hand() != W)
return 0
switch(choice)
if("Authorize")
@@ -43,7 +43,7 @@
message_admins("[key_name_admin(user)] has launched the shuttle")
log_game("[user.ckey] has launched the shuttle early")
to_chat(world, span_boldnotice("Alert: Shuttle launch time shortened to 10 seconds!"))
- emergency_shuttle.set_launch_countdown(10)
+ GLOB.emergency_shuttle.set_launch_countdown(10)
//src.authorized = null
qdel(src.authorized)
src.authorized = list( )
@@ -60,11 +60,11 @@
else if (istype(W, /obj/item/card/emag) && !emagged)
var/choice = tgui_alert(user, "Would you like to launch the shuttle?", "Shuttle control", list("Launch", "Cancel"))
- if(!emagged && !emergency_shuttle.location() && user.get_active_hand() == W)
+ if(!emagged && !GLOB.emergency_shuttle.location() && user.get_active_hand() == W)
switch(choice)
if("Launch")
to_chat(world, span_boldnotice("Alert: Shuttle launch time shortened to 10 seconds!"))
- emergency_shuttle.set_launch_countdown(10)
+ GLOB.emergency_shuttle.set_launch_countdown(10)
emagged = 1
if("Cancel")
return
diff --git a/code/game/machinery/computer/specops_shuttle.dm b/code/game/machinery/computer/specops_shuttle.dm
index a212586552..e592a34163 100644
--- a/code/game/machinery/computer/specops_shuttle.dm
+++ b/code/game/machinery/computer/specops_shuttle.dm
@@ -4,12 +4,12 @@
#define SPECOPS_DOCK_AREATYPE "/area/shuttle/specops/centcom" //Type of the spec ops shuttle area for dock
#define SPECOPS_RETURN_DELAY 600 //Time between the shuttle is capable of moving.
-var/specops_shuttle_moving_to_station = 0
-var/specops_shuttle_moving_to_centcom = 0
-var/specops_shuttle_at_station = 0
-var/specops_shuttle_can_send = 1
-var/specops_shuttle_time = 0
-var/specops_shuttle_timeleft = 0
+GLOBAL_VAR_INIT(specops_shuttle_moving_to_station, 0)
+GLOBAL_VAR_INIT(specops_shuttle_moving_to_centcom, 0)
+GLOBAL_VAR_INIT(specops_shuttle_at_station, 0)
+GLOBAL_VAR_INIT(specops_shuttle_can_send, 1)
+GLOBAL_VAR_INIT(specops_shuttle_time, 0)
+GLOBAL_VAR_INIT(specops_shuttle_timeleft, 0)
/obj/machinery/computer/specops_shuttle
name = "special operations shuttle control console"
@@ -32,16 +32,16 @@ var/specops_shuttle_timeleft = 0
if(announcer)
announcer.autosay(message, "A.L.I.C.E.", CHANNEL_RESPONSE_TEAM)
- while(specops_shuttle_time - world.timeofday > 0)
- var/ticksleft = specops_shuttle_time - world.timeofday
+ while(GLOB.specops_shuttle_time - world.timeofday > 0)
+ var/ticksleft = GLOB.specops_shuttle_time - world.timeofday
if(ticksleft > 1e5)
- specops_shuttle_time = world.timeofday + 10 // midnight rollover
- specops_shuttle_timeleft = (ticksleft / 10)
+ GLOB.specops_shuttle_time = world.timeofday + 10 // midnight rollover
+ GLOB.specops_shuttle_timeleft = (ticksleft / 10)
//All this does is announce the time before launch.
if(announcer)
- var/rounded_time_left = round(specops_shuttle_timeleft)//Round time so that it will report only once, not in fractions.
+ var/rounded_time_left = round(GLOB.specops_shuttle_timeleft)//Round time so that it will report only once, not in fractions.
if(rounded_time_left in message_tracker)//If that time is in the list for message announce.
message = "\"ALERT: [rounded_time_left] SECOND[(rounded_time_left!=1)?"S":""] REMAIN\""
if(rounded_time_left==0)
@@ -52,10 +52,10 @@ var/specops_shuttle_timeleft = 0
sleep(5)
- specops_shuttle_moving_to_station = 0
- specops_shuttle_moving_to_centcom = 0
+ GLOB.specops_shuttle_moving_to_station = 0
+ GLOB.specops_shuttle_moving_to_centcom = 0
- specops_shuttle_at_station = 1
+ GLOB.specops_shuttle_at_station = 1
var/area/start_location = locate(/area/shuttle/specops/station)
var/area/end_location = locate(/area/shuttle/specops/centcom)
@@ -90,7 +90,7 @@ var/specops_shuttle_timeleft = 0
var/mob/M = locate(/mob) in T
to_chat(M, span_notice("You have arrived at [using_map.boss_name]. Operation has ended!"))
- specops_shuttle_at_station = 0
+ GLOB.specops_shuttle_at_station = 0
for(var/obj/machinery/computer/specops_shuttle/S in GLOB.machines)
S.specops_shuttle_timereset = world.time + SPECOPS_RETURN_DELAY
@@ -109,16 +109,16 @@ var/specops_shuttle_timeleft = 0
// message = "ARMORED SQUAD TAKE YOUR POSITION ON GRAVITY LAUNCH PAD"
// announcer.autosay(message, "A.L.I.C.E.", CHANNEL_RESPONSE_TEAM)
- while(specops_shuttle_time - world.timeofday > 0)
- var/ticksleft = specops_shuttle_time - world.timeofday
+ while(GLOB.specops_shuttle_time - world.timeofday > 0)
+ var/ticksleft = GLOB.specops_shuttle_time - world.timeofday
if(ticksleft > 1e5)
- specops_shuttle_time = world.timeofday + 10 // midnight rollover
- specops_shuttle_timeleft = (ticksleft / 10)
+ GLOB.specops_shuttle_time = world.timeofday + 10 // midnight rollover
+ GLOB.specops_shuttle_timeleft = (ticksleft / 10)
//All this does is announce the time before launch.
if(announcer)
- var/rounded_time_left = round(specops_shuttle_timeleft)//Round time so that it will report only once, not in fractions.
+ var/rounded_time_left = round(GLOB.specops_shuttle_timeleft)//Round time so that it will report only once, not in fractions.
if(rounded_time_left in message_tracker)//If that time is in the list for message announce.
message = "\"ALERT: [rounded_time_left] SECOND[(rounded_time_left!=1)?"S":""] REMAIN\""
if(rounded_time_left==0)
@@ -129,11 +129,11 @@ var/specops_shuttle_timeleft = 0
sleep(5)
- specops_shuttle_moving_to_station = 0
- specops_shuttle_moving_to_centcom = 0
+ GLOB.specops_shuttle_moving_to_station = 0
+ GLOB.specops_shuttle_moving_to_centcom = 0
- specops_shuttle_at_station = 1
- if (specops_shuttle_moving_to_station || specops_shuttle_moving_to_centcom) return
+ GLOB.specops_shuttle_at_station = 1
+ if (GLOB.specops_shuttle_moving_to_station || GLOB.specops_shuttle_moving_to_centcom) return
if (!specops_can_move())
to_chat(usr, span_warning("The Special Operations shuttle is unable to leave."))
@@ -239,7 +239,7 @@ var/specops_shuttle_timeleft = 0
qdel(announcer)
/proc/specops_can_move()
- if(specops_shuttle_moving_to_station || specops_shuttle_moving_to_centcom)
+ if(GLOB.specops_shuttle_moving_to_station || GLOB.specops_shuttle_moving_to_centcom)
return 0
for(var/obj/machinery/computer/specops_shuttle/S in GLOB.machines)
if(world.timeofday <= S.specops_shuttle_timereset)
@@ -266,8 +266,8 @@ var/specops_shuttle_timeleft = 0
dat = temp
else
dat += {"
Special Operations Shuttle