diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_dead_ratvar.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_dead_ratvar.dmm
new file mode 100644
index 0000000000..d6bb476f32
--- /dev/null
+++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_dead_ratvar.dmm
@@ -0,0 +1,990 @@
+//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+"a" = (
+/turf/template_noop,
+/area/template_noop)
+"b" = (
+/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
+/area/lavaland/surface/outdoors/unexplored)
+"c" = (
+/obj/item/clockwork/alloy_shards/small,
+/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
+/area/lavaland/surface/outdoors/unexplored)
+"d" = (
+/obj/structure/destructible/clockwork/wall_gear,
+/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
+/area/lavaland/surface/outdoors/unexplored)
+"e" = (
+/obj/item/stack/tile/brass,
+/turf/open/floor/clockwork{
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ },
+/area/lavaland/surface/outdoors/unexplored)
+"f" = (
+/turf/closed/mineral/volcanic,
+/area/lavaland/surface/outdoors/unexplored)
+"g" = (
+/obj/item/clockwork/alloy_shards/medium/gear_bit,
+/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
+/area/lavaland/surface/outdoors/unexplored)
+"h" = (
+/turf/open/floor/clockwork{
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ },
+/area/lavaland/surface/outdoors/unexplored)
+"i" = (
+/obj/structure/grille/ratvar/broken,
+/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
+/area/lavaland/surface/outdoors/unexplored)
+"j" = (
+/turf/closed/wall/clockwork,
+/area/lavaland/surface/outdoors/unexplored)
+"k" = (
+/obj/item/clockwork/alloy_shards/small,
+/turf/open/floor/clockwork{
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ },
+/area/lavaland/surface/outdoors/unexplored)
+"l" = (
+/turf/open/lava/smooth/lava_land_surface,
+/area/lavaland/surface/outdoors/unexplored)
+"m" = (
+/obj/item/clockwork/alloy_shards/medium,
+/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
+/area/lavaland/surface/outdoors/unexplored)
+"n" = (
+/obj/item/clockwork/component/belligerent_eye/blind_eye,
+/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
+/area/lavaland/surface/outdoors/unexplored)
+"o" = (
+/obj/item/clockwork/alloy_shards/large,
+/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
+/area/lavaland/surface/outdoors/unexplored)
+"p" = (
+/obj/item/clockwork/alloy_shards/medium,
+/turf/open/floor/clockwork{
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ },
+/area/lavaland/surface/outdoors/unexplored)
+"q" = (
+/obj/structure/lattice/catwalk/clockwork,
+/turf/open/lava/smooth/lava_land_surface,
+/area/lavaland/surface/outdoors/unexplored)
+"r" = (
+/obj/structure/lattice/clockwork,
+/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
+/area/lavaland/surface/outdoors/unexplored)
+"s" = (
+/obj/item/clockwork/alloy_shards/large,
+/turf/open/floor/clockwork{
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ },
+/area/lavaland/surface/outdoors/unexplored)
+"t" = (
+/obj/item/stack/tile/brass,
+/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
+/area/lavaland/surface/outdoors/unexplored)
+"u" = (
+/obj/structure/grille/ratvar,
+/turf/open/floor/clockwork{
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ },
+/area/lavaland/surface/outdoors/unexplored)
+"v" = (
+/obj/item/clockwork/alloy_shards/medium,
+/obj/structure/lattice/clockwork,
+/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
+/area/lavaland/surface/outdoors/unexplored)
+"w" = (
+/obj/structure/grille/ratvar/broken,
+/turf/open/floor/clockwork{
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ },
+/area/lavaland/surface/outdoors/unexplored)
+"x" = (
+/obj/structure/destructible/clockwork/wall_gear,
+/obj/item/stack/tile/brass,
+/turf/open/floor/clockwork{
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ },
+/area/lavaland/surface/outdoors/unexplored)
+"y" = (
+/obj/item/clockwork/component/geis_capacitor/fallen_armor,
+/turf/open/floor/clockwork{
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ },
+/area/lavaland/surface/outdoors/unexplored)
+"z" = (
+/obj/structure/destructible/clockwork/wall_gear,
+/turf/open/floor/clockwork{
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ },
+/area/lavaland/surface/outdoors/unexplored)
+"A" = (
+/obj/item/clockwork/alloy_shards/clockgolem_remains,
+/turf/open/floor/clockwork{
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ },
+/area/lavaland/surface/outdoors/unexplored)
+"B" = (
+/obj/item/clockwork/weapon/ratvarian_spear,
+/turf/open/floor/clockwork{
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ },
+/area/lavaland/surface/outdoors/unexplored)
+"C" = (
+/obj/item/clockwork/alloy_shards/medium/gear_bit,
+/turf/open/floor/clockwork{
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ },
+/area/lavaland/surface/outdoors/unexplored)
+"D" = (
+/obj/structure/grille/ratvar,
+/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
+/area/lavaland/surface/outdoors/unexplored)
+"E" = (
+/obj/item/clockwork/alloy_shards/clockgolem_remains,
+/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
+/area/lavaland/surface/outdoors/unexplored)
+"F" = (
+/obj/structure/dead_ratvar,
+/turf/open/floor/clockwork{
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ },
+/area/lavaland/surface/outdoors/unexplored)
+"G" = (
+/obj/item/stack/tile/brass/fifty,
+/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
+/area/lavaland/surface/outdoors/unexplored)
+
+(1,1,1) = {"
+a
+a
+a
+a
+a
+a
+a
+a
+a
+a
+a
+a
+a
+b
+s
+h
+b
+a
+a
+a
+a
+a
+a
+a
+"}
+(2,1,1) = {"
+a
+a
+a
+a
+a
+a
+a
+o
+b
+a
+h
+b
+r
+c
+j
+x
+b
+b
+g
+a
+a
+a
+a
+a
+"}
+(3,1,1) = {"
+a
+a
+a
+a
+a
+a
+f
+b
+l
+b
+v
+b
+p
+w
+j
+j
+c
+l
+b
+b
+a
+a
+a
+a
+"}
+(4,1,1) = {"
+a
+a
+a
+a
+a
+a
+f
+l
+l
+r
+b
+b
+l
+j
+j
+j
+p
+l
+b
+h
+c
+r
+a
+a
+"}
+(5,1,1) = {"
+a
+a
+a
+a
+a
+b
+l
+l
+p
+h
+c
+l
+l
+l
+j
+l
+b
+l
+l
+D
+h
+r
+a
+a
+"}
+(6,1,1) = {"
+a
+a
+a
+h
+c
+h
+m
+l
+l
+c
+l
+l
+l
+l
+w
+l
+l
+l
+m
+c
+h
+f
+a
+a
+"}
+(7,1,1) = {"
+a
+a
+b
+b
+b
+l
+l
+l
+l
+h
+b
+l
+l
+l
+l
+l
+l
+l
+l
+c
+f
+f
+b
+a
+"}
+(8,1,1) = {"
+a
+h
+h
+g
+c
+b
+l
+l
+l
+l
+n
+h
+r
+l
+l
+b
+l
+l
+l
+l
+f
+b
+a
+a
+"}
+(9,1,1) = {"
+a
+b
+c
+b
+b
+l
+l
+l
+l
+t
+h
+b
+h
+w
+p
+b
+g
+l
+l
+b
+b
+b
+b
+a
+"}
+(10,1,1) = {"
+b
+h
+l
+l
+l
+l
+l
+l
+b
+b
+p
+r
+F
+b
+h
+A
+b
+l
+l
+l
+m
+l
+l
+a
+"}
+(11,1,1) = {"
+c
+i
+j
+j
+l
+l
+l
+l
+l
+b
+h
+k
+h
+h
+h
+r
+l
+l
+l
+l
+l
+l
+b
+a
+"}
+(12,1,1) = {"
+d
+j
+j
+j
+h
+l
+l
+b
+l
+q
+r
+h
+h
+h
+c
+q
+l
+b
+l
+l
+b
+h
+o
+a
+"}
+(13,1,1) = {"
+e
+k
+b
+l
+l
+l
+b
+p
+s
+r
+h
+h
+h
+h
+h
+h
+h
+l
+l
+l
+l
+b
+b
+a
+"}
+(14,1,1) = {"
+b
+b
+b
+m
+l
+l
+l
+b
+h
+h
+k
+h
+h
+h
+h
+h
+c
+b
+l
+l
+b
+b
+h
+b
+"}
+(15,1,1) = {"
+b
+b
+b
+l
+l
+l
+l
+h
+h
+h
+h
+h
+h
+h
+k
+B
+h
+l
+l
+l
+l
+b
+b
+a
+"}
+(16,1,1) = {"
+f
+l
+l
+l
+l
+l
+l
+q
+b
+h
+h
+h
+h
+h
+h
+s
+b
+l
+l
+l
+l
+f
+f
+a
+"}
+(17,1,1) = {"
+b
+b
+b
+l
+l
+l
+b
+l
+q
+r
+h
+h
+h
+h
+h
+b
+s
+r
+l
+r
+l
+l
+b
+a
+"}
+(18,1,1) = {"
+b
+h
+l
+l
+l
+b
+b
+h
+b
+h
+h
+h
+h
+h
+r
+k
+b
+C
+r
+h
+b
+b
+m
+b
+"}
+(19,1,1) = {"
+b
+b
+l
+l
+l
+l
+h
+b
+h
+h
+h
+h
+h
+h
+h
+r
+j
+h
+c
+h
+r
+h
+b
+b
+"}
+(20,1,1) = {"
+b
+l
+l
+l
+l
+b
+b
+p
+h
+c
+h
+k
+h
+h
+o
+b
+l
+l
+l
+b
+E
+r
+G
+o
+"}
+(21,1,1) = {"
+g
+b
+l
+l
+l
+l
+l
+r
+h
+r
+h
+h
+h
+h
+y
+l
+l
+l
+l
+l
+l
+j
+j
+r
+"}
+(22,1,1) = {"
+c
+c
+b
+l
+l
+b
+h
+h
+t
+b
+h
+h
+h
+h
+h
+m
+b
+l
+l
+l
+h
+j
+j
+j
+"}
+(23,1,1) = {"
+b
+h
+m
+n
+b
+h
+l
+o
+j
+u
+r
+p
+h
+r
+h
+b
+l
+l
+l
+b
+b
+w
+r
+b
+"}
+(24,1,1) = {"
+a
+a
+b
+b
+l
+l
+l
+j
+j
+q
+p
+h
+m
+e
+z
+j
+j
+l
+l
+c
+l
+l
+b
+a
+"}
+(25,1,1) = {"
+a
+a
+a
+l
+l
+l
+l
+j
+l
+l
+b
+h
+r
+x
+h
+l
+l
+l
+l
+l
+l
+a
+a
+a
+"}
+(26,1,1) = {"
+a
+a
+a
+c
+b
+l
+l
+l
+l
+l
+l
+g
+q
+b
+h
+l
+l
+l
+c
+m
+b
+a
+a
+a
+"}
+(27,1,1) = {"
+a
+a
+a
+b
+h
+b
+l
+l
+l
+l
+l
+l
+l
+l
+l
+l
+l
+l
+l
+b
+a
+a
+a
+a
+"}
+(28,1,1) = {"
+a
+a
+a
+a
+c
+b
+l
+b
+l
+l
+l
+l
+l
+l
+l
+l
+b
+l
+f
+a
+a
+a
+a
+a
+"}
+(29,1,1) = {"
+a
+a
+a
+a
+b
+b
+f
+c
+b
+l
+c
+l
+l
+l
+l
+c
+o
+l
+b
+a
+a
+a
+a
+a
+"}
+(30,1,1) = {"
+a
+a
+a
+a
+a
+g
+c
+b
+l
+l
+b
+m
+l
+b
+l
+f
+b
+a
+a
+a
+a
+a
+a
+a
+"}
+(31,1,1) = {"
+a
+a
+a
+a
+a
+a
+a
+b
+l
+b
+a
+b
+l
+c
+f
+f
+a
+a
+a
+a
+a
+a
+a
+a
+"}
+(32,1,1) = {"
+a
+a
+a
+a
+a
+a
+a
+a
+a
+a
+a
+a
+a
+a
+c
+a
+a
+a
+a
+a
+a
+a
+a
+a
+"}
diff --git a/_maps/_basemap.dm b/_maps/_basemap.dm
index da795b6933..6a7e1d3636 100644
--- a/_maps/_basemap.dm
+++ b/_maps/_basemap.dm
@@ -5,7 +5,6 @@
#ifndef LOWMEMORYMODE
#ifdef ALL_MAPS
#include "map_files\Mining\Lavaland.dmm"
- #include "map_files\generic\City_of_Cogs.dmm"
#include "map_files\debug\runtimestation.dmm"
#include "map_files\Deltastation\DeltaStation2.dmm"
#include "map_files\MetaStation\MetaStation.dmm"
diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm
index d6e6a6b3ee..1290ddf469 100644
--- a/_maps/map_files/BoxStation/BoxStation.dmm
+++ b/_maps/map_files/BoxStation/BoxStation.dmm
@@ -1,4 +1,4 @@
-//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"aaa" = (
/turf/open/space/basic,
/area/space)
@@ -107,6 +107,20 @@
dir = 1
},
/area/security/prison)
+"aaq" = (
+/obj/structure/sign/warning/electricshock{
+ pixel_y = 32
+ },
+/obj/machinery/hydroponics/soil,
+/obj/item/plant_analyzer,
+/obj/machinery/camera{
+ c_tag = "Prison Common Room";
+ network = list("ss13","prison")
+ },
+/turf/open/floor/plasteel/green/side{
+ dir = 5
+ },
+/area/security/prison)
"aar" = (
/obj/machinery/hydroponics/soil,
/obj/item/seeds/glowshroom,
@@ -190,6 +204,12 @@
dir = 2
},
/area/security/prison)
+"aaG" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/open/floor/plasteel/floorgrime,
+/area/security/prison)
"aaH" = (
/turf/open/floor/plating/airless,
/area/space/nearstation)
@@ -246,6 +266,13 @@
},
/turf/open/floor/plasteel/barber,
/area/security/prison)
+"aaR" = (
+/obj/structure/lattice,
+/obj/structure/sign/warning/securearea{
+ pixel_y = -32
+ },
+/turf/open/space,
+/area/space/nearstation)
"aaS" = (
/obj/structure/grille,
/obj/structure/lattice,
@@ -359,6 +386,26 @@
/obj/machinery/vending/security,
/turf/open/floor/plasteel/showroomfloor,
/area/security/main)
+"abm" = (
+/obj/structure/table,
+/obj/item/storage/box/firingpins,
+/obj/item/storage/box/firingpins,
+/obj/item/key/security,
+/turf/open/floor/plasteel/vault{
+ dir = 8
+ },
+/area/ai_monitored/security/armory)
+"abn" = (
+/obj/structure/rack,
+/obj/machinery/firealarm{
+ pixel_y = 24
+ },
+/obj/item/gun/energy/e_gun/dragnet,
+/obj/item/gun/energy/e_gun/dragnet,
+/turf/open/floor/plasteel/vault{
+ dir = 8
+ },
+/area/ai_monitored/security/armory)
"abo" = (
/obj/effect/spawner/structure/window/reinforced,
/turf/open/floor/plating,
@@ -470,15 +517,166 @@
"abF" = (
/turf/open/floor/plasteel/freezer,
/area/security/prison)
+"abG" = (
+/obj/machinery/door/window/westleft{
+ base_state = "right";
+ dir = 8;
+ icon_state = "right";
+ name = "Unisex Showers"
+ },
+/turf/open/floor/plasteel/freezer,
+/area/security/prison)
+"abH" = (
+/obj/structure/table,
+/obj/item/storage/box/chemimp{
+ pixel_x = 6
+ },
+/obj/item/storage/box/trackimp{
+ pixel_x = -3
+ },
+/obj/item/storage/lockbox/loyalty,
+/turf/open/floor/plasteel/vault{
+ dir = 8
+ },
+/area/ai_monitored/security/armory)
+"abI" = (
+/obj/structure/rack,
+/obj/item/clothing/suit/armor/riot{
+ pixel_x = -3;
+ pixel_y = 3
+ },
+/obj/item/clothing/suit/armor/riot,
+/obj/item/clothing/suit/armor/riot{
+ pixel_x = 3;
+ pixel_y = -3
+ },
+/obj/machinery/light{
+ dir = 1
+ },
+/obj/item/clothing/head/helmet/riot{
+ pixel_x = -3;
+ pixel_y = 3
+ },
+/obj/item/clothing/head/helmet/riot,
+/obj/item/clothing/head/helmet/riot{
+ pixel_x = 3;
+ pixel_y = -3
+ },
+/obj/item/shield/riot{
+ pixel_x = -3;
+ pixel_y = 3
+ },
+/obj/item/shield/riot,
+/obj/item/shield/riot{
+ pixel_x = 3;
+ pixel_y = -3
+ },
+/turf/open/floor/plasteel/vault{
+ dir = 8
+ },
+/area/ai_monitored/security/armory)
+"abJ" = (
+/obj/structure/rack,
+/obj/item/clothing/suit/armor/bulletproof{
+ pixel_x = -3;
+ pixel_y = 3
+ },
+/obj/item/clothing/suit/armor/bulletproof,
+/obj/item/clothing/suit/armor/bulletproof{
+ pixel_x = 3;
+ pixel_y = -3
+ },
+/obj/item/clothing/head/helmet/alt{
+ layer = 3.00001;
+ pixel_x = -3;
+ pixel_y = 3
+ },
+/obj/item/clothing/head/helmet/alt{
+ layer = 3.00001
+ },
+/obj/item/clothing/head/helmet/alt{
+ layer = 3.00001;
+ pixel_x = 3;
+ pixel_y = -3
+ },
+/obj/machinery/camera/motion{
+ c_tag = "Armory Motion Sensor";
+ dir = 2
+ },
+/turf/open/floor/plasteel/vault{
+ dir = 8
+ },
+/area/ai_monitored/security/armory)
+"abK" = (
+/obj/structure/chair/stool,
+/obj/machinery/light/small{
+ dir = 1
+ },
+/obj/machinery/button/door{
+ id = "permabolt3";
+ name = "Cell Bolt Control";
+ normaldoorcontrol = 1;
+ pixel_y = 25;
+ specialfunctions = 4
+ },
+/obj/machinery/atmospherics/components/unary/vent_scrubber/on,
+/turf/open/floor/plasteel/floorgrime,
+/area/security/prison)
+"abL" = (
+/obj/structure/chair/stool,
+/obj/machinery/light/small{
+ dir = 1
+ },
+/obj/machinery/button/door{
+ id = "permabolt2";
+ name = "Cell Bolt Control";
+ normaldoorcontrol = 1;
+ pixel_y = 25;
+ specialfunctions = 4
+ },
+/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
+ dir = 8
+ },
+/turf/open/floor/plasteel/floorgrime,
+/area/security/prison)
"abM" = (
/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{
dir = 8
},
/turf/open/floor/plasteel/floorgrime,
/area/security/prison)
+"abN" = (
+/obj/structure/closet/secure_closet/lethalshots,
+/turf/open/floor/plasteel/dark,
+/area/ai_monitored/security/armory)
"abO" = (
/turf/open/floor/plasteel/showroomfloor,
/area/security/main)
+"abP" = (
+/obj/structure/closet/secure_closet/security/sec,
+/obj/effect/turf_decal/bot,
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/main)
+"abQ" = (
+/obj/structure/rack,
+/obj/machinery/airalarm{
+ pixel_y = 23
+ },
+/obj/item/gun/energy/ionrifle,
+/obj/item/gun/energy/temperature/security,
+/obj/item/clothing/suit/armor/laserproof,
+/turf/open/floor/plasteel/vault{
+ dir = 8
+ },
+/area/ai_monitored/security/armory)
+"abR" = (
+/obj/structure/closet/secure_closet/security/sec,
+/obj/machinery/light{
+ dir = 4
+ },
+/obj/effect/turf_decal/bot,
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/main)
"abS" = (
/obj/machinery/computer/secure_data,
/turf/open/floor/carpet,
@@ -608,6 +806,16 @@
/obj/effect/mapping_helpers/airlock/cyclelink_helper,
/turf/open/floor/plasteel/floorgrime,
/area/security/prison)
+"ach" = (
+/obj/machinery/door/airlock{
+ name = "Unisex Restroom"
+ },
+/turf/open/floor/plasteel/freezer,
+/area/security/prison)
+"aci" = (
+/obj/vehicle/ridden/secway,
+/turf/open/floor/plasteel/dark,
+/area/ai_monitored/security/armory)
"acj" = (
/obj/machinery/light{
dir = 4
@@ -615,6 +823,33 @@
/obj/machinery/suit_storage_unit/hos,
/turf/open/floor/carpet,
/area/crew_quarters/heads/hos)
+"ack" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 1
+ },
+/turf/open/floor/plasteel,
+/area/ai_monitored/security/armory)
+"acl" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 9
+ },
+/turf/open/floor/plasteel,
+/area/ai_monitored/security/armory)
+"acm" = (
+/obj/machinery/power/apc/highcap/five_k{
+ dir = 4;
+ areastring = "/area/ai_monitored/security/armory";
+ name = "Armory APC";
+ pixel_x = 24
+ },
+/obj/structure/cable{
+ icon_state = "0-2"
+ },
+/obj/effect/turf_decal/stripes/line{
+ dir = 1
+ },
+/turf/open/floor/plasteel,
+/area/ai_monitored/security/armory)
"acn" = (
/obj/item/storage/secure/safe/HoS{
pixel_x = 35
@@ -630,6 +865,15 @@
/obj/machinery/atmospherics/components/unary/vent_pump/on,
/turf/open/floor/plasteel/showroomfloor,
/area/security/main)
+"acq" = (
+/obj/effect/landmark/secequipment,
+/obj/effect/turf_decal/bot,
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/main)
+"acr" = (
+/obj/structure/chair/comfy/black,
+/turf/open/floor/carpet,
+/area/crew_quarters/heads/hos)
"acs" = (
/obj/machinery/newscaster/security_unit{
pixel_x = -30
@@ -651,6 +895,10 @@
"acu" = (
/turf/open/floor/carpet,
/area/crew_quarters/heads/hos)
+"acv" = (
+/obj/structure/closet/secure_closet/contraband/armory,
+/turf/open/floor/plasteel/dark,
+/area/ai_monitored/security/armory)
"acw" = (
/obj/structure/sign/warning/securearea{
pixel_y = -32
@@ -707,6 +955,21 @@
},
/turf/open/floor/plasteel/floorgrime,
/area/security/prison)
+"acD" = (
+/obj/structure/chair/stool,
+/obj/machinery/light/small{
+ dir = 1
+ },
+/obj/machinery/button/door{
+ id = "permabolt1";
+ name = "Cell Bolt Control";
+ normaldoorcontrol = 1;
+ pixel_y = 25;
+ specialfunctions = 4
+ },
+/obj/machinery/atmospherics/components/unary/vent_scrubber/on,
+/turf/open/floor/plasteel/floorgrime,
+/area/security/prison)
"acE" = (
/obj/structure/bed,
/obj/machinery/camera{
@@ -744,6 +1007,22 @@
},
/turf/open/floor/plasteel/floorgrime,
/area/security/prison)
+"acI" = (
+/obj/machinery/door/poddoor/preopen{
+ id = "executionfireblast";
+ name = "blast door"
+ },
+/obj/machinery/atmospherics/pipe/simple/general/hidden,
+/obj/machinery/door/firedoor,
+/obj/machinery/door/window/westright{
+ dir = 1;
+ name = "Transfer Room";
+ req_access_txt = "2"
+ },
+/turf/open/floor/plasteel/vault{
+ dir = 8
+ },
+/area/security/execution/transfer)
"acJ" = (
/obj/structure/cable{
icon_state = "1-2"
@@ -768,10 +1047,41 @@
},
/turf/open/floor/plasteel,
/area/ai_monitored/security/armory)
+"acM" = (
+/obj/structure/rack,
+/obj/item/gun/energy/e_gun{
+ pixel_x = -3;
+ pixel_y = 3
+ },
+/obj/item/gun/energy/e_gun,
+/obj/item/gun/energy/e_gun{
+ pixel_x = 3;
+ pixel_y = -3
+ },
+/obj/machinery/atmospherics/components/unary/vent_pump/on,
+/obj/effect/turf_decal/bot{
+ dir = 2
+ },
+/obj/structure/window/reinforced{
+ dir = 1;
+ layer = 2.9
+ },
+/turf/open/floor/plasteel{
+ dir = 2
+ },
+/area/ai_monitored/security/armory)
"acN" = (
/obj/structure/chair/stool/bar,
/turf/open/floor/plasteel/bar,
/area/crew_quarters/bar)
+"acO" = (
+/obj/structure/closet/l3closet/security,
+/obj/machinery/camera{
+ c_tag = "Brig Equipment Room";
+ dir = 4
+ },
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/main)
"acP" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel/showroomfloor,
@@ -835,6 +1145,16 @@
/obj/structure/lattice/catwalk,
/turf/open/space,
/area/solar/port/fore)
+"acX" = (
+/obj/effect/spawner/structure/window/reinforced,
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/obj/machinery/door/poddoor/preopen{
+ id = "executionfireblast";
+ name = "blast door"
+ },
+/obj/machinery/door/firedoor,
+/turf/open/floor/plating,
+/area/security/execution/transfer)
"acY" = (
/obj/structure/table,
/obj/item/paper,
@@ -842,6 +1162,15 @@
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plasteel/floorgrime,
/area/security/prison)
+"acZ" = (
+/obj/effect/spawner/structure/window/reinforced,
+/obj/machinery/door/poddoor/preopen{
+ id = "executionfireblast";
+ name = "blast door"
+ },
+/obj/machinery/door/firedoor,
+/turf/open/floor/plating,
+/area/security/execution/transfer)
"ada" = (
/obj/machinery/atmospherics/components/unary/vent_pump/on,
/obj/machinery/flasher{
@@ -889,11 +1218,48 @@
},
/turf/open/floor/plasteel/freezer,
/area/security/prison)
+"adg" = (
+/obj/structure/cable{
+ icon_state = "1-2"
+ },
+/turf/open/floor/plasteel,
+/area/ai_monitored/security/armory)
"adh" = (
/obj/machinery/disposal/bin,
/obj/structure/disposalpipe/trunk,
/turf/open/floor/carpet,
/area/crew_quarters/heads/hos)
+"adi" = (
+/obj/machinery/flasher/portable,
+/turf/open/floor/plasteel/vault{
+ dir = 8
+ },
+/area/ai_monitored/security/armory)
+"adj" = (
+/obj/structure/rack,
+/obj/item/gun/energy/e_gun/advtaser{
+ pixel_x = -3;
+ pixel_y = 3
+ },
+/obj/item/gun/energy/e_gun/advtaser,
+/obj/item/gun/energy/e_gun/advtaser{
+ pixel_x = 3;
+ pixel_y = -3
+ },
+/obj/effect/turf_decal/bot{
+ dir = 2
+ },
+/obj/structure/window/reinforced{
+ dir = 1;
+ layer = 2.9
+ },
+/obj/structure/window/reinforced{
+ dir = 4
+ },
+/turf/open/floor/plasteel{
+ dir = 2
+ },
+/area/ai_monitored/security/armory)
"adk" = (
/obj/structure/rack,
/obj/item/gun/ballistic/shotgun/riot{
@@ -1183,6 +1549,12 @@
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/carpet,
/area/crew_quarters/heads/hos)
+"adQ" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 2
+ },
+/turf/open/floor/plasteel,
+/area/ai_monitored/security/armory)
"adR" = (
/turf/closed/wall/r_wall,
/area/security/main)
@@ -1468,12 +1840,26 @@
dir = 5
},
/area/security/prison)
+"aes" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/machinery/suit_storage_unit/security,
+/turf/open/floor/plasteel/red/side,
+/area/ai_monitored/security/armory)
"aet" = (
/obj/effect/turf_decal/stripes/corner{
dir = 1
},
/turf/open/floor/plasteel,
/area/ai_monitored/security/armory)
+"aeu" = (
+/obj/structure/cable{
+ icon_state = "1-8"
+ },
+/obj/machinery/suit_storage_unit/security,
+/turf/open/floor/plasteel/red/side,
+/area/ai_monitored/security/armory)
"aev" = (
/obj/machinery/light{
dir = 4
@@ -1608,6 +1994,21 @@
dir = 8
},
/area/security/prison)
+"aeN" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/firedoor,
+/obj/machinery/door/airlock/security{
+ aiControlDisabled = 1;
+ name = "Prisoner Transfer Centre";
+ req_access_txt = "2"
+ },
+/turf/open/floor/plasteel/dark,
+/area/security/execution/transfer)
"aeO" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
@@ -1685,6 +2086,68 @@
},
/turf/open/floor/plasteel,
/area/security/prison)
+"aeW" = (
+/obj/machinery/requests_console{
+ department = "Security";
+ departmentType = 5;
+ pixel_x = -30
+ },
+/obj/machinery/camera{
+ c_tag = "Brig Control Room";
+ dir = 4
+ },
+/obj/machinery/light{
+ dir = 8
+ },
+/obj/structure/rack,
+/obj/item/clothing/mask/gas/sechailer{
+ pixel_x = -3;
+ pixel_y = 3
+ },
+/obj/item/clothing/mask/gas/sechailer,
+/obj/item/clothing/mask/gas/sechailer{
+ pixel_x = 3;
+ pixel_y = -3
+ },
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/warden)
+"aeX" = (
+/obj/structure/cable{
+ icon_state = "0-4"
+ },
+/obj/effect/spawner/structure/window/reinforced,
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 5
+ },
+/turf/open/floor/plating,
+/area/ai_monitored/security/armory)
+"aeY" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/window/southleft{
+ name = "Armory";
+ req_access_txt = "3"
+ },
+/obj/machinery/door/firedoor,
+/obj/effect/turf_decal/stripes/line{
+ dir = 10
+ },
+/turf/open/floor/plasteel,
+/area/ai_monitored/security/armory)
+"aeZ" = (
+/obj/structure/cable{
+ icon_state = "0-8"
+ },
+/obj/structure/cable{
+ icon_state = "0-4"
+ },
+/obj/effect/spawner/structure/window/reinforced,
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 10
+ },
+/turf/open/floor/plating,
+/area/ai_monitored/security/armory)
"afa" = (
/obj/docking_port/stationary{
dir = 4;
@@ -1706,6 +2169,17 @@
/obj/machinery/recharger,
/turf/open/floor/plasteel/showroomfloor,
/area/security/main)
+"afd" = (
+/obj/item/radio/intercom{
+ freerange = 0;
+ frequency = 1459;
+ name = "Station Intercom (General)";
+ pixel_x = 29
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/obj/machinery/vending/wardrobe/sec_wardrobe,
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/main)
"afe" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plasteel/showroomfloor,
@@ -1927,6 +2401,13 @@
},
/turf/open/floor/plasteel/red/side,
/area/security/prison)
+"afK" = (
+/obj/machinery/door/airlock/security/glass{
+ name = "Evidence Storage";
+ req_access_txt = "63"
+ },
+/turf/open/floor/plasteel/red/side,
+/area/security/brig)
"afL" = (
/obj/structure/closet{
name = "Evidence Closet"
@@ -1957,6 +2438,13 @@
},
/turf/open/floor/plasteel/dark,
/area/ai_monitored/storage/eva)
+"afQ" = (
+/obj/effect/spawner/structure/window/reinforced,
+/obj/structure/sign/warning/securearea{
+ pixel_x = -32
+ },
+/turf/open/floor/plating,
+/area/security/main)
"afR" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/obj/effect/spawner/structure/window/reinforced,
@@ -1990,6 +2478,14 @@
/obj/structure/disposalpipe/segment,
/turf/open/floor/plasteel,
/area/security/main)
+"afX" = (
+/obj/structure/cable{
+ icon_state = "1-2"
+ },
+/obj/effect/landmark/start/head_of_security,
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/turf/open/floor/plasteel,
+/area/security/main)
"afY" = (
/obj/effect/landmark/start/security_officer,
/obj/structure/chair{
@@ -2005,6 +2501,15 @@
},
/turf/open/floor/plasteel,
/area/security/main)
+"aga" = (
+/obj/structure/sign/warning/pods{
+ pixel_x = 32
+ },
+/obj/effect/turf_decal/stripes/line{
+ dir = 6
+ },
+/turf/open/floor/plasteel,
+/area/security/main)
"agb" = (
/obj/structure/disposalpipe/segment,
/turf/open/floor/plasteel/red/side{
@@ -2086,6 +2591,13 @@
dir = 9
},
/area/security/prison)
+"agl" = (
+/obj/machinery/door/airlock/security{
+ name = "Interrogation";
+ req_access_txt = "63"
+ },
+/turf/open/floor/plasteel/dark,
+/area/security/prison)
"agm" = (
/obj/machinery/light{
dir = 8
@@ -2099,6 +2611,45 @@
"agn" = (
/turf/closed/wall/r_wall,
/area/security/warden)
+"ago" = (
+/obj/machinery/computer/security,
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/warden)
+"agp" = (
+/obj/machinery/computer/prisoner,
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/warden)
+"agq" = (
+/obj/machinery/door/firedoor,
+/obj/machinery/door/window/southleft{
+ base_state = "right";
+ icon_state = "right";
+ name = "Armory";
+ req_access_txt = "3"
+ },
+/obj/structure/cable{
+ icon_state = "2-8"
+ },
+/obj/structure/cable{
+ icon_state = "1-2"
+ },
+/obj/machinery/light{
+ dir = 4
+ },
+/obj/structure/cable{
+ icon_state = "2-4"
+ },
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/obj/effect/turf_decal/stripes/line{
+ dir = 2
+ },
+/turf/open/floor/plasteel,
+/area/ai_monitored/security/armory)
+"agr" = (
+/obj/machinery/computer/secure_data,
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/warden)
"ags" = (
/obj/structure/chair{
dir = 4
@@ -2188,6 +2739,22 @@
/obj/item/pen,
/turf/open/floor/plasteel,
/area/security/main)
+"agF" = (
+/obj/machinery/door/firedoor,
+/obj/structure/cable{
+ icon_state = "1-2"
+ },
+/obj/structure/sign/warning/securearea{
+ pixel_x = -32
+ },
+/obj/machinery/door/poddoor/preopen{
+ id = "Prison Gate";
+ name = "prison blast door"
+ },
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/obj/effect/turf_decal/delivery,
+/turf/open/floor/plasteel,
+/area/security/brig)
"agG" = (
/obj/machinery/airalarm{
dir = 8;
@@ -2287,6 +2854,12 @@
},
/turf/open/floor/plasteel/showroomfloor,
/area/security/warden)
+"agT" = (
+/obj/structure/cable{
+ icon_state = "2-8"
+ },
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/warden)
"agU" = (
/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
dir = 4
@@ -2438,6 +3011,16 @@
/obj/effect/turf_decal/bot,
/turf/open/floor/plasteel,
/area/security/main)
+"ahm" = (
+/obj/structure/window/reinforced{
+ dir = 4
+ },
+/obj/machinery/iv_drip,
+/obj/item/reagent_containers/blood,
+/turf/open/floor/plasteel/whitered/side{
+ dir = 5
+ },
+/area/security/brig)
"ahn" = (
/turf/closed/wall,
/area/maintenance/fore/secondary)
@@ -2503,6 +3086,30 @@
dir = 10
},
/area/security/brig)
+"ahv" = (
+/obj/machinery/power/apc{
+ dir = 8;
+ name = "Brig Control APC";
+ areastring = "/area/security/warden";
+ pixel_x = -24
+ },
+/obj/structure/cable{
+ icon_state = "0-4"
+ },
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/warden)
+"ahx" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/structure/cable{
+ icon_state = "2-4"
+ },
+/obj/structure/cable{
+ icon_state = "1-4"
+ },
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/warden)
"ahy" = (
/obj/structure/cable{
icon_state = "4-8"
@@ -2510,6 +3117,15 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel/showroomfloor,
/area/security/warden)
+"ahz" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
+ dir = 4
+ },
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/warden)
"ahA" = (
/obj/structure/disposalpipe/segment{
dir = 6
@@ -2543,6 +3159,17 @@
/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,
/turf/open/floor/plasteel,
/area/security/main)
+"ahD" = (
+/obj/machinery/door/window/westleft{
+ base_state = "left";
+ dir = 4;
+ icon_state = "left";
+ name = "Brig Infirmary"
+ },
+/turf/open/floor/plasteel/whitered/side{
+ dir = 4
+ },
+/area/security/brig)
"ahE" = (
/obj/machinery/door/airlock/security/glass{
name = "Brig Control";
@@ -2689,6 +3316,41 @@
"ahP" = (
/turf/open/floor/plasteel/white,
/area/security/brig)
+"ahQ" = (
+/obj/structure/closet/secure_closet/warden,
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/warden)
+"ahR" = (
+/obj/structure/chair/office/dark,
+/obj/effect/landmark/start/warden,
+/obj/machinery/button/door{
+ id = "Prison Gate";
+ name = "Prison Wing Lockdown";
+ pixel_x = -27;
+ pixel_y = 8;
+ req_access_txt = "2"
+ },
+/obj/machinery/button/door{
+ id = "Secure Gate";
+ name = "Cell Shutters";
+ pixel_x = -27;
+ pixel_y = -2
+ },
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/warden)
+"ahS" = (
+/obj/structure/table,
+/obj/structure/cable{
+ icon_state = "1-8"
+ },
+/obj/structure/cable{
+ icon_state = "1-2"
+ },
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/warden)
"ahT" = (
/obj/structure/disposalpipe/segment,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
@@ -2716,6 +3378,23 @@
},
/turf/open/floor/plasteel/dark,
/area/security/brig)
+"ahX" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 5
+ },
+/obj/machinery/computer/crew{
+ dir = 8
+ },
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/warden)
+"ahY" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
+/turf/open/floor/plasteel/red/side{
+ dir = 5
+ },
+/area/security/brig)
"ahZ" = (
/obj/structure/disposalpipe/segment{
dir = 9
@@ -2770,6 +3449,17 @@
dir = 10
},
/area/security/brig)
+"aie" = (
+/obj/structure/table,
+/obj/item/folder/red,
+/obj/item/pen,
+/obj/item/hand_labeler,
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
+/obj/item/book/manual/wiki/security_space_law,
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/warden)
"aif" = (
/obj/structure/disposalpipe/segment,
/obj/structure/cable{
@@ -2924,6 +3614,17 @@
},
/turf/open/floor/plasteel/red/side,
/area/security/main)
+"aiw" = (
+/obj/machinery/door/window/westleft{
+ base_state = "right";
+ dir = 4;
+ icon_state = "right";
+ name = "Brig Infirmary"
+ },
+/turf/open/floor/plasteel/whitered/side{
+ dir = 4
+ },
+/area/security/brig)
"aix" = (
/obj/structure/cable{
icon_state = "4-8"
@@ -2994,6 +3695,84 @@
dir = 5
},
/area/security/brig)
+"aiH" = (
+/obj/machinery/atmospherics/components/unary/vent_scrubber/on,
+/turf/open/floor/plasteel/red/side{
+ dir = 1
+ },
+/area/security/brig)
+"aiI" = (
+/obj/structure/cable{
+ icon_state = "0-4"
+ },
+/obj/structure/sign/warning/electricshock{
+ pixel_x = -32
+ },
+/obj/effect/spawner/structure/window/reinforced,
+/turf/open/floor/plating,
+/area/security/warden)
+"aiJ" = (
+/obj/structure/table/reinforced,
+/obj/structure/cable{
+ icon_state = "0-8"
+ },
+/obj/structure/cable{
+ icon_state = "0-4"
+ },
+/obj/machinery/door/window/brigdoor{
+ dir = 1;
+ name = "Armory Desk";
+ req_access_txt = "3"
+ },
+/obj/machinery/door/window/southleft{
+ name = "Reception Desk";
+ req_access_txt = "63"
+ },
+/obj/item/paper_bin{
+ pixel_x = -3;
+ pixel_y = 7
+ },
+/obj/item/pen{
+ pixel_x = 4;
+ pixel_y = 4
+ },
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/warden)
+"aiK" = (
+/obj/structure/cable{
+ icon_state = "0-8"
+ },
+/obj/structure/cable{
+ icon_state = "0-4"
+ },
+/obj/structure/cable,
+/obj/effect/spawner/structure/window/reinforced,
+/turf/open/floor/plating,
+/area/security/warden)
+"aiL" = (
+/obj/structure/cable{
+ icon_state = "0-8"
+ },
+/obj/structure/cable{
+ icon_state = "0-4"
+ },
+/obj/effect/spawner/structure/window/reinforced,
+/turf/open/floor/plating,
+/area/security/warden)
+"aiM" = (
+/obj/machinery/door/airlock/security/glass{
+ name = "Brig Control";
+ req_access_txt = "3"
+ },
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/warden)
+"aiN" = (
+/obj/structure/cable{
+ icon_state = "0-8"
+ },
+/obj/effect/spawner/structure/window/reinforced,
+/turf/open/floor/plating,
+/area/security/warden)
"aiO" = (
/obj/structure/window/reinforced{
dir = 4
@@ -3016,6 +3795,12 @@
dir = 1
},
/area/security/brig)
+"aiR" = (
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/turf/open/floor/plasteel/red/side{
+ dir = 1
+ },
+/area/security/brig)
"aiS" = (
/obj/item/stack/rods,
/turf/open/space,
@@ -3030,6 +3815,14 @@
"aiV" = (
/turf/closed/wall/r_wall,
/area/security/processing)
+"aiW" = (
+/obj/machinery/door/airlock/security{
+ name = "Interrogation";
+ req_access_txt = "63"
+ },
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/turf/open/floor/plasteel/dark,
+/area/security/prison)
"aiX" = (
/turf/closed/wall/r_wall,
/area/security/brig)
@@ -3069,6 +3862,24 @@
dir = 1
},
/area/security/brig)
+"ajd" = (
+/obj/structure/sign/plaques/golden{
+ pixel_y = 32
+ },
+/turf/open/floor/plasteel/red/side{
+ dir = 1
+ },
+/area/security/brig)
+"aje" = (
+/obj/machinery/atmospherics/components/unary/vent_pump/on,
+/obj/machinery/firealarm{
+ dir = 2;
+ pixel_y = 24
+ },
+/turf/open/floor/plasteel/red/side{
+ dir = 1
+ },
+/area/security/brig)
"ajf" = (
/obj/structure/cable{
icon_state = "1-2"
@@ -3078,6 +3889,25 @@
dir = 1
},
/area/security/brig)
+"ajg" = (
+/obj/structure/cable{
+ icon_state = "1-8"
+ },
+/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,
+/turf/open/floor/plasteel,
+/area/security/brig)
+"ajh" = (
+/obj/machinery/light_switch{
+ pixel_y = 28
+ },
+/obj/structure/closet/secure_closet/courtroom,
+/obj/effect/decal/cleanable/cobweb,
+/obj/structure/sign/warning/securearea{
+ pixel_x = -32
+ },
+/obj/item/gavelhammer,
+/turf/open/floor/plasteel,
+/area/security/courtroom)
"aji" = (
/obj/structure/chair{
name = "Judge"
@@ -3148,6 +3978,20 @@
/obj/machinery/gulag_teleporter,
/turf/open/floor/plasteel,
/area/security/processing)
+"ajt" = (
+/obj/structure/sign/warning/securearea{
+ pixel_x = 32
+ },
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
+ dir = 4
+ },
+/obj/structure/table,
+/obj/item/storage/box/prisoner,
+/obj/machinery/camera{
+ c_tag = "Labor Shuttle Dock North"
+ },
+/turf/open/floor/plasteel,
+/area/security/processing)
"aju" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 6
@@ -3222,6 +4066,17 @@
dir = 1
},
/area/security/brig)
+"ajB" = (
+/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,
+/turf/open/floor/plasteel,
+/area/security/brig)
+"ajC" = (
+/obj/item/storage/toolbox/drone,
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/turf/open/floor/plasteel,
+/area/ai_monitored/security/armory)
"ajD" = (
/obj/structure/cable{
icon_state = "4-8"
@@ -3237,6 +4092,24 @@
dir = 5
},
/area/security/courtroom)
+"ajF" = (
+/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,
+/turf/open/floor/plasteel/red/corner{
+ dir = 2
+ },
+/area/security/brig)
+"ajG" = (
+/obj/machinery/light,
+/obj/machinery/door_timer{
+ id = "Cell 1";
+ name = "Cell 1";
+ pixel_y = -32
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
+/turf/open/floor/plasteel/red/side,
+/area/security/brig)
"ajH" = (
/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
dir = 4
@@ -3251,6 +4124,13 @@
},
/turf/open/floor/plasteel,
/area/security/brig)
+"ajJ" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
+ dir = 4
+ },
+/turf/open/floor/plasteel,
+/area/security/brig)
"ajK" = (
/obj/structure/cable{
icon_state = "1-2"
@@ -3275,6 +4155,17 @@
},
/turf/open/floor/plasteel,
/area/security/courtroom)
+"ajN" = (
+/obj/machinery/door/firedoor,
+/obj/machinery/door/airlock/security{
+ name = "Brig";
+ req_access_txt = "63; 42"
+ },
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
+ dir = 4
+ },
+/turf/open/floor/plasteel,
+/area/security/brig)
"ajO" = (
/obj/structure/table/wood,
/obj/item/radio/intercom{
@@ -3401,6 +4292,20 @@
dir = 8
},
/area/security/brig)
+"akf" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/machinery/door/firedoor,
+/obj/machinery/door/airlock/security{
+ name = "Labor Shuttle";
+ req_access_txt = "2"
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
+/turf/open/floor/plasteel,
+/area/security/brig)
"akg" = (
/obj/structure/cable{
icon_state = "4-8"
@@ -3426,6 +4331,21 @@
},
/turf/open/floor/plasteel,
/area/security/brig)
+"aki" = (
+/obj/structure/cable{
+ icon_state = "1-8"
+ },
+/obj/structure/cable{
+ icon_state = "2-8"
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/turf/open/floor/plasteel/red/corner{
+ dir = 8
+ },
+/area/security/brig)
"akj" = (
/obj/structure/cable{
icon_state = "4-8"
@@ -3435,6 +4355,20 @@
},
/turf/open/floor/plasteel/red/side,
/area/security/brig)
+"akk" = (
+/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
+ dir = 1
+ },
+/turf/open/floor/plasteel/red/corner{
+ dir = 2
+ },
+/area/security/brig)
+"akl" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
+/turf/open/floor/plasteel,
+/area/security/brig)
"akm" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
@@ -3452,6 +4386,73 @@
dir = 4
},
/area/security/courtroom)
+"ako" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
+/obj/machinery/door_timer{
+ id = "Cell 2";
+ name = "Cell 2";
+ pixel_y = -32
+ },
+/turf/open/floor/plasteel/red/side,
+/area/security/brig)
+"akp" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
+/turf/open/floor/plasteel/red/side,
+/area/security/brig)
+"akq" = (
+/obj/machinery/camera{
+ c_tag = "Brig Central";
+ dir = 1
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
+/obj/machinery/door_timer{
+ id = "Cell 3";
+ name = "Cell 3";
+ pixel_y = -32
+ },
+/turf/open/floor/plasteel/red/side,
+/area/security/brig)
+"akr" = (
+/obj/machinery/atmospherics/pipe/manifold/supply/hidden,
+/turf/open/floor/plasteel/red/side{
+ dir = 9
+ },
+/area/security/brig)
+"aks" = (
+/obj/structure/cable{
+ icon_state = "1-2"
+ },
+/obj/machinery/atmospherics/pipe/manifold/supply/hidden,
+/turf/open/floor/plasteel/red/corner{
+ dir = 8
+ },
+/area/security/brig)
+"akt" = (
+/obj/machinery/light,
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
+/obj/machinery/door_timer{
+ id = "Cell 4";
+ name = "Cell 4";
+ pixel_y = -32
+ },
+/turf/open/floor/plasteel/red/side,
+/area/security/brig)
+"aku" = (
+/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
+ dir = 1
+ },
+/turf/open/floor/plasteel/red/side{
+ dir = 4
+ },
+/area/security/brig)
"akv" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
@@ -3480,6 +4481,10 @@
dir = 8
},
/area/security/courtroom)
+"akz" = (
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/turf/open/floor/plasteel/floorgrime,
+/area/security/brig)
"akA" = (
/obj/structure/chair{
dir = 8;
@@ -3495,6 +4500,13 @@
},
/turf/open/floor/plating,
/area/maintenance/solars/port/fore)
+"akG" = (
+/obj/structure/sign/warning/vacuum/external{
+ pixel_y = 32
+ },
+/obj/effect/spawner/structure/window/reinforced,
+/turf/open/floor/plating,
+/area/security/processing)
"akH" = (
/obj/machinery/atmospherics/components/unary/vent_pump/on{
dir = 4
@@ -3531,12 +4543,87 @@
/obj/machinery/meter,
/turf/open/floor/plating,
/area/maintenance/fore)
+"akM" = (
+/obj/structure/cable{
+ icon_state = "0-2"
+ },
+/obj/structure/cable{
+ icon_state = "0-4"
+ },
+/obj/structure/cable,
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/obj/effect/spawner/structure/window/reinforced,
+/turf/open/floor/plating,
+/area/security/brig)
+"akN" = (
+/obj/structure/cable{
+ icon_state = "0-4"
+ },
+/obj/structure/cable{
+ icon_state = "0-8"
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/obj/effect/spawner/structure/window/reinforced,
+/turf/open/floor/plating,
+/area/security/brig)
+"akO" = (
+/obj/machinery/door/window/brigdoor/security/cell{
+ id = "Cell 1";
+ name = "Cell 1"
+ },
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/turf/open/floor/plasteel/red/side,
+/area/security/brig)
+"akP" = (
+/obj/structure/cable{
+ icon_state = "0-8"
+ },
+/obj/structure/cable{
+ icon_state = "0-4"
+ },
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/obj/effect/spawner/structure/window/reinforced,
+/turf/open/floor/plating,
+/area/security/brig)
"akQ" = (
/obj/structure/cable{
icon_state = "4-8"
},
/turf/closed/wall,
/area/security/brig)
+"akR" = (
+/obj/machinery/door/window/brigdoor/security/cell{
+ id = "Cell 2";
+ name = "Cell 2"
+ },
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/turf/open/floor/plasteel/red/side,
+/area/security/brig)
+"akS" = (
+/obj/structure/cable{
+ icon_state = "0-8"
+ },
+/obj/structure/cable{
+ icon_state = "0-4"
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/obj/effect/spawner/structure/window/reinforced,
+/turf/open/floor/plating,
+/area/security/brig)
+"akT" = (
+/obj/machinery/door/window/brigdoor/security/cell{
+ id = "Cell 3";
+ name = "Cell 3"
+ },
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/turf/open/floor/plasteel/red/side,
+/area/security/brig)
"akU" = (
/obj/machinery/door/airlock/security/glass{
name = "Brig Desk";
@@ -3560,6 +4647,75 @@
/obj/effect/spawner/structure/window/reinforced,
/turf/open/floor/plating,
/area/security/brig)
+"akW" = (
+/obj/effect/mapping_helpers/airlock/cyclelink_helper,
+/obj/machinery/door/airlock/security/glass{
+ id_tag = "innerbrig";
+ name = "Brig";
+ req_access_txt = "63"
+ },
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/turf/open/floor/plasteel/red/side{
+ dir = 5
+ },
+/area/security/brig)
+"akX" = (
+/obj/effect/mapping_helpers/airlock/cyclelink_helper,
+/obj/machinery/door/airlock/security/glass{
+ id_tag = "innerbrig";
+ name = "Brig";
+ req_access_txt = "63"
+ },
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/turf/open/floor/plasteel/red/side{
+ dir = 9
+ },
+/area/security/brig)
+"akY" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/structure/cable{
+ icon_state = "1-8"
+ },
+/obj/effect/spawner/structure/window/reinforced,
+/turf/open/floor/plating,
+/area/security/brig)
+"akZ" = (
+/obj/structure/cable{
+ icon_state = "0-8"
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/obj/effect/spawner/structure/window/reinforced,
+/turf/open/floor/plating,
+/area/security/brig)
+"ala" = (
+/obj/machinery/door/window/brigdoor/security/cell{
+ id = "Cell 4";
+ name = "Cell 4"
+ },
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/turf/open/floor/plasteel/red/side,
+/area/security/brig)
+"alb" = (
+/obj/structure/chair{
+ dir = 4;
+ name = "Prosecution"
+ },
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/open/floor/plasteel/red/side{
+ dir = 9
+ },
+/area/security/courtroom)
"alc" = (
/obj/structure/table/wood,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
@@ -3579,6 +4735,12 @@
dir = 6
},
/area/security/courtroom)
+"alf" = (
+/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
+ dir = 1
+ },
+/turf/open/floor/plasteel/floorgrime,
+/area/security/brig)
"alg" = (
/obj/structure/cable{
icon_state = "0-2"
@@ -3609,6 +4771,17 @@
},
/turf/open/floor/plasteel,
/area/engine/atmos)
+"aln" = (
+/obj/effect/mapping_helpers/airlock/cyclelink_helper{
+ dir = 4
+ },
+/obj/machinery/door/airlock/external{
+ name = "Labor Camp Shuttle Airlock";
+ req_access_txt = "2";
+ shuttledocked = 1
+ },
+/turf/open/floor/plating,
+/area/security/processing)
"alp" = (
/turf/open/floor/plating,
/area/security/processing)
@@ -3640,6 +4813,35 @@
dir = 8
},
/area/ai_monitored/nuke_storage)
+"alv" = (
+/obj/structure/cable{
+ icon_state = "1-2"
+ },
+/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
+ dir = 1
+ },
+/obj/item/radio/intercom{
+ desc = "Talk through this. It looks like it has been modified to not broadcast.";
+ dir = 2;
+ name = "Prison Intercom (General)";
+ pixel_x = -25;
+ pixel_y = -2;
+ prison_radio = 1
+ },
+/turf/open/floor/plasteel/floorgrime,
+/area/security/brig)
+"alw" = (
+/obj/machinery/atmospherics/components/unary/vent_pump/on{
+ dir = 1
+ },
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/open/floor/plasteel/floorgrime,
+/area/security/brig)
+"alx" = (
+/turf/open/floor/plasteel/floorgrime,
+/area/security/brig)
"aly" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
dir = 1
@@ -3654,6 +4856,23 @@
},
/turf/open/floor/plasteel/floorgrime,
/area/security/brig)
+"alz" = (
+/obj/machinery/button/door{
+ id = "briggate";
+ name = "Desk Shutters";
+ pixel_x = -26;
+ pixel_y = 6
+ },
+/obj/structure/cable{
+ icon_state = "1-2"
+ },
+/obj/machinery/button/flasher{
+ id = "brigentry";
+ pixel_x = -28;
+ pixel_y = -8
+ },
+/turf/open/floor/plasteel/dark,
+/area/security/brig)
"alA" = (
/obj/structure/table/reinforced,
/obj/machinery/door/poddoor/shutters/preopen{
@@ -3685,6 +4904,19 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plating,
/area/security/courtroom)
+"alE" = (
+/obj/machinery/atmospherics/components/unary/vent_pump/on{
+ dir = 1
+ },
+/obj/machinery/flasher{
+ id = "Cell 4";
+ pixel_x = 28
+ },
+/obj/machinery/light/small{
+ dir = 4
+ },
+/turf/open/floor/plasteel/floorgrime,
+/area/security/brig)
"alF" = (
/obj/machinery/atmospherics/components/unary/tank/air{
dir = 2
@@ -3826,6 +5058,18 @@
},
/turf/open/floor/plasteel,
/area/security/processing)
+"amf" = (
+/obj/structure/bed,
+/obj/item/bedsheet,
+/obj/structure/cable{
+ icon_state = "1-2"
+ },
+/obj/machinery/flasher{
+ id = "Cell 1";
+ pixel_x = -28
+ },
+/turf/open/floor/plasteel/floorgrime,
+/area/security/brig)
"amg" = (
/obj/structure/closet/secure_closet/brig{
id = "Cell 1";
@@ -3833,6 +5077,15 @@
},
/turf/open/floor/plasteel/floorgrime,
/area/security/brig)
+"amh" = (
+/obj/structure/bed,
+/obj/item/bedsheet,
+/obj/machinery/flasher{
+ id = "Cell 2";
+ pixel_x = -28
+ },
+/turf/open/floor/plasteel/floorgrime,
+/area/security/brig)
"ami" = (
/obj/structure/closet/secure_closet/brig{
id = "Cell 2";
@@ -3840,6 +5093,15 @@
},
/turf/open/floor/plasteel/floorgrime,
/area/security/brig)
+"amj" = (
+/obj/structure/bed,
+/obj/item/bedsheet,
+/obj/machinery/flasher{
+ id = "Cell 3";
+ pixel_x = -28
+ },
+/turf/open/floor/plasteel/floorgrime,
+/area/security/brig)
"amk" = (
/obj/structure/closet/secure_closet/brig{
id = "Cell 3";
@@ -3894,6 +5156,15 @@
},
/turf/open/floor/plasteel/dark,
/area/security/brig)
+"amo" = (
+/obj/machinery/flasher{
+ id = "brigentry";
+ pixel_x = 28
+ },
+/turf/open/floor/plasteel/red/side{
+ dir = 5
+ },
+/area/security/brig)
"amp" = (
/obj/structure/closet/secure_closet/brig{
id = "Cell 4";
@@ -3901,6 +5172,19 @@
},
/turf/open/floor/plasteel/floorgrime,
/area/security/brig)
+"amq" = (
+/obj/structure/bed,
+/obj/item/bedsheet,
+/obj/item/radio/intercom{
+ desc = "Talk through this. It looks like it has been modified to not broadcast.";
+ dir = 2;
+ name = "Prison Intercom (General)";
+ pixel_x = 25;
+ pixel_y = -2;
+ prison_radio = 1
+ },
+/turf/open/floor/plasteel/floorgrime,
+/area/security/brig)
"amr" = (
/obj/effect/spawner/structure/window/reinforced,
/turf/open/floor/plating,
@@ -4012,6 +5296,10 @@
/obj/item/trash/plate,
/turf/open/floor/plating,
/area/maintenance/port/fore)
+"amK" = (
+/obj/structure/sign/warning/docking,
+/turf/closed/wall,
+/area/security/processing)
"amL" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/obj/effect/spawner/structure/window/reinforced,
@@ -4048,12 +5336,112 @@
},
/turf/open/floor/plasteel/showroomfloor,
/area/security/warden)
+"amQ" = (
+/obj/structure/cable{
+ icon_state = "0-4"
+ },
+/obj/structure/cable,
+/obj/machinery/door/poddoor/preopen{
+ id = "Secure Gate";
+ name = "brig shutters"
+ },
+/obj/effect/spawner/structure/window/reinforced,
+/turf/open/floor/plating,
+/area/security/brig)
+"amR" = (
+/obj/structure/cable{
+ icon_state = "0-4"
+ },
+/obj/structure/cable{
+ icon_state = "0-8"
+ },
+/obj/machinery/door/poddoor/preopen{
+ id = "Secure Gate";
+ name = "brig shutters"
+ },
+/obj/effect/spawner/structure/window/reinforced,
+/turf/open/floor/plating,
+/area/security/brig)
"amS" = (
/obj/structure/cable{
icon_state = "4-8"
},
/turf/closed/wall/r_wall,
/area/security/brig)
+"amT" = (
+/obj/structure/table/reinforced,
+/obj/machinery/door/poddoor/shutters/preopen{
+ id = "briggate";
+ name = "security shutters"
+ },
+/obj/machinery/door/window/southleft{
+ name = "Brig Desk";
+ req_access_txt = "1"
+ },
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/structure/cable{
+ icon_state = "1-8"
+ },
+/turf/open/floor/plasteel/dark,
+/area/security/brig)
+"amU" = (
+/obj/machinery/door/poddoor/preopen{
+ id = "briggate";
+ name = "security blast door"
+ },
+/obj/structure/cable{
+ icon_state = "0-8"
+ },
+/obj/effect/spawner/structure/window/reinforced,
+/turf/open/floor/plating,
+/area/security/brig)
+"amV" = (
+/obj/structure/table/reinforced,
+/obj/machinery/door/poddoor/shutters/preopen{
+ id = "briggate";
+ name = "security shutters"
+ },
+/obj/machinery/door/window/southleft{
+ base_state = "right";
+ icon_state = "right";
+ name = "Brig Desk";
+ req_access_txt = "1"
+ },
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/turf/open/floor/plasteel/dark,
+/area/security/brig)
+"amW" = (
+/obj/machinery/door/firedoor,
+/obj/effect/mapping_helpers/airlock/cyclelink_helper{
+ dir = 1
+ },
+/obj/machinery/door/airlock/security/glass{
+ id_tag = "outerbrig";
+ name = "Brig";
+ req_access_txt = "63"
+ },
+/turf/open/floor/plasteel/red/side{
+ dir = 5
+ },
+/area/security/brig)
+"amX" = (
+/obj/machinery/door/firedoor,
+/obj/effect/mapping_helpers/airlock/cyclelink_helper{
+ dir = 1
+ },
+/obj/machinery/door/airlock/security/glass{
+ id_tag = "outerbrig";
+ name = "Brig";
+ req_access_txt = "63"
+ },
+/turf/open/floor/plasteel/red/side{
+ dir = 9
+ },
+/area/security/brig)
"amY" = (
/obj/structure/chair{
dir = 1
@@ -4199,6 +5587,22 @@
},
/turf/open/floor/plasteel,
/area/security/processing)
+"anu" = (
+/obj/machinery/button/door{
+ desc = "A remote control switch for the exit.";
+ id = "laborexit";
+ name = "exit button";
+ normaldoorcontrol = 1;
+ pixel_x = 26;
+ pixel_y = -6
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 9
+ },
+/turf/open/floor/plasteel/red/side{
+ dir = 5
+ },
+/area/security/processing)
"anv" = (
/obj/structure/cable{
icon_state = "1-2"
@@ -4216,6 +5620,25 @@
dir = 1
},
/area/hallway/primary/fore)
+"anx" = (
+/obj/structure/sign/warning/electricshock{
+ pixel_y = 32
+ },
+/turf/open/floor/plasteel/red/corner{
+ dir = 1
+ },
+/area/hallway/primary/fore)
+"any" = (
+/obj/structure/sign/warning/electricshock{
+ pixel_y = 32
+ },
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/open/floor/plasteel/red/corner{
+ dir = 1
+ },
+/area/hallway/primary/fore)
"anz" = (
/turf/open/floor/plasteel,
/area/hallway/primary/fore)
@@ -4224,6 +5647,21 @@
dir = 4
},
/area/hallway/primary/fore)
+"anB" = (
+/obj/machinery/light{
+ dir = 1
+ },
+/obj/structure/sign/warning/securearea{
+ pixel_y = 32
+ },
+/turf/open/floor/plasteel/red/corner{
+ dir = 4
+ },
+/area/hallway/primary/fore)
+"anC" = (
+/obj/effect/spawner/structure/window,
+/turf/open/floor/plating,
+/area/security/courtroom)
"anD" = (
/obj/structure/cable{
icon_state = "1-2"
@@ -4279,6 +5717,16 @@
/obj/effect/spawner/lootdrop/maintenance,
/turf/open/floor/plating,
/area/maintenance/port/fore)
+"anN" = (
+/obj/effect/mapping_helpers/airlock/cyclelink_helper{
+ dir = 4
+ },
+/obj/machinery/door/airlock/external{
+ name = "Labor Camp Shuttle Airlock";
+ shuttledocked = 1
+ },
+/turf/open/floor/plating,
+/area/security/processing)
"anO" = (
/obj/docking_port/stationary{
dir = 8;
@@ -4291,10 +5739,43 @@
},
/turf/open/space/basic,
/area/space)
+"anP" = (
+/obj/machinery/door/firedoor,
+/obj/machinery/door/airlock/security{
+ id_tag = "laborexit";
+ name = "Labor Shuttle";
+ req_access_txt = "63"
+ },
+/turf/open/floor/plasteel,
+/area/security/processing)
+"anQ" = (
+/obj/structure/sign/warning/electricshock{
+ pixel_y = 32
+ },
+/obj/machinery/light{
+ dir = 1
+ },
+/turf/open/floor/plasteel,
+/area/hallway/primary/fore)
+"anR" = (
+/obj/machinery/atmospherics/components/unary/vent_scrubber/on,
+/turf/open/floor/plasteel,
+/area/hallway/primary/fore)
"anS" = (
/obj/machinery/holopad,
/turf/open/floor/plasteel,
/area/hallway/primary/fore)
+"anT" = (
+/obj/machinery/atmospherics/components/unary/vent_pump/on,
+/turf/open/floor/plasteel,
+/area/hallway/primary/fore)
+"anU" = (
+/obj/machinery/door/firedoor,
+/obj/machinery/door/airlock/public/glass{
+ name = "Courtroom"
+ },
+/turf/open/floor/plasteel/dark,
+/area/security/courtroom)
"anV" = (
/obj/machinery/light/small,
/turf/open/floor/plasteel/dark,
@@ -4435,6 +5916,13 @@
/obj/item/circuitboard/machine/monkey_recycler,
/turf/open/floor/plating,
/area/maintenance/port/fore)
+"aoq" = (
+/obj/structure/sign/warning/vacuum/external{
+ pixel_y = -32
+ },
+/obj/effect/spawner/structure/window/reinforced,
+/turf/open/floor/plating,
+/area/security/processing)
"aor" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
dir = 4
@@ -4496,11 +5984,68 @@
dir = 8
},
/area/hallway/primary/fore)
+"aoy" = (
+/obj/machinery/navbeacon{
+ codes_txt = "patrol;next_patrol=EVA";
+ location = "Security"
+ },
+/turf/open/floor/plasteel,
+/area/hallway/primary/fore)
"aoz" = (
/turf/open/floor/plasteel/red/corner{
dir = 2
},
/area/hallway/primary/fore)
+"aoA" = (
+/obj/item/radio/intercom{
+ name = "Station Intercom (General)";
+ pixel_y = -29
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/turf/open/floor/plasteel/red/corner{
+ dir = 2
+ },
+/area/hallway/primary/fore)
+"aoB" = (
+/obj/machinery/firealarm{
+ dir = 1;
+ pixel_y = -24
+ },
+/turf/open/floor/plasteel/red/corner{
+ dir = 2
+ },
+/area/hallway/primary/fore)
+"aoC" = (
+/obj/machinery/vending/coffee,
+/turf/open/floor/plasteel/red/corner{
+ dir = 2
+ },
+/area/hallway/primary/fore)
+"aoD" = (
+/obj/machinery/camera{
+ c_tag = "Fore Primary Hallway East";
+ dir = 1
+ },
+/obj/structure/extinguisher_cabinet{
+ pixel_x = 5;
+ pixel_y = -32
+ },
+/turf/open/floor/plasteel/red/corner{
+ dir = 2
+ },
+/area/hallway/primary/fore)
+"aoE" = (
+/obj/machinery/vending/cigarette,
+/turf/open/floor/plasteel/red/corner{
+ dir = 2
+ },
+/area/hallway/primary/fore)
+"aoF" = (
+/obj/machinery/vending/snack/random,
+/turf/open/floor/plasteel/red/corner{
+ dir = 2
+ },
+/area/hallway/primary/fore)
"aoG" = (
/obj/structure/table,
/obj/machinery/firealarm{
@@ -4718,6 +6263,12 @@
/obj/machinery/atmospherics/pipe/manifold/supply/hidden,
/turf/closed/wall,
/area/maintenance/fore/secondary)
+"apo" = (
+/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
+ dir = 1
+ },
+/turf/closed/wall,
+/area/maintenance/fore/secondary)
"app" = (
/obj/structure/disposalpipe/segment{
dir = 6
@@ -5343,6 +6894,10 @@
/obj/item/pen/red,
/turf/open/floor/wood,
/area/lawoffice)
+"arc" = (
+/obj/machinery/atmospherics/components/unary/vent_scrubber/on,
+/turf/open/floor/plasteel,
+/area/ai_monitored/security/armory)
"ard" = (
/obj/machinery/door/poddoor/preopen{
id = "lawyer_blast";
@@ -7438,6 +8993,18 @@
},
/turf/open/floor/plating,
/area/maintenance/starboard/fore)
+"awN" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
+ dir = 4
+ },
+/obj/structure/cable{
+ icon_state = "2-4"
+ },
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/warden)
"awO" = (
/obj/structure/cable{
icon_state = "4-8"
@@ -9521,6 +11088,10 @@
},
/turf/open/floor/plasteel,
/area/ai_monitored/storage/eva)
+"aCd" = (
+/obj/machinery/cryopod,
+/turf/open/floor/carpet,
+/area/crew_quarters/dorms)
"aCe" = (
/obj/effect/landmark/xeno_spawn,
/obj/item/bikehorn/rubberducky,
@@ -10135,6 +11706,16 @@
/obj/structure/sign/warning/electricshock,
/turf/closed/wall/r_wall,
/area/ai_monitored/storage/eva)
+"aDK" = (
+/obj/machinery/door/airlock{
+ id_tag = "Dorm1";
+ name = "Cryogenics"
+ },
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
+ dir = 4
+ },
+/turf/open/floor/plasteel,
+/area/crew_quarters/dorms)
"aDL" = (
/obj/structure/sink{
dir = 8;
@@ -10632,12 +12213,61 @@
/obj/structure/sign/warning/securearea,
/turf/closed/wall/r_wall,
/area/ai_monitored/storage/eva)
+"aFd" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/turf/open/floor/plasteel/neutral/side{
+ dir = 4
+ },
+/area/crew_quarters/dorms)
+"aFe" = (
+/obj/machinery/camera{
+ c_tag = "Dormitory South";
+ dir = 4
+ },
+/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
+ dir = 8
+ },
+/turf/open/floor/plasteel/neutral/side{
+ dir = 8
+ },
+/area/crew_quarters/dorms)
+"aFf" = (
+/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
+ dir = 1
+ },
+/turf/open/floor/plasteel/freezer,
+/area/crew_quarters/toilet)
"aFg" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
},
/turf/closed/wall,
/area/crew_quarters/toilet)
+"aFh" = (
+/obj/machinery/door/airlock{
+ name = "Unisex Restrooms"
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
+/turf/open/floor/plasteel/freezer,
+/area/crew_quarters/toilet)
+"aFi" = (
+/obj/machinery/power/apc{
+ dir = 4;
+ name = "Dormitory Bathrooms APC";
+ areastring = "/area/crew_quarters/toilet";
+ pixel_x = 26
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
+/obj/structure/cable,
+/turf/open/floor/plasteel/freezer,
+/area/crew_quarters/toilet)
"aFj" = (
/turf/open/floor/plasteel/redblue/redside,
/area/crew_quarters/theatre)
@@ -11524,6 +13154,16 @@
dir = 4
},
/area/chapel/main)
+"aHp" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
+/obj/structure/cable{
+ icon_state = "1-2"
+ },
+/obj/structure/filingcabinet/chestdrawer,
+/turf/open/floor/plasteel/showroomfloor,
+/area/security/warden)
"aHq" = (
/obj/effect/spawner/structure/window/reinforced,
/turf/open/floor/plating,
@@ -12033,6 +13673,11 @@
/obj/structure/table/glass,
/turf/open/floor/plasteel/chapel,
/area/chapel/main)
+"aIF" = (
+/obj/effect/spawner/structure/window/reinforced,
+/obj/structure/cable,
+/turf/open/floor/plating,
+/area/security/warden)
"aIH" = (
/obj/structure/table,
/obj/item/storage/box/lights/mixed,
@@ -15030,10 +16675,7 @@
/turf/open/floor/plasteel,
/area/crew_quarters/locker)
"aQX" = (
-/obj/machinery/firealarm{
- dir = 2;
- pixel_y = 24
- },
+/obj/machinery/vending/kink,
/turf/open/floor/plasteel,
/area/crew_quarters/locker)
"aQY" = (
@@ -21243,7 +22885,7 @@
/obj/structure/table/reinforced,
/obj/machinery/door/window/southright{
name = "Research and Development Desk";
- req_access_txt = "7"
+ req_one_access_txt = "7;29"
},
/obj/machinery/door/poddoor/shutters/preopen{
id = "rnd";
@@ -22418,6 +24060,10 @@
},
/turf/open/floor/plating,
/area/maintenance/disposal)
+"bkA" = (
+/obj/effect/landmark/event_spawn,
+/turf/open/floor/plasteel,
+/area/ai_monitored/security/armory)
"bkB" = (
/obj/machinery/button/door{
id = "Disposal Exit";
@@ -23032,6 +24678,13 @@
},
/turf/open/floor/plating,
/area/maintenance/disposal)
+"blT" = (
+/obj/structure/cable{
+ icon_state = "2-4"
+ },
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/turf/open/floor/plasteel,
+/area/ai_monitored/security/armory)
"blU" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/wood,
@@ -34333,10 +35986,7 @@
/turf/open/floor/engine/vacuum,
/area/science/mixing)
"bMu" = (
-/obj/machinery/door/poddoor{
- id = "mixvent";
- name = "Mixer Room Vent"
- },
+/obj/machinery/door/poddoor/incinerator_toxmix,
/turf/open/floor/engine/vacuum,
/area/science/mixing)
"bMv" = (
@@ -34346,9 +35996,8 @@
/turf/closed/wall/r_wall,
/area/science/mixing)
"bMw" = (
-/obj/machinery/sparker{
+/obj/machinery/sparker/toxmix{
dir = 2;
- id = "mixingsparker";
pixel_x = 25
},
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/atmos/toxins_mixing_output{
@@ -34357,9 +36006,7 @@
/turf/open/floor/engine/vacuum,
/area/science/mixing)
"bMx" = (
-/obj/machinery/airlock_sensor{
- id_tag = "tox_airlock_sensor";
- master_tag = "tox_airlock_control";
+/obj/machinery/airlock_sensor/incinerator_toxmix{
pixel_y = 24
},
/obj/machinery/atmospherics/components/binary/pump/on{
@@ -34384,14 +36031,8 @@
dir = 4
},
/obj/machinery/meter,
-/obj/machinery/embedded_controller/radio/airlock_controller{
- airpump_tag = "tox_airlock_pump";
- exterior_door_tag = "tox_airlock_exterior";
- id_tag = "tox_airlock_control";
- interior_door_tag = "tox_airlock_interior";
- pixel_x = -24;
- sanitize_external = 1;
- sensor_tag = "tox_airlock_sensor"
+/obj/machinery/embedded_controller/radio/airlock_controller/incinerator_toxmix{
+ pixel_x = -24
},
/obj/effect/turf_decal/stripes/corner{
dir = 1
@@ -34721,33 +36362,17 @@
/area/science/mixing)
"bNu" = (
/obj/effect/mapping_helpers/airlock/locked,
-/obj/machinery/door/airlock/research/glass{
- autoclose = 0;
- frequency = 1449;
- heat_proof = 1;
- id_tag = "tox_airlock_exterior";
- name = "Mixing Room Exterior Airlock";
- req_access_txt = "8"
- },
+/obj/machinery/door/airlock/research/glass/incinerator/toxmix_exterior,
/turf/open/floor/engine,
/area/science/mixing)
"bNv" = (
/obj/effect/mapping_helpers/airlock/locked,
-/obj/machinery/door/airlock/research/glass{
- autoclose = 0;
- frequency = 1449;
- heat_proof = 1;
- id_tag = "tox_airlock_interior";
- name = "Mixing Room Interior Airlock";
- req_access_txt = "8"
- },
+/obj/machinery/door/airlock/research/glass/incinerator/toxmix_interior,
/turf/open/floor/engine,
/area/science/mixing)
"bNw" = (
-/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume{
- dir = 2;
- frequency = 1449;
- id = "tox_airlock_pump"
+/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume/incinerator_toxmix{
+ dir = 2
},
/turf/open/floor/engine,
/area/science/mixing)
@@ -35124,7 +36749,6 @@
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
},
-/obj/machinery/droneDispenser,
/turf/open/floor/plasteel,
/area/science/misc_lab)
"bOx" = (
@@ -35178,9 +36802,8 @@
/turf/open/floor/plasteel,
/area/tcommsat/computer)
"bOE" = (
-/obj/machinery/sparker{
+/obj/machinery/sparker/toxmix{
dir = 2;
- id = "mixingsparker";
pixel_x = 25
},
/obj/machinery/atmospherics/components/unary/outlet_injector/atmos/toxins_mixing_input{
@@ -35215,15 +36838,11 @@
dir = 4
},
/obj/machinery/meter,
-/obj/machinery/button/door{
- id = "mixvent";
- name = "Mixing Room Vent Control";
+/obj/machinery/button/door/incinerator_vent_toxmix{
pixel_x = -25;
- pixel_y = 5;
- req_access_txt = "7"
+ pixel_y = 5
},
-/obj/machinery/button/ignition{
- id = "mixingsparker";
+/obj/machinery/button/ignition/incinerator/toxmix{
pixel_x = -25;
pixel_y = -5
},
@@ -35802,11 +37421,8 @@
},
/turf/open/floor/plasteel,
/area/tcommsat/computer)
-"bPS" = (
-/turf/open/floor/wood,
-/area/maintenance/port/aft)
-"bPW" = (
-/obj/effect/decal/cleanable/oil,
+"bPU" = (
+/obj/effect/spawner/lootdrop/keg,
/turf/open/floor/plating,
/area/maintenance/port/aft)
"bPX" = (
@@ -36709,6 +38325,13 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel,
/area/tcommsat/computer)
+"bSu" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 6
+ },
+/obj/structure/table/wood,
+/turf/open/floor/wood,
+/area/maintenance/bar)
"bSv" = (
/obj/machinery/camera{
c_tag = "Construction Area";
@@ -37159,13 +38782,6 @@
/obj/structure/disposalpipe/segment,
/turf/open/floor/plating,
/area/maintenance/starboard/aft)
-"bTx" = (
-/obj/machinery/atmospherics/components/unary/portables_connector/visible{
- dir = 8
- },
-/obj/machinery/portable_atmospherics/canister/air,
-/turf/open/floor/plating,
-/area/maintenance/port/aft)
"bTz" = (
/obj/machinery/door/airlock/maintenance{
req_access_txt = "12"
@@ -37529,6 +39145,34 @@
},
/turf/open/floor/plating,
/area/maintenance/port/aft)
+"bUt" = (
+/obj/structure/cable{
+ icon_state = "0-4"
+ },
+/turf/open/floor/plating,
+/area/maintenance/port/aft)
+"bUu" = (
+/obj/structure/disposalpipe/segment{
+ dir = 6
+ },
+/obj/structure/cable{
+ icon_state = "2-4"
+ },
+/obj/structure/cable{
+ icon_state = "2-8"
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 6
+ },
+/turf/open/floor/plating,
+/area/maintenance/port/aft)
+"bUv" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/turf/open/floor/plating,
+/area/maintenance/port/aft)
"bUx" = (
/obj/structure/disposalpipe/junction/yjunction{
dir = 1
@@ -37976,6 +39620,12 @@
/obj/machinery/atmospherics/components/unary/portables_connector/visible,
/turf/open/floor/plating,
/area/maintenance/port/aft)
+"bVG" = (
+/obj/structure/sign/warning/nosmoking{
+ pixel_x = -28
+ },
+/turf/open/floor/plating,
+/area/maintenance/port/aft)
"bVI" = (
/turf/closed/wall/r_wall,
/area/tcommsat/server)
@@ -39776,6 +41426,10 @@
},
/turf/open/floor/plating,
/area/maintenance/port/aft)
+"car" = (
+/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,
+/turf/closed/wall,
+/area/maintenance/bar)
"cas" = (
/obj/machinery/door/airlock/maintenance{
req_access_txt = "12"
@@ -40299,16 +41953,13 @@
/turf/open/floor/plating,
/area/maintenance/starboard/aft)
"cbw" = (
-/obj/structure/cable{
- icon_state = "1-2"
- },
/obj/structure/cable{
icon_state = "2-8"
},
-/obj/structure/disposalpipe/segment,
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 5
+/obj/structure/cable{
+ icon_state = "1-2"
},
+/obj/machinery/atmospherics/pipe/manifold/supply/hidden,
/turf/open/floor/plating,
/area/maintenance/port/aft)
"cbx" = (
@@ -43978,19 +45629,13 @@
/turf/open/floor/plasteel/floorgrime,
/area/maintenance/disposal/incinerator)
"cli" = (
-/obj/machinery/button/door{
- id = "auxincineratorvent";
- name = "Auxiliary Vent Control";
+/obj/machinery/button/door/incinerator_vent_atmos_aux{
pixel_x = 6;
- pixel_y = -24;
- req_access_txt = "32"
+ pixel_y = -24
},
-/obj/machinery/button/door{
- id = "turbinevent";
- name = "Turbine Vent Control";
+/obj/machinery/button/door/incinerator_vent_atmos_main{
pixel_x = -6;
- pixel_y = -24;
- req_access_txt = "32"
+ pixel_y = -24
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{
dir = 4
@@ -44230,6 +45875,11 @@
dir = 1
},
/area/engine/engineering)
+"clS" = (
+/obj/machinery/atmospherics/pipe/manifold/supply/hidden,
+/obj/machinery/rnd/production/techfab/department/security,
+/turf/open/floor/plasteel/red/side,
+/area/security/main)
"clT" = (
/obj/machinery/portable_atmospherics/canister/nitrogen,
/turf/open/floor/engine/n2,
@@ -44276,14 +45926,7 @@
/area/maintenance/disposal/incinerator)
"cmf" = (
/obj/effect/mapping_helpers/airlock/locked,
-/obj/machinery/door/airlock/public/glass{
- autoclose = 0;
- frequency = 1449;
- heat_proof = 1;
- id_tag = "incinerator_airlock_interior";
- name = "Turbine Interior Airlock";
- req_access_txt = "32"
- },
+/obj/machinery/door/airlock/public/glass/incinerator/atmos_interior,
/obj/structure/cable/yellow{
icon_state = "1-2"
},
@@ -44291,17 +45934,9 @@
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 9
},
-/obj/machinery/embedded_controller/radio/airlock_controller{
- airpump_tag = "incinerator_airlock_pump";
- exterior_door_tag = "incinerator_airlock_exterior";
- id_tag = "incinerator_airlock_control";
- interior_door_tag = "incinerator_airlock_interior";
- name = "Incinerator Access Console";
+/obj/machinery/embedded_controller/radio/airlock_controller/incinerator_atmos{
pixel_x = 38;
- pixel_y = 6;
- req_access_txt = "12";
- sanitize_external = 1;
- sensor_tag = "incinerator_airlock_sensor"
+ pixel_y = 6
},
/turf/open/floor/engine,
/area/maintenance/disposal/incinerator)
@@ -44538,9 +46173,7 @@
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
},
-/obj/machinery/airlock_sensor{
- id_tag = "incinerator_airlock_sensor";
- master_tag = "incinerator_airlock_control";
+/obj/machinery/airlock_sensor/incinerator_atmos{
pixel_x = 8;
pixel_y = 24
},
@@ -44565,10 +46198,8 @@
/obj/structure/cable/yellow{
icon_state = "1-2"
},
-/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume{
- dir = 8;
- frequency = 1449;
- id = "incinerator_airlock_pump"
+/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume/incinerator_atmos{
+ dir = 8
},
/turf/open/floor/engine,
/area/maintenance/disposal/incinerator)
@@ -44762,14 +46393,7 @@
/area/construction)
"cnC" = (
/obj/effect/mapping_helpers/airlock/locked,
-/obj/machinery/door/airlock/public/glass{
- autoclose = 0;
- frequency = 1449;
- heat_proof = 1;
- id_tag = "incinerator_airlock_exterior";
- name = "Turbine Exterior Airlock";
- req_access_txt = "32"
- },
+/obj/machinery/door/airlock/public/glass/incinerator/atmos_exterior,
/obj/structure/cable/yellow{
icon_state = "1-2"
},
@@ -45033,10 +46657,7 @@
/turf/open/floor/engine/vacuum,
/area/maintenance/disposal/incinerator)
"cos" = (
-/obj/machinery/door/poddoor{
- id = "auxincineratorvent";
- name = "Auxiliary Incinerator Vent"
- },
+/obj/machinery/door/poddoor/incinerator_atmos_aux,
/turf/open/floor/engine/vacuum,
/area/maintenance/disposal/incinerator)
"cot" = (
@@ -45262,6 +46883,19 @@
},
/turf/open/space,
/area/space/nearstation)
+"cpg" = (
+/obj/item/grenade/barrier{
+ pixel_x = 4
+ },
+/obj/item/grenade/barrier,
+/obj/item/grenade/barrier{
+ pixel_x = -4
+ },
+/obj/structure/table,
+/turf/open/floor/plasteel/vault{
+ dir = 8
+ },
+/area/ai_monitored/security/armory)
"cph" = (
/obj/structure/lattice,
/obj/machinery/atmospherics/pipe/simple/green/visible,
@@ -45398,6 +47032,15 @@
},
/turf/open/floor/engine,
/area/engine/engineering)
+"cpA" = (
+/obj/structure/cable{
+ icon_state = "1-2"
+ },
+/obj/structure/chair/office/dark{
+ dir = 4
+ },
+/turf/open/floor/plasteel,
+/area/ai_monitored/security/armory)
"cpC" = (
/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,
/obj/effect/landmark/event_spawn,
@@ -45696,10 +47339,7 @@
/turf/closed/wall/r_wall,
/area/maintenance/disposal/incinerator)
"cqt" = (
-/obj/machinery/door/poddoor{
- id = "turbinevent";
- name = "Turbine Vent"
- },
+/obj/machinery/door/poddoor/incinerator_atmos_main,
/turf/open/floor/engine/vacuum,
/area/maintenance/disposal/incinerator)
"cqu" = (
@@ -45789,6 +47429,31 @@
/obj/machinery/atmospherics/pipe/simple/green/visible,
/turf/closed/wall/r_wall,
/area/engine/supermatter)
+"cqG" = (
+/obj/structure/rack,
+/obj/item/storage/box/rubbershot{
+ pixel_x = -3;
+ pixel_y = 3
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/obj/item/storage/box/rubbershot{
+ pixel_x = -3;
+ pixel_y = 3
+ },
+/obj/item/storage/box/rubbershot,
+/obj/item/storage/box/rubbershot,
+/obj/item/storage/box/rubbershot{
+ pixel_x = 3;
+ pixel_y = -3
+ },
+/obj/item/storage/box/rubbershot{
+ pixel_x = 3;
+ pixel_y = -3
+ },
+/turf/open/floor/plasteel/vault{
+ dir = 8
+ },
+/area/ai_monitored/security/armory)
"cqJ" = (
/obj/structure/cable,
/obj/structure/lattice/catwalk,
@@ -46148,15 +47813,6 @@
},
/turf/open/floor/plating,
/area/engine/engineering)
-"crS" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/effect/turf_decal/tile/green/corner{
- dir = 4
- },
-/turf/open/floor/plasteel,
-/area/crew_quarters/cryopod)
"crT" = (
/obj/structure/lattice/catwalk,
/obj/machinery/atmospherics/pipe/heat_exchanging/simple{
@@ -48033,6 +49689,21 @@
},
/turf/open/floor/plating,
/area/maintenance/port/fore)
+"cwM" = (
+/obj/structure/rack,
+/obj/item/storage/box/teargas{
+ pixel_x = -3;
+ pixel_y = 3
+ },
+/obj/item/storage/box/handcuffs,
+/obj/item/storage/box/flashbangs{
+ pixel_x = 3;
+ pixel_y = -3
+ },
+/turf/open/floor/plasteel/vault{
+ dir = 8
+ },
+/area/ai_monitored/security/armory)
"cwT" = (
/obj/machinery/camera{
c_tag = "Arrivals Escape Pod 2";
@@ -48090,6 +49761,16 @@
},
/turf/open/floor/plating,
/area/security/main)
+"cxJ" = (
+/obj/effect/mapping_helpers/airlock/cyclelink_helper{
+ dir = 8
+ },
+/obj/machinery/door/airlock/external{
+ name = "Labor Camp Shuttle Airlock";
+ req_access_txt = "2"
+ },
+/turf/open/floor/plating,
+/area/security/processing)
"cxN" = (
/obj/structure/cable{
icon_state = "1-2"
@@ -48103,6 +49784,15 @@
},
/turf/open/floor/plating,
/area/maintenance/solars/starboard/fore)
+"cxP" = (
+/obj/effect/mapping_helpers/airlock/cyclelink_helper{
+ dir = 8
+ },
+/obj/machinery/door/airlock/external{
+ name = "Labor Camp Shuttle Airlock"
+ },
+/turf/open/floor/plating,
+/area/security/processing)
"cxW" = (
/obj/effect/mapping_helpers/airlock/cyclelink_helper,
/obj/machinery/door/airlock/external{
@@ -49191,6 +50881,18 @@
/obj/structure/closet/emcloset,
/turf/open/floor/plating,
/area/maintenance/starboard/aft)
+"cBV" = (
+/obj/machinery/door/firedoor,
+/obj/machinery/door/airlock/security{
+ name = "Security Office";
+ req_access_txt = "1"
+ },
+/obj/structure/cable{
+ icon_state = "1-2"
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/turf/open/floor/plasteel,
+/area/security/main)
"cBZ" = (
/obj/structure/table/wood,
/obj/item/clothing/under/burial,
@@ -50814,13 +52516,6 @@
},
/turf/open/floor/plating,
/area/hallway/secondary/entry)
-"cIV" = (
-/obj/machinery/door/airlock{
- name = "Unisex Restroom";
- req_access_txt = "0"
- },
-/turf/open/floor/plasteel/freezer,
-/area/security/prison)
"cMm" = (
/obj/effect/spawner/structure/window/plasma/reinforced,
/turf/open/floor/plating,
@@ -51038,17 +52733,6 @@
},
/turf/open/floor/plating,
/area/maintenance/starboard/aft)
-"cQs" = (
-/obj/machinery/door/window/brigdoor/security/cell{
- id = "Cell 4";
- name = "Cell 4"
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/turf/open/floor/plasteel/red/side,
-/area/security/brig)
"cQw" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
@@ -51328,21 +53012,6 @@
dir = 1
},
/area/engine/engineering)
-"cTu" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/obj/structure/cable{
- icon_state = "1-8"
- },
-/obj/structure/cable{
- icon_state = "2-8"
- },
-/turf/open/floor/plasteel/red/corner{
- dir = 8
- },
-/area/security/brig)
"cTD" = (
/obj/structure/cable{
icon_state = "1-2"
@@ -51466,23 +53135,6 @@
"cVb" = (
/turf/closed/wall,
/area/hallway/secondary/service)
-"dcW" = (
-/obj/structure/table/reinforced,
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "briggate";
- name = "security shutters"
- },
-/obj/machinery/door/window/southleft{
- base_state = "right";
- icon_state = "right";
- name = "Brig Desk";
- req_access_txt = "1"
- },
-/obj/structure/cable{
- icon_state = "1-4"
- },
-/turf/open/floor/plasteel/dark,
-/area/security/brig)
"dfh" = (
/obj/machinery/power/apc{
areastring = "/area/science/circuit";
@@ -51497,20 +53149,23 @@
},
/turf/open/floor/plasteel,
/area/science/circuit)
-"dhD" = (
-/obj/effect/spawner/structure/window/reinforced,
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 5
+"dkC" = (
+/obj/machinery/door/airlock/wood{
+ name = "Maintenance Bar"
},
-/obj/structure/cable{
- icon_state = "0-4"
- },
-/turf/open/floor/plating,
-/area/ai_monitored/security/armory)
+/turf/open/floor/wood,
+/area/maintenance/bar)
"dqu" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/closed/wall/r_wall,
/area/maintenance/disposal/incinerator)
+"dqT" = (
+/obj/structure/cable{
+ icon_state = "4-8"
+ },
+/obj/machinery/atmospherics/pipe/manifold/supply/hidden,
+/turf/open/floor/plating,
+/area/maintenance/port/aft)
"dvO" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
@@ -51530,38 +53185,6 @@
},
/turf/open/floor/plasteel/white,
/area/science/circuit)
-"eet" = (
-/obj/machinery/light{
- dir = 1
- },
-/turf/open/floor/plasteel/red/corner{
- dir = 1
- },
-/area/hallway/primary/fore)
-"efg" = (
-/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,
-/turf/closed/wall,
-/area/maintenance/fore/secondary)
-"esl" = (
-/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
- dir = 4
- },
-/turf/open/floor/wood{
- icon_state = "wood-broken6"
- },
-/area/maintenance/bar)
-"ete" = (
-/turf/closed/wall,
-/area/maintenance/bar)
-"evS" = (
-/obj/machinery/door/airlock/maintenance{
- req_access_txt = "12"
- },
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/turf/open/floor/plating,
-/area/maintenance/fore/secondary)
"eyM" = (
/obj/machinery/mineral/ore_redemption{
input_dir = 2;
@@ -51570,58 +53193,25 @@
/obj/machinery/door/firedoor,
/turf/open/floor/plasteel,
/area/quartermaster/miningdock)
-"eAL" = (
-/obj/structure/rack,
-/obj/item/gun/energy/e_gun/advtaser{
- pixel_x = -3;
- pixel_y = 3
- },
-/obj/item/gun/energy/e_gun/advtaser,
-/obj/item/gun/energy/e_gun/advtaser{
- pixel_x = 3;
- pixel_y = -3
- },
-/obj/effect/turf_decal/bot{
- dir = 2
- },
-/obj/structure/window/reinforced{
- dir = 1;
- layer = 2.9
- },
-/obj/structure/window/reinforced{
- dir = 4
- },
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/turf/open/floor/plasteel{
- dir = 2
- },
-/area/ai_monitored/security/armory)
-"eEc" = (
-/obj/effect/spawner/structure/window/reinforced,
-/obj/structure/cable{
- icon_state = "0-4"
- },
-/turf/open/floor/plating,
-/area/security/warden)
+"ezO" = (
+/obj/structure/mineral_door/wood,
+/turf/open/floor/wood,
+/area/maintenance/bar)
"eHI" = (
/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
dir = 8
},
/turf/open/floor/plasteel/floorgrime,
/area/maintenance/disposal/incinerator)
+"eKN" = (
+/obj/machinery/vending/clothing,
+/turf/open/floor/wood,
+/area/maintenance/bar)
"eRz" = (
/obj/structure/lattice,
/obj/structure/grille,
/turf/open/space/basic,
/area/space/nearstation)
-"eTp" = (
-/obj/machinery/atmospherics/components/unary/vent_pump/on{
- dir = 1
- },
-/turf/open/floor/wood,
-/area/maintenance/bar)
"eVL" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/obj/machinery/light_switch{
@@ -51632,30 +53222,18 @@
},
/turf/open/floor/plasteel,
/area/quartermaster/miningdock)
-"faB" = (
-/obj/structure/cable{
- icon_state = "0-2"
- },
-/obj/machinery/power/apc{
- areastring = "/area/security/warden";
- dir = 1;
- name = "Brig Control APC";
- pixel_y = 24
- },
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/warden)
+"eYI" = (
+/obj/item/restraints/legcuffs,
+/obj/item/restraints/handcuffs/fake,
+/obj/structure/bed/dogbed,
+/turf/open/floor/plating,
+/area/maintenance/bar)
"fcG" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 5
},
/turf/closed/wall/r_wall,
/area/science/mixing)
-"fhC" = (
-/obj/effect/spawner/lootdrop/maintenance,
-/obj/effect/decal/cleanable/blood/old,
-/obj/item/assembly/signaler,
-/turf/open/floor/plating,
-/area/maintenance/bar)
"flc" = (
/obj/machinery/bookbinder,
/turf/open/floor/plasteel/white,
@@ -51673,46 +53251,10 @@
},
/turf/open/floor/plasteel/hydrofloor,
/area/hallway/secondary/service)
-"fpJ" = (
-/obj/structure/table,
-/obj/item/storage/lockbox/loyalty,
-/turf/open/floor/plasteel/dark,
-/area/ai_monitored/security/armory)
-"fqD" = (
-/obj/machinery/door/window/brigdoor/security/cell{
- id = "Cell 1";
- name = "Cell 1"
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/turf/open/floor/plasteel/red/side,
-/area/security/brig)
"fsQ" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plasteel/dark,
/area/engine/engineering)
-"fuL" = (
-/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,
-/turf/open/floor/plasteel/red/corner{
- dir = 8
- },
-/area/security/brig)
-"fDN" = (
-/obj/structure/sign/poster/random{
- pixel_y = -32
- },
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"fEF" = (
-/obj/machinery/atmospherics/pipe/simple/general/hidden{
- dir = 4
- },
-/obj/structure/bed,
-/obj/item/bedsheet,
-/turf/open/floor/wood,
-/area/maintenance/port/aft)
"fGf" = (
/obj/machinery/smartfridge/disks,
/turf/open/floor/plasteel/hydrofloor,
@@ -51722,28 +53264,11 @@
/obj/effect/landmark/event_spawn,
/turf/open/floor/plasteel,
/area/science/circuit)
-"fKO" = (
-/obj/effect/turf_decal/stripes/line,
-/obj/machinery/atmospherics/components/unary/vent_pump/on,
-/obj/effect/turf_decal/stripes/line{
- dir = 1
- },
-/turf/open/floor/plasteel,
-/area/security/armory)
-"fLS" = (
-/obj/machinery/atmospherics/components/unary/vent_pump/on,
+"fWI" = (
+/obj/structure/table/wood,
+/obj/item/reagent_containers/food/drinks/shaker,
/turf/open/floor/wood,
-/area/maintenance/port/aft)
-"fYm" = (
-/obj/structure/closet/secure_closet/security/sec,
-/obj/machinery/light{
- dir = 4
- },
-/obj/effect/turf_decal/bot{
- dir = 2
- },
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/main)
+/area/maintenance/bar)
"gbq" = (
/obj/structure/cable{
icon_state = "4-8"
@@ -51775,31 +53300,9 @@
},
/turf/open/floor/plasteel,
/area/science/circuit)
-"gwo" = (
-/obj/structure/cable{
- icon_state = "1-4"
- },
-/turf/open/floor/plating,
-/area/maintenance/fore/secondary)
-"gEX" = (
-/obj/structure/table/wood/poker,
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
- },
+"gxS" = (
/turf/open/floor/wood,
/area/maintenance/bar)
-"gKP" = (
-/obj/machinery/door/airlock{
- name = "Unisex Restrooms"
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/turf/open/floor/plasteel/freezer,
-/area/crew_quarters/toilet)
"gLH" = (
/obj/machinery/door/airlock/external{
name = "External Access";
@@ -51810,20 +53313,8 @@
},
/turf/open/floor/plating,
/area/maintenance/port/fore)
-"gPJ" = (
-/obj/structure/rack,
-/obj/item/gun/energy/ionrifle,
-/obj/item/gun/energy/temperature/security,
-/obj/item/clothing/suit/armor/laserproof,
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
- },
-/obj/effect/turf_decal/bot,
-/turf/open/floor/plasteel/red/side,
-/area/ai_monitored/security/armory)
-"gPL" = (
-/obj/structure/table/wood,
-/obj/item/storage/box/drinkingglasses,
+"gRV" = (
+/obj/machinery/vending/autodrobe,
/turf/open/floor/wood,
/area/maintenance/bar)
"gWd" = (
@@ -51843,10 +53334,6 @@
dir = 8
},
/area/medical/sleeper)
-"gZR" = (
-/obj/structure/closet/secure_closet/personal,
-/turf/open/floor/wood,
-/area/maintenance/port/aft)
"hcE" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/obj/structure/disposalpipe/segment,
@@ -51864,14 +53351,6 @@
},
/turf/open/floor/plating,
/area/maintenance/port)
-"hDJ" = (
-/obj/machinery/door/airlock/security{
- name = "Interrogation";
- req_access = null;
- req_access_txt = "63"
- },
-/turf/open/floor/plasteel/dark,
-/area/security/prison)
"hRa" = (
/obj/structure/table/reinforced,
/obj/machinery/light{
@@ -51884,28 +53363,10 @@
/obj/item/stock_parts/cell/super,
/turf/open/floor/plasteel/white,
/area/science/circuit)
-"hYC" = (
-/obj/machinery/light/small{
- dir = 4
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/turf/open/floor/plasteel/floorgrime,
-/area/security/brig)
-"ihC" = (
-/obj/structure/sign/poster/random{
- pixel_y = -32
- },
-/turf/open/floor/wood{
- icon_state = "wood-broken7"
- },
-/area/maintenance/bar)
-"ihS" = (
+"idZ" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
dir = 8
},
-/obj/structure/cable{
- icon_state = "1-2"
- },
/turf/open/floor/wood,
/area/maintenance/bar)
"ijc" = (
@@ -51914,64 +53375,19 @@
/turf/open/floor/plasteel/dark,
/area/engine/engineering)
"ipA" = (
-/obj/machinery/droneDispenser,
/turf/open/floor/plating,
/area/maintenance/department/medical/morgue)
-"iqw" = (
-/obj/structure/disposalpipe/segment{
- dir = 6
- },
-/obj/structure/cable{
- icon_state = "2-4"
- },
-/obj/structure/cable{
- icon_state = "2-8"
- },
-/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
- dir = 1
- },
-/turf/open/floor/plating,
-/area/maintenance/port/aft)
-"irr" = (
-/obj/structure/chair/stool,
-/turf/open/floor/wood,
-/area/maintenance/bar)
"itG" = (
/obj/structure/table/reinforced,
/obj/item/paper_bin,
/obj/item/pen,
/turf/open/floor/plasteel/white,
/area/science/circuit)
-"iuz" = (
-/obj/structure/table/reinforced,
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "briggate";
- name = "security shutters"
- },
-/obj/machinery/door/window/eastright{
- name = "Brig Desk";
- req_access_txt = "2"
- },
-/turf/open/floor/plasteel/dark,
-/area/security/brig)
-"ixw" = (
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/machinery/computer/security{
- dir = 4
- },
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/warden)
-"iyF" = (
-/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
- dir = 1
- },
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/turf/open/floor/plasteel/freezer,
-/area/crew_quarters/toilet)
+"iEy" = (
+/obj/effect/spawner/lootdrop/minor/kittyears_or_rabbitears,
+/obj/item/assembly/signaler,
+/turf/open/floor/plating,
+/area/maintenance/bar)
"iEJ" = (
/obj/machinery/door/airlock/external{
name = "Escape Pod One"
@@ -51981,6 +53397,10 @@
},
/turf/open/floor/plating,
/area/hallway/secondary/entry)
+"iGw" = (
+/obj/structure/chair/stool/bar,
+/turf/open/floor/wood,
+/area/maintenance/bar)
"iNn" = (
/obj/machinery/camera{
c_tag = "Kitchen Cold Room"
@@ -51989,33 +53409,6 @@
/obj/structure/reagent_dispensers/cooking_oil,
/turf/open/floor/plasteel/showroomfloor,
/area/crew_quarters/kitchen)
-"iTV" = (
-/obj/structure/bed,
-/obj/item/clothing/suit/straight_jacket,
-/obj/item/clothing/mask/muzzle,
-/turf/open/floor/plasteel,
-/area/security/execution/transfer)
-"iYT" = (
-/obj/machinery/door/firedoor,
-/obj/machinery/door/airlock/security/glass{
- cyclelinkeddir = 1;
- id_tag = "lobbyairlock";
- name = "Security Lobby";
- req_access_txt = "0"
- },
-/turf/open/floor/plasteel/red/side,
-/area/security/brig)
-"iZV" = (
-/obj/structure/sign/poster/random{
- pixel_x = -32
- },
-/obj/machinery/light{
- dir = 8
- },
-/turf/open/floor/wood{
- icon_state = "wood-broken7"
- },
-/area/maintenance/bar)
"jbf" = (
/obj/structure/cable{
icon_state = "0-2"
@@ -52028,14 +53421,6 @@
},
/turf/open/floor/plasteel/hydrofloor,
/area/hallway/secondary/service)
-"jdX" = (
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/turf/open/floor/wood{
- icon_state = "wood-broken7"
- },
-/area/maintenance/bar)
"jgm" = (
/obj/structure/disposalpipe/segment{
dir = 10
@@ -52054,11 +53439,6 @@
/obj/machinery/rnd/production/techfab/department/cargo,
/turf/open/floor/plasteel,
/area/quartermaster/office)
-"jnM" = (
-/turf/open/floor/wood{
- icon_state = "wood-broken5"
- },
-/area/maintenance/bar)
"jrE" = (
/obj/machinery/rnd/production/protolathe/department/science,
/obj/structure/sign/poster/official/random{
@@ -52066,10 +53446,10 @@
},
/turf/open/floor/plasteel/white,
/area/science/circuit)
-"jss" = (
-/obj/structure/table/wood,
-/turf/open/floor/wood,
-/area/maintenance/bar)
+"jtl" = (
+/obj/structure/lattice/catwalk,
+/turf/open/space/basic,
+/area/space/nearstation)
"jAD" = (
/obj/structure/grille,
/turf/open/floor/plating/airless,
@@ -52086,17 +53466,6 @@
},
/turf/open/floor/plating,
/area/maintenance/starboard/aft)
-"jDQ" = (
-/obj/item/radio/intercom{
- freerange = 0;
- frequency = 1459;
- name = "Station Intercom (General)";
- pixel_x = -30
- },
-/turf/open/floor/wood{
- icon_state = "wood-broken"
- },
-/area/maintenance/bar)
"jHt" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/obj/structure/disposalpipe/segment{
@@ -52110,20 +53479,6 @@
},
/turf/open/floor/plating,
/area/maintenance/starboard/aft)
-"jHE" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/turf/open/floor/wood{
- icon_state = "wood-broken7"
- },
-/area/maintenance/bar)
-"jJa" = (
-/obj/machinery/atmospherics/pipe/manifold/general/visible,
-/obj/structure/table/wood,
-/obj/machinery/light/small{
- dir = 2
- },
-/turf/open/floor/wood,
-/area/maintenance/port/aft)
"jMF" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 9
@@ -52139,12 +53494,6 @@
/obj/item/stack/cable_coil,
/turf/open/floor/plasteel/dark,
/area/engine/engineering)
-"jNv" = (
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/turf/open/floor/plating,
-/area/maintenance/fore/secondary)
"jSO" = (
/obj/machinery/light{
dir = 4
@@ -52163,22 +53512,12 @@
},
/turf/open/floor/plating,
/area/maintenance/starboard/aft)
-"jXE" = (
-/obj/effect/turf_decal/stripes/white/line{
- dir = 8
- },
-/obj/effect/turf_decal/stripes/white/corner{
- dir = 1
- },
-/turf/open/floor/plasteel/dark,
-/area/security/execution/transfer)
-"kcq" = (
-/obj/machinery/atmospherics/pipe/simple/general/hidden{
+"kds" = (
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
},
-/obj/structure/closet/secure_closet/personal,
/turf/open/floor/wood,
-/area/maintenance/port/aft)
+/area/maintenance/bar)
"khb" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 10
@@ -52208,6 +53547,11 @@
},
/turf/open/floor/plasteel,
/area/engine/gravity_generator)
+"knR" = (
+/obj/structure/table/wood,
+/obj/item/weaponcrafting/receiver,
+/turf/open/floor/wood,
+/area/maintenance/bar)
"kob" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/obj/structure/disposalpipe/segment,
@@ -52216,27 +53560,6 @@
},
/turf/open/floor/plating,
/area/maintenance/starboard/aft)
-"ksu" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
- },
-/obj/machinery/door/firedoor,
-/obj/machinery/door/airlock/security/glass{
- cyclelinkeddir = 2;
- id_tag = "innerbrig";
- name = "Brig";
- req_access_txt = "63"
- },
-/turf/open/floor/plasteel/red/side{
- dir = 9
- },
-/area/security/brig)
-"kuo" = (
-/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
- dir = 8
- },
-/turf/open/floor/wood,
-/area/maintenance/bar)
"kzT" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 6
@@ -52254,15 +53577,6 @@
},
/turf/open/floor/plasteel/hydrofloor,
/area/hallway/secondary/service)
-"kPE" = (
-/obj/machinery/light,
-/obj/machinery/cryopod{
- tag = "icon-cryopod-open (EAST)";
- icon_state = "cryopod-open";
- dir = 4
- },
-/turf/open/floor/plasteel/dark,
-/area/crew_quarters/cryopod)
"kQk" = (
/obj/structure/rack,
/obj/effect/spawner/lootdrop/maintenance{
@@ -52271,17 +53585,6 @@
},
/turf/open/floor/plating,
/area/maintenance/department/medical/morgue)
-"kQp" = (
-/obj/effect/spawner/structure/window/reinforced,
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/obj/structure/cable{
- icon_state = "0-8"
- },
-/obj/structure/cable{
- icon_state = "0-4"
- },
-/turf/open/floor/plating,
-/area/security/brig)
"kQq" = (
/obj/effect/turf_decal/stripes/line,
/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{
@@ -52293,66 +53596,10 @@
/obj/effect/turf_decal/bot,
/turf/open/floor/plasteel,
/area/quartermaster/miningdock)
-"kXo" = (
-/obj/machinery/atmospherics/components/unary/vent_scrubber/on,
-/turf/open/floor/plasteel/red/corner{
- dir = 1
- },
-/area/hallway/primary/fore)
-"lgR" = (
-/obj/machinery/door/poddoor/preopen{
- id = "executionfireblast";
- layer = 2.9;
- name = "blast door"
- },
-/obj/machinery/atmospherics/pipe/simple/general/hidden,
-/obj/machinery/door/firedoor,
-/obj/machinery/door/window/westright{
- dir = 1;
- name = "Transfer Room";
- req_access_txt = "2"
- },
-/turf/open/floor/plasteel/vault{
- dir = 8
- },
-/area/security/execution/transfer)
-"lla" = (
-/obj/structure/closet/secure_closet/contraband/armory,
-/obj/effect/turf_decal/bot_white,
-/turf/open/floor/plasteel/dark,
-/area/ai_monitored/security/armory)
-"loR" = (
-/obj/machinery/atmospherics/components/unary/vent_scrubber/on,
-/turf/open/floor/plasteel/red/side{
- dir = 10
- },
-/area/security/brig)
-"lsi" = (
-/obj/machinery/power/apc/highcap/five_k{
- dir = 4;
- areastring = "/area/ai_monitored/security/armory";
- name = "Armory APC";
- pixel_x = 24
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 1
- },
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/obj/structure/cable{
- icon_state = "0-8"
- },
-/turf/open/floor/plasteel,
-/area/ai_monitored/security/armory)
"lAB" = (
/obj/structure/sign/nanotrasen,
/turf/closed/wall,
/area/science/circuit)
-"lIk" = (
-/obj/effect/spawner/lootdrop/keg,
-/turf/open/floor/wood{
- icon_state = "wood-broken7"
- },
-/area/maintenance/bar)
"lMg" = (
/obj/effect/turf_decal/stripes/line{
dir = 9
@@ -52363,63 +53610,14 @@
/obj/effect/spawner/structure/window,
/turf/open/floor/plating,
/area/science/circuit)
-"lTe" = (
-/obj/structure/table,
-/obj/item/storage/toolbox/drone,
-/turf/open/floor/plasteel/dark,
-/area/ai_monitored/security/armory)
-"lVH" = (
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/structure/table,
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/warden)
-"lYQ" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/turf/open/floor/plating,
-/area/maintenance/bar)
"mjr" = (
/obj/machinery/vending/wardrobe/bar_wardrobe,
/turf/open/floor/wood,
/area/crew_quarters/bar)
-"mlG" = (
-/obj/machinery/light{
- dir = 1
- },
-/turf/open/floor/plasteel,
-/area/hallway/primary/fore)
-"mqQ" = (
-/obj/machinery/door/window/brigdoor/security/cell{
- id = "Cell 2";
- name = "Cell 2"
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/turf/open/floor/plasteel/red/side,
-/area/security/brig)
-"muL" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/machinery/door/firedoor,
-/obj/machinery/door/airlock/security/glass{
- cyclelinkeddir = 2;
- id_tag = "innerbrig";
- name = "Brig";
- req_access_txt = "63"
- },
-/turf/open/floor/plasteel/red/side{
- dir = 10
- },
-/area/security/brig)
+"mtJ" = (
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/turf/closed/wall,
+/area/maintenance/bar)
"mBv" = (
/obj/structure/cable{
icon_state = "1-2"
@@ -52431,115 +53629,25 @@
},
/turf/open/floor/engine,
/area/engine/engineering)
-"mCA" = (
-/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{
- dir = 4
- },
-/turf/closed/wall,
-/area/maintenance/bar)
-"mKs" = (
-/obj/item/restraints/handcuffs/fake,
-/obj/effect/decal/cleanable/blood/old,
-/obj/effect/spawner/lootdrop/minor/kittyears_or_rabbitears,
-/turf/open/floor/plating,
-/area/maintenance/bar)
"mNi" = (
/obj/machinery/light_switch{
pixel_x = -20
},
/turf/open/floor/plasteel/white,
/area/science/circuit)
-"mQI" = (
-/obj/machinery/door/window/brigdoor/security/cell{
- dir = 4;
- id = "Secure Cell";
- name = "Secure Cell"
- },
-/obj/machinery/door/window/brigdoor/security/cell{
- dir = 8;
- id = "Secure Cell";
- name = "Secure Cell"
- },
-/obj/effect/turf_decal/stripes/white/corner{
- dir = 4
- },
-/obj/effect/turf_decal/stripes/white/corner{
- dir = 8
- },
-/obj/machinery/light/small,
-/turf/open/floor/plasteel/dark/side{
- dir = 8
- },
-/area/security/execution/transfer)
"mRe" = (
/obj/machinery/light{
dir = 8
},
/turf/open/floor/plasteel/white,
/area/science/circuit)
-"mTf" = (
-/obj/structure/rack,
-/obj/item/clothing/suit/armor/riot{
- pixel_x = -3;
- pixel_y = 3
- },
-/obj/item/clothing/suit/armor/riot,
-/obj/item/clothing/suit/armor/riot{
- pixel_x = 3;
- pixel_y = -3
- },
-/obj/item/clothing/head/helmet/riot{
- pixel_x = -3;
- pixel_y = 3
- },
-/obj/item/clothing/head/helmet/riot,
-/obj/item/clothing/head/helmet/riot{
- pixel_x = 3;
- pixel_y = -3
- },
-/obj/item/shield/riot{
- pixel_x = -3;
- pixel_y = 3
- },
-/obj/item/shield/riot,
-/obj/item/shield/riot{
- pixel_x = 3;
- pixel_y = -3
- },
-/obj/effect/turf_decal/bot_white,
-/turf/open/floor/plasteel/dark,
-/area/security/armory)
-"nbc" = (
-/obj/machinery/hydroponics/soil,
-/obj/item/plant_analyzer,
-/obj/machinery/camera{
- c_tag = "Prison Common Room";
- network = list("ss13","prison")
- },
-/turf/open/floor/plasteel/green/side{
- dir = 5
- },
-/area/security/prison)
"noK" = (
/obj/structure/girder,
/turf/open/floor/plasteel/dark,
/area/engine/engineering)
-"npy" = (
-/obj/effect/turf_decal/stripes/line{
- dir = 1
- },
-/obj/machinery/atmospherics/components/unary/vent_scrubber/on,
-/turf/open/floor/plasteel,
-/area/security/armory)
-"nuw" = (
-/obj/structure/chair/stool,
-/obj/item/radio/intercom{
- name = "Station Intercom (General)";
- pixel_y = -35
- },
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"nuB" = (
+"nwX" = (
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/obj/machinery/vending/games,
/turf/open/floor/wood,
/area/maintenance/bar)
"nxv" = (
@@ -52557,18 +53665,12 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel/dark,
/area/engine/engineering)
-"nCJ" = (
-/obj/machinery/door/firedoor,
-/obj/machinery/door/airlock/security{
- name = "Brig";
- req_access = null;
- req_access_txt = "63; 42"
- },
+"nEe" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
+ dir = 5
},
-/turf/open/floor/plasteel,
-/area/security/brig)
+/turf/closed/wall,
+/area/maintenance/bar)
"nGt" = (
/obj/structure/cable{
icon_state = "1-2"
@@ -52580,13 +53682,15 @@
},
/turf/open/floor/plating,
/area/maintenance/starboard/aft)
-"nMU" = (
-/obj/structure/disposalpipe/segment{
- dir = 4
- },
-/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,
-/turf/open/floor/plating,
-/area/maintenance/fore/secondary)
+"nKB" = (
+/obj/structure/table/wood,
+/obj/machinery/chem_dispenser/drinks/beer,
+/turf/open/floor/wood,
+/area/maintenance/bar)
+"nRn" = (
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/turf/open/floor/wood,
+/area/maintenance/bar)
"nRG" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 10
@@ -52599,56 +53703,41 @@
},
/turf/open/floor/plasteel/white,
/area/science/mixing)
-"orD" = (
+"ooS" = (
/obj/structure/table/wood/poker,
-/obj/item/coin/iron,
+/obj/effect/spawner/lootdrop/gambling,
+/turf/open/floor/wood{
+ icon_state = "wood-broken"
+ },
+/area/maintenance/bar)
+"oqQ" = (
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/obj/structure/table/wood,
+/obj/machinery/chem_dispenser/drinks,
/turf/open/floor/wood,
/area/maintenance/bar)
-"oux" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/obj/structure/cable{
- icon_state = "1-8"
- },
-/turf/open/floor/plasteel/neutral/side{
- dir = 8
- },
-/area/crew_quarters/dorms)
-"oxm" = (
-/obj/machinery/door_timer{
- id = "Cell 3";
- name = "Cell 3";
- pixel_y = -32
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+"ouu" = (
+/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
dir = 4
},
-/turf/open/floor/plasteel/red/corner,
-/area/security/brig)
+/turf/open/floor/wood,
+/area/maintenance/bar)
"oDF" = (
/obj/machinery/light,
/turf/open/floor/plating,
/area/engine/engineering)
-"oEE" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/turf/open/floor/plasteel,
-/area/hallway/primary/fore)
"oHU" = (
/obj/structure/cable{
icon_state = "1-2"
},
/turf/open/floor/plasteel,
/area/science/circuit)
-"oKT" = (
-/obj/effect/spawner/structure/window/reinforced,
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/obj/structure/cable{
- icon_state = "0-8"
+"oPA" = (
+/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{
+ dir = 4
},
-/obj/structure/cable{
- icon_state = "0-4"
- },
-/turf/open/floor/plating,
-/area/security/brig)
+/turf/open/floor/wood,
+/area/maintenance/bar)
"oUh" = (
/obj/structure/disposalpipe/trunk{
dir = 1
@@ -52656,27 +53745,10 @@
/obj/machinery/disposal/bin,
/turf/open/floor/plasteel/white,
/area/science/circuit)
-"piy" = (
-/obj/structure/cable{
- icon_state = "0-4"
- },
-/obj/effect/spawner/structure/window/reinforced,
-/turf/open/floor/plating,
-/area/security/brig)
-"poo" = (
-/obj/structure/lattice/catwalk,
-/turf/open/space/basic,
-/area/space/nearstation)
-"pDm" = (
-/obj/machinery/atmospherics/pipe/simple/general/hidden{
- dir = 5
- },
-/obj/structure/table/wood,
-/obj/machinery/light/small{
- dir = 2
- },
-/turf/open/floor/wood,
-/area/maintenance/port/aft)
+"pDq" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/turf/closed/wall,
+/area/maintenance/bar)
"pHl" = (
/obj/structure/table,
/obj/item/storage/box/beakers{
@@ -52716,23 +53788,28 @@
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plasteel/floorgrime,
/area/science/misc_lab)
+"qbA" = (
+/obj/structure/table/wood/poker,
+/obj/item/toy/cards/deck/syndicate,
+/turf/open/floor/wood,
+/area/maintenance/bar)
+"qdB" = (
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/turf/open/floor/wood{
+ icon_state = "wood-broken7"
+ },
+/area/maintenance/bar)
"qeQ" = (
/obj/effect/turf_decal/stripes/line{
dir = 8
},
/turf/open/floor/plasteel,
/area/science/circuit)
-"qiF" = (
-/obj/machinery/atmospherics/components/unary/vent_pump/on{
- dir = 1
+"qit" = (
+/turf/open/floor/wood{
+ icon_state = "wood-broken"
},
-/turf/open/floor/plasteel/floorgrime,
-/area/security/brig)
-"qla" = (
-/obj/machinery/flasher/portable,
-/obj/effect/turf_decal/bot_white,
-/turf/open/floor/plasteel/dark,
-/area/security/armory)
+/area/maintenance/bar)
"qpv" = (
/obj/machinery/light{
dir = 4
@@ -52745,101 +53822,51 @@
/obj/structure/grille/broken,
/turf/open/space/basic,
/area/space/nearstation)
-"qDl" = (
+"qBv" = (
+/obj/item/clothing/mask/breath/medical,
+/obj/item/tank/internals/anesthetic,
+/turf/open/floor/plating,
+/area/maintenance/bar)
+"qBQ" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/obj/structure/chair/stool/bar,
+/turf/open/floor/wood,
+/area/maintenance/bar)
+"qKd" = (
+/obj/structure/table/wood,
+/turf/open/floor/wood,
+/area/maintenance/bar)
+"qSC" = (
+/obj/machinery/vending/boozeomat,
/turf/open/floor/wood,
/area/maintenance/bar)
-"qQU" = (
-/obj/machinery/atmospherics/pipe/simple/general/hidden{
- dir = 4
- },
-/turf/closed/wall,
-/area/maintenance/port/aft)
-"qVv" = (
-/obj/structure/chair/comfy/black,
-/obj/effect/landmark/start/head_of_security,
-/turf/open/floor/carpet,
-/area/crew_quarters/heads/hos)
-"qZT" = (
-/obj/machinery/vending/snack/random,
-/obj/machinery/flasher{
- id = "brigentry";
- pixel_x = 28
- },
-/turf/open/floor/plasteel/red/side{
- dir = 4
- },
-/area/security/brig)
-"rax" = (
-/obj/structure/closet/secure_closet/security/sec,
-/obj/effect/turf_decal/bot{
- dir = 2
- },
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/main)
"rcD" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
},
/turf/closed/wall/r_wall,
/area/science/circuit)
+"ref" = (
+/turf/closed/wall,
+/area/maintenance/bar)
"rfW" = (
/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,
/turf/open/floor/plasteel/floorgrime,
/area/maintenance/disposal/incinerator)
-"rmO" = (
-/obj/machinery/flasher{
- id = "Cell 3";
- pixel_x = -28
- },
-/obj/machinery/atmospherics/components/unary/vent_pump/on{
- dir = 1
- },
-/turf/open/floor/plasteel/floorgrime,
-/area/security/brig)
+"rgN" = (
+/obj/structure/reagent_dispensers/keg/aphro/strong,
+/obj/item/reagent_containers/glass/beaker,
+/turf/open/floor/plating,
+/area/maintenance/bar)
"rmX" = (
/obj/structure/table,
/obj/item/reagent_containers/food/drinks/beer,
/turf/open/floor/plating,
/area/maintenance/starboard/aft)
-"rpN" = (
-/obj/machinery/button/door{
- desc = "A remote control switch for the exit.";
- id = "laborexit";
- name = "exit button";
- normaldoorcontrol = 1;
- pixel_x = 26;
- pixel_y = -6;
- req_access_txt = "0"
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 9
- },
-/turf/open/floor/plasteel/red/side{
- dir = 5
- },
-/area/security/processing)
-"rtk" = (
-/turf/open/floor/plasteel/dark,
-/area/security/processing)
-"ryv" = (
-/obj/machinery/flasher{
- id = "Cell 2";
- pixel_x = -28
- },
-/turf/open/floor/plasteel/floorgrime,
-/area/security/brig)
-"rAZ" = (
-/turf/closed/wall,
-/area/crew_quarters/cryopod)
-"rHF" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/obj/machinery/door/airlock/maintenance/abandoned{
- req_access_txt = "0"
- },
-/turf/open/floor/wood{
- icon_state = "wood-broken"
- },
+"rrl" = (
+/obj/effect/spawner/lootdrop/costume,
+/obj/item/electropack/shockcollar,
+/turf/open/floor/plating,
/area/maintenance/bar)
"rKP" = (
/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
@@ -52847,27 +53874,6 @@
},
/turf/open/floor/plating,
/area/construction)
-"rPG" = (
-/obj/machinery/door/window/westleft{
- base_state = "right";
- dir = 8;
- icon_state = "right";
- name = "Unisex Showers";
- req_access_txt = "0"
- },
-/turf/open/floor/plasteel/freezer,
-/area/security/prison)
-"rTI" = (
-/obj/machinery/door/window/brigdoor/security/cell{
- id = "Cell 3";
- name = "Cell 3"
- },
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/turf/open/floor/plasteel/red/side,
-/area/security/brig)
"saK" = (
/obj/structure/closet/crate,
/obj/item/target/alien,
@@ -52880,21 +53886,16 @@
/obj/item/gun/energy/laser/practice,
/turf/open/floor/plasteel/white,
/area/science/circuit)
-"sfv" = (
-/obj/effect/spawner/structure/window,
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "seclobby";
- name = "security shutters"
+"shL" = (
+/turf/open/floor/carpet,
+/area/crew_quarters/dorms)
+"sjc" = (
+/obj/machinery/cryopod{
+ dir = 4;
+ tag = "0"
},
-/turf/open/floor/plating,
-/area/security/brig)
-"sgY" = (
-/obj/machinery/atmospherics/components/unary/vent_scrubber/on,
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/turf/open/floor/plasteel,
-/area/ai_monitored/security/armory)
+/turf/open/floor/carpet,
+/area/crew_quarters/dorms)
"slk" = (
/obj/machinery/door/airlock/maintenance{
req_access_txt = "12"
@@ -52907,38 +53908,21 @@
/obj/effect/mapping_helpers/airlock/cyclelink_helper,
/turf/open/floor/plating,
/area/maintenance/department/medical/morgue)
-"ssv" = (
-/obj/structure/rack,
-/obj/item/gun/energy/e_gun/dragnet,
-/obj/item/gun/energy/e_gun/dragnet,
-/obj/effect/turf_decal/bot_white,
-/obj/item/gun/energy/pumpaction/blaster,
-/obj/item/gun/energy/pumpaction/blaster,
-/turf/open/floor/plasteel/dark,
-/area/security/armory)
+"stg" = (
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
+ dir = 4
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/turf/open/floor/wood{
+ icon_state = "wood-broken"
+ },
+/area/maintenance/bar)
"sxs" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/obj/structure/table,
/obj/item/shovel/spade,
/turf/open/floor/plasteel/hydrofloor,
/area/hallway/secondary/service)
-"sCj" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
- },
-/turf/open/floor/plasteel/red/side{
- dir = 8
- },
-/area/security/brig)
-"sGR" = (
-/obj/machinery/atmospherics/components/unary/vent_pump/on{
- dir = 4
- },
-/obj/machinery/light{
- dir = 8
- },
-/turf/open/floor/wood,
-/area/maintenance/bar)
"sLv" = (
/obj/structure/closet,
/obj/effect/spawner/lootdrop/maintenance,
@@ -52958,11 +53942,6 @@
/obj/structure/chair/office/light,
/turf/open/floor/plasteel/white,
/area/science/circuit)
-"sVi" = (
-/turf/open/floor/plasteel/red/corner{
- dir = 1
- },
-/area/security/brig)
"sWR" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
@@ -52986,84 +53965,36 @@
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/closed/wall,
/area/hallway/secondary/service)
-"tfB" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 5
+"tmK" = (
+/turf/open/floor/wood{
+ icon_state = "wood-broken6"
},
-/obj/structure/tank_dispenser/oxygen,
-/turf/open/floor/plasteel/dark,
-/area/ai_monitored/security/armory)
-"tra" = (
-/obj/machinery/computer/prisoner{
- dir = 4
- },
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/warden)
-"tsC" = (
-/obj/machinery/atmospherics/pipe/simple/general/hidden{
- dir = 4
- },
-/obj/structure/bed,
-/obj/item/bedsheet,
-/obj/item/bedsheet,
-/turf/open/floor/wood,
-/area/maintenance/port/aft)
-"tvf" = (
+/area/maintenance/bar)
+"tqe" = (
/obj/structure/table/wood/poker,
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
- },
-/obj/item/storage/pill_bottle/dice,
+/obj/effect/spawner/lootdrop/gambling,
/turf/open/floor/wood,
/area/maintenance/bar)
-"txT" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
- dir = 1
- },
-/turf/open/floor/plasteel/red/side{
- dir = 9
- },
-/area/security/brig)
-"tIp" = (
-/obj/machinery/door/firedoor,
-/obj/machinery/door/window/southleft{
- base_state = "right";
- icon_state = "right";
- name = "Armory";
- req_access_txt = "3"
- },
+"trb" = (
/obj/machinery/light{
dir = 4
},
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/obj/effect/turf_decal/stripes/line{
- dir = 2
- },
-/obj/structure/cable{
- icon_state = "2-8"
- },
-/obj/structure/cable{
- icon_state = "2-4"
- },
-/obj/structure/cable{
- icon_state = "1-2"
- },
/turf/open/floor/plasteel,
-/area/ai_monitored/security/armory)
-"tLw" = (
-/obj/structure/table/wood,
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
+/area/security/courtroom)
+"tEz" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/turf/open/floor/wood{
+ icon_state = "wood-broken4"
},
-/turf/open/floor/wood,
/area/maintenance/bar)
"tMl" = (
/obj/effect/turf_decal/loading_area,
/turf/open/floor/plasteel/showroomfloor,
/area/crew_quarters/kitchen)
+"tOc" = (
+/obj/item/weaponcrafting/stock,
+/turf/open/floor/wood,
+/area/maintenance/bar)
"tOq" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
@@ -53071,16 +54002,6 @@
},
/turf/open/floor/plasteel/white,
/area/science/mixing)
-"tTl" = (
-/obj/effect/spawner/structure/window/reinforced,
-/obj/machinery/door/poddoor/preopen{
- id = "executionfireblast";
- layer = 2.9;
- name = "blast door"
- },
-/obj/machinery/door/firedoor,
-/turf/open/floor/plating,
-/area/security/execution/transfer)
"tXL" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 9
@@ -53113,34 +54034,15 @@
},
/turf/open/floor/plasteel/white,
/area/science/circuit)
-"uzg" = (
-/obj/structure/chair,
-/obj/machinery/light{
- dir = 1
- },
-/turf/open/floor/plasteel/red/side{
- dir = 1
- },
-/area/security/brig)
-"uFV" = (
+"uAK" = (
+/obj/structure/falsewall,
+/turf/open/floor/plating,
+/area/maintenance/port/aft)
+"uBG" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/turf/open/floor/plasteel/red/side{
- dir = 4
- },
-/area/security/brig)
-"uGh" = (
-/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
- dir = 1
- },
-/obj/machinery/light/small{
- dir = 4
- },
-/turf/open/floor/plasteel/floorgrime,
-/area/security/brig)
-"uMu" = (
-/obj/effect/turf_decal/tile/green/corner,
-/turf/open/floor/plasteel,
-/area/crew_quarters/cryopod)
+/obj/structure/chair/stool/bar,
+/turf/open/floor/wood,
+/area/maintenance/bar)
"uNu" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -53151,12 +54053,6 @@
},
/turf/open/floor/plasteel,
/area/science/circuit)
-"uOE" = (
-/obj/structure/chair/stool,
-/turf/open/floor/wood{
- icon_state = "wood-broken7"
- },
-/area/maintenance/bar)
"uPT" = (
/obj/machinery/atmospherics/pipe/simple/general/visible{
dir = 2
@@ -53166,10 +54062,6 @@
},
/turf/closed/wall/r_wall,
/area/maintenance/disposal/incinerator)
-"uQt" = (
-/obj/structure/sign/poster/official/no_erp,
-/turf/closed/wall,
-/area/maintenance/bar)
"uVS" = (
/obj/structure/cable{
icon_state = "4-8"
@@ -53182,14 +54074,6 @@
},
/turf/open/floor/plating,
/area/maintenance/starboard/aft)
-"uZB" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/turf/open/floor/plasteel/red/side{
- dir = 10
- },
-/area/security/brig)
"vbD" = (
/obj/machinery/door/firedoor,
/obj/machinery/door/airlock/command/glass{
@@ -53201,47 +54085,11 @@
},
/turf/open/floor/plasteel,
/area/ai_monitored/storage/eva)
-"vdY" = (
-/obj/structure/falsewall,
-/obj/effect/turf_decal/delivery/white,
-/turf/open/floor/plasteel/dark,
-/area/security/execution/transfer)
-"vmd" = (
-/obj/structure/rack,
-/obj/item/clothing/suit/armor/bulletproof{
- pixel_x = -3;
- pixel_y = 3
- },
-/obj/item/clothing/suit/armor/bulletproof,
-/obj/item/clothing/suit/armor/bulletproof{
- pixel_x = 3;
- pixel_y = -3
- },
-/obj/item/clothing/head/helmet/alt{
- layer = 3.00001;
- pixel_x = -3;
- pixel_y = 3
- },
-/obj/item/clothing/head/helmet/alt{
- layer = 3.00001
- },
-/obj/item/clothing/head/helmet/alt{
- layer = 3.00001;
- pixel_x = 3;
- pixel_y = -3
- },
-/obj/effect/turf_decal/bot_white,
-/turf/open/floor/plasteel/dark,
-/area/security/armory)
-"vml" = (
-/obj/machinery/vending/cigarette,
-/turf/open/floor/plasteel/red/side{
+"vhC" = (
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
},
-/area/security/brig)
-"vnP" = (
-/obj/machinery/vending/autodrobe,
-/turf/open/floor/wood,
+/turf/closed/wall,
/area/maintenance/bar)
"vxh" = (
/obj/structure/table,
@@ -53267,61 +54115,22 @@
/obj/machinery/atmospherics/components/unary/vent_pump/on,
/turf/open/floor/plasteel/white,
/area/science/circuit)
-"vCy" = (
-/obj/structure/window/reinforced,
-/obj/machinery/door/window/eastleft{
- name = "Cyborg Docking Port"
- },
-/obj/machinery/recharge_station,
-/obj/effect/turf_decal/delivery,
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/main)
-"vGV" = (
-/obj/machinery/power/apc{
- dir = 4;
- name = "Dormitory Bathrooms APC";
- areastring = "/area/crew_quarters/toilet";
- pixel_x = 26
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/structure/cable,
-/obj/structure/cable{
- icon_state = "1-8"
- },
-/turf/open/floor/plasteel/freezer,
-/area/crew_quarters/toilet)
-"vJv" = (
-/obj/machinery/camera{
- c_tag = "Fore Primary Hallway East";
- dir = 1
- },
-/obj/structure/extinguisher_cabinet{
- pixel_x = 5;
- pixel_y = -32
- },
-/obj/machinery/light,
-/obj/structure/chair{
- dir = 1
- },
-/turf/open/floor/plasteel/red/side,
-/area/security/brig)
+"vJu" = (
+/obj/structure/table/wood/poker,
+/obj/item/storage/pill_bottle/dice,
+/turf/open/floor/wood,
+/area/maintenance/bar)
"vJW" = (
-/obj/machinery/camera{
- c_tag = "Brig Central";
- dir = 1
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
+ dir = 6
},
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
+/turf/open/floor/wood,
+/area/maintenance/bar)
+"vNv" = (
+/turf/open/floor/wood{
+ icon_state = "wood-broken7"
},
-/obj/machinery/door_timer{
- id = "Cell 4";
- name = "Cell 4";
- pixel_y = -32
- },
-/turf/open/floor/plasteel/red/corner,
-/area/security/brig)
+/area/maintenance/bar)
"vPE" = (
/obj/machinery/light{
dir = 4
@@ -53329,71 +54138,10 @@
/obj/machinery/libraryscanner,
/turf/open/floor/plasteel/white,
/area/science/circuit)
-"vVq" = (
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 6
- },
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/warden)
-"vYy" = (
-/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{
- dir = 1
- },
-/turf/open/floor/plasteel/red/side{
- dir = 1
- },
-/area/security/brig)
-"vYR" = (
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/machinery/door/firedoor,
-/obj/machinery/door/airlock/security{
- name = "Labor Shuttle";
- req_access = null;
- req_access_txt = "2"
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/turf/open/floor/plasteel,
-/area/security/brig)
-"vZp" = (
-/obj/effect/turf_decal/delivery,
-/obj/machinery/door/firedoor,
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "seclobby";
- name = "security shutters"
- },
-/turf/open/floor/plasteel,
-/area/security/brig)
-"wdF" = (
-/obj/structure/table/wood,
-/turf/open/floor/wood{
- icon_state = "wood-broken5"
- },
+"vSH" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/turf/open/floor/wood,
/area/maintenance/bar)
-"wkw" = (
-/obj/effect/turf_decal/stripes/corner{
- dir = 8
- },
-/obj/effect/turf_decal/stripes/corner{
- dir = 4
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 9
- },
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/obj/structure/cable{
- icon_state = "2-4"
- },
-/turf/open/floor/plasteel,
-/area/ai_monitored/security/armory)
"wkN" = (
/turf/closed/wall,
/area/science/circuit)
@@ -53428,6 +54176,10 @@
/obj/item/stack/sheet/metal/fifty,
/turf/open/floor/plasteel/white,
/area/science/circuit)
+"wzn" = (
+/obj/structure/falsewall,
+/turf/open/floor/plating,
+/area/maintenance/bar)
"wBd" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 6
@@ -53440,44 +54192,27 @@
},
/turf/closed/wall/r_wall,
/area/maintenance/disposal/incinerator)
-"wOx" = (
-/obj/effect/spawner/structure/window/reinforced,
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/obj/machinery/door/poddoor/preopen{
- id = "executionfireblast";
- layer = 2.9;
- name = "blast door"
- },
-/obj/machinery/door/firedoor,
+"wPS" = (
+/obj/machinery/vending/kink,
/turf/open/floor/plating,
-/area/security/execution/transfer)
+/area/maintenance/bar)
+"wSH" = (
+/obj/machinery/atmospherics/components/unary/vent_pump/on{
+ dir = 8
+ },
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/obj/structure/table/wood,
+/turf/open/floor/wood,
+/area/maintenance/bar)
"wUY" = (
/obj/structure/table,
/obj/item/reagent_containers/glass/bucket,
/turf/open/floor/plasteel/hydrofloor,
/area/hallway/secondary/service)
-"wZF" = (
-/obj/effect/landmark/secequipment,
-/obj/effect/turf_decal/bot{
- dir = 2
- },
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/main)
-"xbq" = (
-/obj/machinery/computer/secure_data{
- dir = 1
- },
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/warden)
-"xgi" = (
-/obj/machinery/firealarm{
- pixel_y = 24
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 1
- },
-/turf/open/floor/plasteel,
-/area/ai_monitored/security/armory)
+"xfy" = (
+/obj/machinery/computer/cryopod,
+/turf/closed/wall,
+/area/crew_quarters/dorms)
"xhV" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
@@ -53487,13 +54222,6 @@
},
/turf/open/floor/plating,
/area/construction)
-"xic" = (
-/obj/effect/turf_decal/stripes/line{
- dir = 1
- },
-/obj/effect/turf_decal/stripes/line,
-/turf/open/floor/plasteel,
-/area/security/armory)
"xiw" = (
/obj/machinery/door/airlock{
name = "Service Hall";
@@ -53505,29 +54233,6 @@
},
/turf/open/floor/plating,
/area/hallway/secondary/service)
-"xpa" = (
-/obj/structure/chair/stool,
-/obj/machinery/light/small{
- dir = 1
- },
-/obj/machinery/button/door{
- id = "permabolt3";
- name = "Cell Bolt Control";
- normaldoorcontrol = 1;
- pixel_y = 25;
- req_access_txt = "0";
- specialfunctions = 4
- },
-/obj/machinery/atmospherics/components/unary/vent_scrubber/on,
-/turf/open/floor/plasteel/floorgrime,
-/area/security/prison)
-"xDn" = (
-/obj/machinery/flasher{
- id = "Cell 4";
- pixel_x = -28
- },
-/turf/open/floor/plasteel/floorgrime,
-/area/security/brig)
"xEu" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 6
@@ -53539,1681 +54244,21 @@
/obj/effect/spawner/lootdrop/grille_or_trash,
/turf/open/floor/plating,
/area/maintenance/starboard/aft)
-"xJF" = (
-/obj/machinery/door/firedoor,
-/obj/machinery/door/airlock/security{
- id_tag = "laborexit";
- name = "Labor Shuttle";
- req_access = null;
- req_access_txt = "63"
- },
-/turf/open/floor/plasteel,
-/area/security/processing)
-"xVn" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
- dir = 1
- },
-/turf/open/floor/plasteel/red/side,
-/area/security/brig)
-"ybU" = (
-/obj/machinery/vending/kink,
+"xPY" = (
+/obj/effect/spawner/structure/window/reinforced,
/turf/open/floor/plating,
-/area/maintenance/starboard/fore)
+/area/maintenance/bar)
"ycu" = (
/obj/structure/cable{
icon_state = "2-4"
},
/turf/open/floor/plasteel,
/area/science/circuit)
-"ykv" = (
-/obj/machinery/light{
- dir = 1
- },
-/obj/machinery/cryopod{
- tag = "icon-cryopod-open (EAST)";
- icon_state = "cryopod-open";
- dir = 4
- },
-/turf/open/floor/plasteel/dark,
-/area/crew_quarters/cryopod)
-"yLl" = (
-/obj/machinery/suit_storage_unit/security,
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/effect/turf_decal/bot_white,
-/turf/open/floor/plasteel/dark,
-/area/ai_monitored/security/armory)
-"yOg" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
- },
-/obj/structure/table,
-/obj/item/storage/box/prisoner,
-/obj/machinery/camera{
- c_tag = "Labor Shuttle Dock North"
- },
-/turf/open/floor/plasteel,
-/area/security/processing)
-"zaC" = (
-/obj/structure/rack,
-/obj/item/storage/box/rubbershot{
- pixel_x = -3;
- pixel_y = 3
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/obj/item/storage/box/rubbershot{
- pixel_x = -3;
- pixel_y = 3
- },
-/obj/item/storage/box/rubbershot,
-/obj/item/storage/box/rubbershot,
-/obj/item/storage/box/rubbershot{
- pixel_x = 3;
- pixel_y = -3
- },
-/obj/item/storage/box/rubbershot{
- pixel_x = 3;
- pixel_y = -3
- },
-/obj/effect/turf_decal/bot_white,
-/turf/open/floor/plasteel/dark,
-/area/ai_monitored/security/armory)
-"zcn" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
- dir = 1
- },
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/warden)
-"zft" = (
-/obj/effect/turf_decal/stripes/line{
- dir = 6
- },
-/turf/open/floor/plasteel,
-/area/security/main)
-"zmg" = (
-/obj/structure/cable{
- icon_state = "1-8"
- },
-/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,
-/obj/machinery/atmospherics/components/unary/vent_pump/on,
-/turf/open/floor/plasteel,
-/area/security/brig)
-"znN" = (
-/obj/structure/chair/stool,
-/turf/open/floor/wood{
- icon_state = "wood-broken"
- },
-/area/maintenance/bar)
-"zxh" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/turf/open/floor/plasteel/neutral/side{
- dir = 4
- },
-/area/crew_quarters/dorms)
-"zGy" = (
-/obj/effect/turf_decal/stripes/line{
- dir = 1
- },
-/obj/machinery/camera/motion{
- c_tag = "Armory Motion Sensor";
- dir = 2;
- name = "motion-sensitive security camera"
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 6
- },
-/turf/open/floor/plasteel,
-/area/ai_monitored/security/armory)
-"zRm" = (
-/obj/effect/spawner/structure/window/reinforced,
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "seclobby";
- name = "security shutters"
- },
-/obj/structure/cable{
- icon_state = "0-8"
- },
-/turf/open/floor/plating,
-/area/security/brig)
-"zSX" = (
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/obj/effect/turf_decal/tile/green/corner,
-/turf/open/floor/plasteel,
-/area/crew_quarters/cryopod)
-"AgS" = (
-/obj/machinery/vending/games{
- name = "\improper Good 'Clean' Fun"
- },
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"ATB" = (
-/obj/structure/closet/secure_closet/lethalshots,
-/obj/effect/turf_decal/bot_white,
-/turf/open/floor/plasteel/dark,
-/area/ai_monitored/security/armory)
-"AWY" = (
-/obj/machinery/flasher{
- id = "Cell 1";
- pixel_x = -28
- },
-/turf/open/floor/plasteel/floorgrime,
-/area/security/brig)
-"BdE" = (
-/obj/effect/turf_decal/stripes/line,
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/turf/open/floor/plasteel,
-/area/ai_monitored/security/armory)
-"BlT" = (
-/obj/machinery/door/firedoor,
-/obj/machinery/door/window/southleft{
- base_state = "right";
- dir = 1;
- icon_state = "right";
- name = "Armory";
- req_access_txt = "3"
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 4
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/turf/open/floor/plasteel/dark,
-/area/ai_monitored/security/armory)
-"BSi" = (
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/turf/open/floor/plasteel,
-/area/security/main)
-"CaS" = (
-/obj/structure/table,
-/obj/item/folder/red,
-/obj/item/pen,
-/obj/item/hand_labeler,
-/obj/item/book/manual/wiki/security_space_law,
-/obj/machinery/light,
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/warden)
-"Clf" = (
-/obj/machinery/button/door{
- id = "briggate";
- name = "Desk Shutters";
- pixel_x = -26;
- pixel_y = 6;
- req_access_txt = "0"
- },
-/obj/machinery/button/flasher{
- id = "brigentry";
- pixel_x = -28;
- pixel_y = -8
- },
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/turf/open/floor/plasteel/dark,
-/area/security/brig)
-"CpD" = (
-/obj/machinery/firealarm{
- dir = 1;
- pixel_y = -24
- },
-/turf/open/floor/plasteel/red/side{
- dir = 10
- },
-/area/security/brig)
-"CxU" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"CJg" = (
-/turf/open/floor/plasteel/red/side,
-/area/security/brig)
-"CQC" = (
-/obj/structure/cable{
- icon_state = "2-4"
- },
-/obj/structure/cable{
- icon_state = "1-4"
- },
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/warden)
-"CQO" = (
-/obj/effect/spawner/structure/window/reinforced,
-/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
- dir = 4
- },
-/obj/structure/cable{
- icon_state = "0-4"
- },
-/obj/structure/cable{
- icon_state = "0-8"
- },
-/turf/open/floor/plating,
-/area/ai_monitored/security/armory)
-"CUx" = (
-/obj/structure/chair/stool/bar,
-/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{
- dir = 8
- },
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"Dhx" = (
-/obj/machinery/camera/motion{
- c_tag = "Non-Lethal Armory Motion Sensor";
- dir = 4
- },
-/obj/effect/turf_decal/stripes/end{
- dir = 8
- },
-/turf/open/floor/plasteel,
-/area/security/armory)
-"DHH" = (
-/obj/machinery/button/door{
- id = "Maintdorm1";
- name = "Dorm Bolt Control";
- normaldoorcontrol = 1;
- pixel_x = 25;
- specialfunctions = 4
- },
-/turf/open/floor/wood,
-/area/maintenance/port/aft)
-"DHO" = (
-/obj/machinery/atmospherics/pipe/manifold/supply/hidden,
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/turf/open/floor/plasteel/red/side{
- dir = 5
- },
-/area/security/brig)
-"DJw" = (
-/obj/effect/turf_decal/stripes/white/line{
- dir = 5
- },
-/turf/open/floor/plasteel/dark,
-/area/security/execution/transfer)
-"DRh" = (
-/obj/structure/table,
-/obj/item/grenade/barrier{
- pixel_x = 4
- },
-/obj/item/grenade/barrier,
-/obj/item/grenade/barrier{
- pixel_x = -4
- },
-/obj/machinery/light{
- dir = 1
- },
-/turf/open/floor/plasteel/dark,
-/area/security/armory)
-"DVb" = (
-/obj/structure/window/reinforced,
-/obj/structure/window/reinforced{
- dir = 4
- },
-/obj/structure/window/reinforced{
- dir = 1;
- layer = 2.9
- },
-/obj/structure/closet/secure_closet/brig{
- id = "Secure Cell";
- name = "Secure Cell Locker"
- },
-/obj/effect/turf_decal/stripes/white/end{
- dir = 4
- },
-/obj/effect/turf_decal/delivery/white,
-/turf/open/floor/plasteel/dark,
-/area/security/execution/transfer)
-"EbP" = (
-/obj/machinery/suit_storage_unit/security,
-/obj/effect/turf_decal/bot_white,
-/turf/open/floor/plasteel/dark,
-/area/ai_monitored/security/armory)
-"Ecg" = (
-/obj/machinery/light{
- dir = 4
- },
+"ygH" = (
/obj/structure/table/wood,
/obj/item/reagent_containers/spray/cleaner,
-/turf/open/floor/wood{
- icon_state = "wood-broken6"
- },
-/area/maintenance/bar)
-"Eew" = (
-/obj/machinery/navbeacon{
- codes_txt = "patrol;next_patrol=EVA";
- location = "Security"
- },
-/obj/machinery/atmospherics/components/unary/vent_pump/on,
-/turf/open/floor/plasteel,
-/area/hallway/primary/fore)
-"Eko" = (
-/obj/machinery/power/apc{
- areastring = "/area/maintenance/bar";
- dir = 2;
- name = "Maintenance Bar APC";
- pixel_x = 1;
- pixel_y = -24
- },
-/obj/structure/cable,
-/turf/open/floor/wood{
- icon_state = "wood-broken7"
- },
-/area/maintenance/bar)
-"Emp" = (
-/obj/structure/grille,
-/obj/structure/lattice,
-/turf/open/space/basic,
-/area/space/nearstation)
-"Evc" = (
-/obj/machinery/door/airlock/security{
- name = "Interrogation";
- req_access = null;
- req_access_txt = "63"
- },
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/turf/open/floor/plasteel/dark,
-/area/security/prison)
-"EOh" = (
-/obj/effect/turf_decal/stripes/line{
- dir = 1
- },
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/turf/open/floor/plasteel,
-/area/ai_monitored/security/armory)
-"EXC" = (
-/obj/structure/closet/l3closet/security,
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/main)
-"Fdq" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/machinery/door/firedoor,
-/obj/machinery/door/airlock/security{
- aiControlDisabled = 0;
- id_tag = null;
- locked = 0;
- name = "Prisoner Transfer Centre";
- req_access = null;
- req_access_txt = "2"
- },
-/turf/open/floor/plasteel/dark,
-/area/security/execution/transfer)
-"Fwc" = (
-/obj/effect/turf_decal/stripes/line{
- dir = 1
- },
-/obj/effect/turf_decal/stripes/corner{
- dir = 1
- },
-/turf/open/floor/plasteel,
-/area/security/armory)
-"FJK" = (
-/obj/structure/chair/stool/bar,
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/turf/open/floor/wood{
- icon_state = "wood-broken7"
- },
-/area/maintenance/bar)
-"FQA" = (
-/obj/machinery/button/door{
- id = "seclobby";
- name = "Security Lobby Lockdown";
- pixel_x = -26;
- pixel_y = 8;
- req_access_txt = "2"
- },
-/obj/structure/cable{
- icon_state = "1-4"
- },
-/obj/machinery/button/door{
- desc = "A remote control switch for the medbay foyer.";
- id = "lobbyairlock";
- name = "Security Lobby Doors Control";
- normaldoorcontrol = 1;
- pixel_x = -26;
- pixel_y = -2;
- req_access_txt = "63"
- },
-/turf/open/floor/plasteel/dark,
-/area/security/brig)
-"FRl" = (
-/obj/structure/falsewall,
-/turf/open/floor/plating,
-/area/maintenance/bar)
-"FZW" = (
-/obj/effect/turf_decal/stripes/white/line{
- dir = 1
- },
-/obj/effect/turf_decal/stripes/white/corner,
-/turf/open/floor/plasteel/dark,
-/area/security/execution/transfer)
-"Gbr" = (
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/structure/rack,
-/obj/item/clothing/mask/gas/sechailer{
- pixel_x = -3;
- pixel_y = 3
- },
-/obj/item/clothing/mask/gas/sechailer,
-/obj/item/clothing/mask/gas/sechailer{
- pixel_x = 3;
- pixel_y = -3
- },
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/warden)
-"GcW" = (
-/turf/closed/wall/r_wall,
-/area/security/armory)
-"GlY" = (
-/obj/machinery/door/window/westleft{
- base_state = "right";
- dir = 4;
- icon_state = "right";
- name = "Brig Infirmary";
- req_access_txt = "0"
- },
-/turf/open/floor/plasteel/whitered/side{
- dir = 4
- },
-/area/security/brig)
-"Gmd" = (
-/obj/structure/cable{
- icon_state = "0-8"
- },
-/obj/effect/spawner/structure/window/reinforced,
-/turf/open/floor/plating,
-/area/security/brig)
-"Gnk" = (
-/obj/structure/chair/stool,
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 5
- },
/turf/open/floor/wood,
/area/maintenance/bar)
-"GpD" = (
-/obj/machinery/flasher{
- id = "brigentry";
- pixel_y = -28
- },
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/obj/structure/chair{
- dir = 1
- },
-/turf/open/floor/plasteel/red/side,
-/area/security/brig)
-"Gwy" = (
-/obj/machinery/door/airlock/maintenance/abandoned{
- id_tag = "Maintdorm2";
- req_access_txt = "0"
- },
-/turf/open/floor/wood,
-/area/maintenance/port/aft)
-"Hig" = (
-/obj/machinery/camera{
- c_tag = "Dormitory South";
- c_tag_order = 999;
- dir = 4
- },
-/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
- dir = 8
- },
-/obj/structure/cable{
- icon_state = "2-4"
- },
-/turf/open/floor/plasteel/neutral/side{
- dir = 8
- },
-/area/crew_quarters/dorms)
-"HJB" = (
-/turf/open/floor/wood{
- icon_state = "wood-broken6"
- },
-/area/maintenance/bar)
-"HWl" = (
-/obj/structure/table/wood,
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
- },
-/obj/machinery/newscaster{
- pixel_x = 30
- },
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/turf/open/floor/wood{
- icon_state = "wood-broken7"
- },
-/area/maintenance/bar)
-"HXb" = (
-/obj/machinery/door/firedoor,
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/obj/machinery/door/poddoor/preopen{
- id = "Prison Gate";
- name = "prison blast door"
- },
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/obj/effect/turf_decal/delivery,
-/turf/open/floor/plasteel,
-/area/security/brig)
-"IcK" = (
-/obj/effect/turf_decal/stripes/white/line,
-/obj/effect/turf_decal/stripes/white/corner{
- dir = 1
- },
-/obj/machinery/door_timer{
- id = "Secure Cell";
- name = "Secure Cell";
- pixel_y = -32
- },
-/turf/open/floor/plasteel/dark,
-/area/security/execution/transfer)
-"Iiq" = (
-/obj/machinery/door/firedoor,
-/obj/machinery/door/airlock/security/glass{
- name = "Labor Camp Shuttle Airlock";
- req_access_txt = "2"
- },
-/obj/machinery/button/door{
- id = "prison release";
- name = "Labor Camp Shuttle Lockdown";
- pixel_y = -25;
- req_access_txt = "2"
- },
-/obj/effect/mapping_helpers/airlock/cyclelink_helper{
- dir = 8
- },
-/turf/open/floor/plasteel/dark,
-/area/security/processing)
-"IqS" = (
-/obj/structure/window/reinforced,
-/obj/vehicle/ridden/secway,
-/obj/item/key/security,
-/obj/machinery/door/window/eastleft{
- name = "Secway Docking Port"
- },
-/obj/effect/turf_decal/delivery,
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/main)
-"IwC" = (
-/obj/effect/spawner/lootdrop/keg,
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"IEd" = (
-/obj/effect/turf_decal/stripes/line,
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/turf/open/floor/plasteel,
-/area/ai_monitored/security/armory)
-"IOq" = (
-/obj/structure/rack,
-/obj/item/storage/box/chemimp{
- pixel_x = 6
- },
-/obj/item/storage/box/trackimp{
- pixel_x = -3
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/obj/effect/turf_decal/bot_white,
-/turf/open/floor/plasteel/dark,
-/area/ai_monitored/security/armory)
-"IPJ" = (
-/turf/open/floor/plasteel/red/corner{
- dir = 4
- },
-/area/security/brig)
-"JbH" = (
-/obj/machinery/door/firedoor,
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/turf/open/floor/plasteel,
-/area/hallway/primary/fore)
-"Jcn" = (
-/obj/structure/bed,
-/obj/item/bedsheet,
-/turf/open/floor/plasteel/floorgrime,
-/area/security/brig)
-"Jcy" = (
-/obj/structure/chair{
- dir = 1
- },
-/obj/item/radio/intercom{
- name = "Station Intercom (General)";
- pixel_y = -29
- },
-/turf/open/floor/plasteel/red/side,
-/area/security/brig)
-"Jfm" = (
-/turf/open/floor/plasteel/red/side{
- dir = 8
- },
-/area/security/brig)
-"Jgm" = (
-/obj/effect/turf_decal/loading_area/white,
-/obj/effect/turf_decal/stripes/white/corner{
- dir = 8
- },
-/obj/effect/turf_decal/stripes/white/corner,
-/turf/open/floor/plasteel/dark,
-/area/security/execution/transfer)
-"Jnv" = (
-/obj/structure/chair/office/dark{
- dir = 4
- },
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/turf/open/floor/plasteel,
-/area/ai_monitored/security/armory)
-"JAr" = (
-/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
- dir = 4
- },
-/obj/effect/turf_decal/tile/green/corner,
-/turf/open/floor/plasteel,
-/area/crew_quarters/cryopod)
-"JOT" = (
-/obj/structure/disposalpipe/segment{
- dir = 4
- },
-/obj/machinery/atmospherics/pipe/manifold/supply/hidden,
-/turf/open/floor/plasteel,
-/area/hallway/primary/fore)
-"Knt" = (
-/turf/open/floor/plasteel/red/side{
- dir = 6
- },
-/area/security/brig)
-"Kpp" = (
-/obj/machinery/light{
- dir = 4
- },
-/obj/machinery/cryopod{
- tag = "icon-cryopod-open (WEST)";
- icon_state = "cryopod-open";
- dir = 8
- },
-/turf/open/floor/plasteel/floorgrime,
-/area/security/prison)
-"KrE" = (
-/obj/structure/rack,
-/obj/item/soap/nanotrasen,
-/obj/effect/spawner/lootdrop/maintenance,
-/turf/open/floor/plating,
-/area/maintenance/port/aft)
-"KvX" = (
-/obj/structure/chair/office/dark,
-/obj/effect/landmark/start/warden,
-/obj/machinery/button/door{
- id = "Prison Gate";
- name = "Prison Wing Lockdown";
- pixel_x = -27;
- pixel_y = 8;
- req_access_txt = "2"
- },
-/obj/machinery/button/door{
- id = "seclobby";
- name = "Security Lobby Lockdown";
- pixel_x = -27;
- pixel_y = -2;
- req_access_txt = "2"
- },
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/obj/structure/cable{
- icon_state = "1-8"
- },
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/warden)
-"KHo" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
- },
-/turf/open/floor/plasteel/red/corner{
- dir = 4
- },
-/area/security/brig)
-"KNi" = (
-/obj/machinery/door/window/southleft{
- name = "Armory";
- req_access_txt = "3"
- },
-/obj/machinery/door/firedoor,
-/obj/effect/turf_decal/stripes/line{
- dir = 10
- },
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/turf/open/floor/plasteel,
-/area/ai_monitored/security/armory)
-"LcH" = (
-/obj/structure/table/wood,
-/obj/machinery/chem_dispenser/drinks,
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"Lru" = (
-/obj/structure/chair/stool,
-/obj/machinery/light/small{
- dir = 1
- },
-/obj/machinery/button/door{
- id = "permabolt2";
- name = "Cell Bolt Control";
- normaldoorcontrol = 1;
- pixel_y = 25;
- req_access_txt = "0";
- specialfunctions = 4
- },
-/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
- dir = 8
- },
-/turf/open/floor/plasteel/floorgrime,
-/area/security/prison)
-"LAP" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 5
- },
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/warden)
-"LZL" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/turf/closed/wall,
-/area/maintenance/fore/secondary)
-"Moa" = (
-/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{
- dir = 8
- },
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/turf/open/floor/plasteel,
-/area/ai_monitored/security/armory)
-"MxR" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/machinery/light,
-/turf/open/floor/plasteel/red/side,
-/area/security/brig)
-"Mzd" = (
-/obj/machinery/door/poddoor/shutters{
- id = "lowsecarmory";
- name = "Non-Lethal Armoury Shutter"
- },
-/obj/machinery/button/door{
- id = "lowsecarmory";
- name = "Non-Lethal Armory Shutters";
- pixel_y = 26;
- req_access_txt = "3"
- },
-/obj/effect/turf_decal/delivery,
-/turf/open/floor/plasteel,
-/area/security/main)
-"MIE" = (
-/obj/item/shard,
-/obj/item/wirecutters,
-/obj/item/wallframe/camera,
-/turf/open/floor/plating{
- icon_state = "panelscorched"
- },
-/area/maintenance/bar)
-"MJI" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/turf/open/floor/wood{
- icon_state = "wood-broken5"
- },
-/area/maintenance/bar)
-"MLq" = (
-/obj/effect/turf_decal/stripes/line{
- dir = 9
- },
-/obj/machinery/airalarm{
- pixel_y = 23
- },
-/turf/open/floor/plasteel,
-/area/ai_monitored/security/armory)
-"MRu" = (
-/obj/machinery/light_switch{
- pixel_y = 28
- },
-/obj/structure/closet/secure_closet/courtroom,
-/obj/effect/decal/cleanable/cobweb,
-/obj/item/gavelhammer,
-/turf/open/floor/plasteel,
-/area/security/courtroom)
-"MRP" = (
-/obj/machinery/door/airlock/maintenance/abandoned{
- name = "Incinerator Access";
- req_access_txt = "12"
- },
-/obj/structure/barricade/wooden{
- name = "wooden barricade (CLOSED)"
- },
-/turf/open/floor/plating,
-/area/maintenance/bar)
-"MWg" = (
-/obj/effect/turf_decal/stripes/line{
- dir = 1
- },
-/turf/open/floor/plasteel,
-/area/security/armory)
-"Nau" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/obj/structure/reagent_dispensers/water_cooler,
-/turf/open/floor/plasteel/red/side,
-/area/security/brig)
-"NkF" = (
-/obj/machinery/atmospherics/pipe/manifold/supply/hidden,
-/turf/open/floor/plasteel/red/side,
-/area/security/brig)
-"Nmb" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/turf/open/floor/plasteel/red/side{
- dir = 6
- },
-/area/security/brig)
-"Nql" = (
-/obj/effect/spawner/structure/window/reinforced,
-/obj/structure/cable{
- icon_state = "0-4"
- },
-/obj/structure/cable{
- icon_state = "0-8"
- },
-/turf/open/floor/plating,
-/area/security/brig)
-"Nrx" = (
-/obj/item/radio/intercom{
- desc = "Talk through this. It looks like it has been modified to not broadcast.";
- dir = 2;
- name = "Prison Intercom (General)";
- pixel_x = -25;
- pixel_y = -2;
- prison_radio = 1
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/turf/open/floor/plasteel/floorgrime,
-/area/security/brig)
-"NzL" = (
-/obj/machinery/door/window/westleft{
- base_state = "left";
- dir = 4;
- icon_state = "left";
- name = "Brig Infirmary";
- req_access_txt = "0"
- },
-/turf/open/floor/plasteel/whitered/side{
- dir = 4
- },
-/area/security/brig)
-"NQr" = (
-/obj/machinery/requests_console{
- department = "Security";
- departmentType = 5;
- pixel_x = -30
- },
-/obj/machinery/camera{
- c_tag = "Brig Control Room";
- dir = 4
- },
-/obj/machinery/light{
- dir = 8
- },
-/obj/structure/closet/secure_closet/warden,
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/warden)
-"NSC" = (
-/obj/structure/cable{
- icon_state = "1-8"
- },
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/warden)
-"Oly" = (
-/obj/machinery/chem_dispenser/drinks/beer,
-/obj/structure/table/wood,
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"Osi" = (
-/obj/machinery/door/poddoor/shutters{
- id = "armory";
- name = "Armoury Shutter"
- },
-/obj/effect/turf_decal/delivery,
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/turf/open/floor/plasteel,
-/area/ai_monitored/security/armory)
-"OtF" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/turf/closed/wall,
-/area/maintenance/bar)
-"Ozq" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"OBq" = (
-/obj/machinery/computer/security/telescreen/entertainment{
- pixel_x = -31
- },
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"OSr" = (
-/obj/machinery/door/airlock/maintenance/abandoned{
- id_tag = "Maintdorm1";
- req_access_txt = "0"
- },
-/turf/open/floor/wood,
-/area/maintenance/port/aft)
-"PcH" = (
-/obj/structure/table/wood/poker,
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"Pem" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
- },
-/turf/closed/wall,
-/area/maintenance/bar)
-"Pez" = (
-/obj/effect/turf_decal/stripes/line{
- dir = 2
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/turf/open/floor/plasteel,
-/area/ai_monitored/security/armory)
-"PlJ" = (
-/obj/structure/cable{
- icon_state = "0-4"
- },
-/obj/structure/cable{
- icon_state = "0-8"
- },
-/obj/effect/spawner/structure/window/reinforced,
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "seclobby";
- name = "security shutters"
- },
-/turf/open/floor/plating,
-/area/security/brig)
-"PzP" = (
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"PBc" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/warden)
-"PEg" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/obj/effect/spawner/structure/window/reinforced,
-/obj/structure/cable,
-/obj/structure/cable{
- icon_state = "0-4"
- },
-/turf/open/floor/plating,
-/area/security/brig)
-"PJW" = (
-/obj/machinery/disposal/bin,
-/obj/structure/disposalpipe/trunk,
-/turf/open/floor/plasteel/red/side{
- dir = 4
- },
-/area/security/brig)
-"PYb" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/obj/effect/spawner/structure/window/reinforced,
-/obj/structure/cable{
- icon_state = "0-8"
- },
-/obj/structure/cable{
- icon_state = "0-4"
- },
-/turf/open/floor/plating,
-/area/security/brig)
-"Qcw" = (
-/obj/machinery/door/firedoor,
-/obj/structure/cable{
- icon_state = "1-8"
- },
-/obj/machinery/door/airlock/security/glass{
- cyclelinkeddir = 1;
- id_tag = "outerbrig";
- name = "Brig";
- req_access_txt = "63"
- },
-/turf/open/floor/plasteel/red/side{
- dir = 5
- },
-/area/security/brig)
-"Qge" = (
-/obj/machinery/button/door{
- id = "Maintdorm2";
- name = "Dorm Bolt Control";
- normaldoorcontrol = 1;
- pixel_x = 25;
- specialfunctions = 4
- },
-/turf/open/floor/wood,
-/area/maintenance/port/aft)
-"Qru" = (
-/obj/machinery/door/firedoor,
-/obj/machinery/door/airlock/security/glass{
- cyclelinkeddir = 1;
- id_tag = "lobbyairlock";
- name = "Security Lobby";
- req_access_txt = "0"
- },
-/turf/open/floor/plasteel/red/side{
- dir = 1
- },
-/area/security/brig)
-"Qvz" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 6
- },
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"QDB" = (
-/obj/effect/turf_decal/stripes/line,
-/obj/effect/turf_decal/stripes/line{
- dir = 1
- },
-/turf/open/floor/plasteel,
-/area/security/armory)
-"QFx" = (
-/obj/machinery/door/airlock/external{
- name = "Labor Camp Shuttle Airlock";
- req_access_txt = "2"
- },
-/obj/effect/mapping_helpers/airlock/cyclelink_helper{
- dir = 4
- },
-/turf/open/floor/plasteel/dark,
-/area/security/processing)
-"ReY" = (
-/obj/machinery/door/airlock/maintenance/abandoned{
- req_access_txt = "0"
- },
-/turf/open/floor/plating,
-/area/maintenance/bar)
-"Rwb" = (
-/obj/machinery/computer/crew{
- dir = 1
- },
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/warden)
-"RyJ" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/turf/open/floor/plasteel,
-/area/ai_monitored/security/armory)
-"RRt" = (
-/obj/item/lighter/greyscale,
-/obj/effect/decal/cleanable/semen{
- desc = "Blech.";
- name = "dried semen"
- },
-/turf/open/floor/plating{
- icon_state = "panelscorched"
- },
-/area/maintenance/bar)
-"RWl" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/turf/open/floor/plasteel/red/side{
- dir = 6
- },
-/area/security/brig)
-"SbB" = (
-/obj/machinery/camera{
- c_tag = "Brig Equipment Room";
- dir = 4
- },
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/main)
-"Sfp" = (
-/obj/machinery/door/airlock/security/glass{
- id_tag = null;
- name = "Evidence Storage";
- req_access_txt = "63"
- },
-/turf/open/floor/plasteel/red/side,
-/area/security/brig)
-"SjU" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/structure/cable{
- icon_state = "2-4"
- },
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"Sly" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/turf/open/floor/wood{
- icon_state = "wood-broken"
- },
-/area/maintenance/bar)
-"STm" = (
-/obj/machinery/vending/clothing,
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"SUw" = (
-/obj/structure/rack,
-/obj/item/storage/box/teargas{
- pixel_x = -3;
- pixel_y = 3
- },
-/obj/item/storage/box/handcuffs,
-/obj/item/storage/box/flashbangs{
- pixel_x = 3;
- pixel_y = -3
- },
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 9
- },
-/obj/effect/turf_decal/bot,
-/turf/open/floor/plasteel/red/side,
-/area/ai_monitored/security/armory)
-"SWq" = (
-/obj/machinery/door/firedoor,
-/obj/machinery/door/airlock/security{
- name = "Security Office";
- req_access = null;
- req_access_txt = "1"
- },
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/turf/open/floor/plasteel,
-/area/security/main)
-"Tqy" = (
-/obj/machinery/door/firedoor,
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/obj/machinery/door/airlock/security/glass{
- cyclelinkeddir = 1;
- id_tag = "outerbrig";
- name = "Brig";
- req_access_txt = "63"
- },
-/turf/open/floor/plasteel/red/side{
- dir = 9
- },
-/area/security/brig)
-"TIM" = (
-/obj/machinery/door_timer{
- id = "Cell 2";
- name = "Cell 2";
- pixel_y = -32
- },
-/obj/machinery/light,
-/obj/machinery/atmospherics/pipe/manifold/supply/hidden,
-/turf/open/floor/plasteel/red/corner,
-/area/security/brig)
-"TZk" = (
-/obj/structure/disposalpipe/segment,
-/turf/open/floor/plasteel/red/side{
- dir = 4
- },
-/area/security/brig)
-"UmK" = (
-/obj/machinery/door/airlock/maintenance/abandoned{
- req_access_txt = "0"
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"UnJ" = (
-/obj/machinery/vending/kink,
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"UqV" = (
-/obj/structure/cable{
- icon_state = "2-8"
- },
-/turf/open/floor/plasteel/dark,
-/area/security/brig)
-"Uua" = (
-/obj/structure/cable{
- icon_state = "2-8"
- },
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/warden)
-"Uuv" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/structure/filingcabinet/chestdrawer,
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/warden)
-"UvC" = (
-/obj/item/twohanded/required/kirbyplants/random,
-/turf/open/floor/plasteel/red/side{
- dir = 9
- },
-/area/security/brig)
-"USL" = (
-/obj/machinery/atmospherics/components/unary/vent_pump/on,
-/turf/open/floor/plasteel/red/side{
- dir = 5
- },
-/area/security/brig)
-"UYY" = (
-/obj/structure/cable{
- icon_state = "0-2"
- },
-/obj/machinery/power/apc{
- areastring = "/area/crew_quarters/cryopod";
- dir = 4;
- name = "Cryogenics APC";
- pixel_x = 24
- },
-/turf/open/floor/plating,
-/area/maintenance/fore/secondary)
-"Vup" = (
-/obj/structure/chair/stool,
-/obj/machinery/light/small{
- dir = 1
- },
-/obj/machinery/button/door{
- id = "permabolt1";
- name = "Cell Bolt Control";
- normaldoorcontrol = 1;
- pixel_y = 25;
- req_access_txt = "0";
- specialfunctions = 4
- },
-/obj/machinery/atmospherics/components/unary/vent_scrubber/on,
-/turf/open/floor/plasteel/floorgrime,
-/area/security/prison)
-"VLP" = (
-/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{
- dir = 1
- },
-/turf/open/floor/plasteel,
-/area/security/brig)
-"VTn" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/machinery/door/airlock/maintenance/abandoned{
- req_access_txt = "0"
- },
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/turf/open/floor/plating,
-/area/maintenance/bar)
-"VZe" = (
-/obj/machinery/door/poddoor/shutters{
- id = "armory";
- name = "Armoury Shutter"
- },
-/obj/effect/turf_decal/delivery,
-/turf/open/floor/plasteel,
-/area/ai_monitored/security/armory)
-"Wgg" = (
-/obj/structure/bed,
-/obj/item/bedsheet/grey,
-/obj/effect/decal/cleanable/semen{
- desc = "Blech.";
- name = "dried semen"
- },
-/obj/effect/spawner/lootdrop/costume,
-/turf/open/floor/plating{
- icon_state = "platingdmg3"
- },
-/area/maintenance/bar)
-"WwY" = (
-/obj/structure/chair/stool/bar,
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 6
- },
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"WDU" = (
-/obj/machinery/door/airlock/security/glass{
- name = "Brig Control";
- req_access_txt = "3"
- },
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/brig)
-"WMt" = (
-/obj/machinery/vending/coffee,
-/turf/open/floor/plasteel/red/side{
- dir = 5
- },
-/area/security/brig)
-"WQm" = (
-/obj/structure/chair{
- dir = 4;
- name = "Prosecution"
- },
-/turf/open/floor/plasteel/red/side{
- dir = 9
- },
-/area/security/courtroom)
-"WRc" = (
-/obj/machinery/door/firedoor,
-/obj/machinery/door/poddoor/shutters/preopen{
- id = "seclobby";
- name = "security shutters"
- },
-/obj/machinery/door/airlock/public/glass{
- name = "Courtroom"
- },
-/turf/open/floor/plasteel/dark,
-/area/security/brig)
-"WSZ" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/turf/open/floor/wood{
- icon_state = "wood-broken5"
- },
-/area/maintenance/bar)
-"WWX" = (
-/obj/structure/table/reinforced,
-/obj/machinery/door/window/brigdoor{
- dir = 1;
- name = "Armory Desk";
- req_access_txt = "3"
- },
-/obj/machinery/door/window/southleft{
- name = "Reception Desk";
- req_access_txt = "63"
- },
-/obj/item/paper_bin{
- pixel_x = -3;
- pixel_y = 7
- },
-/obj/item/pen{
- pixel_x = 4;
- pixel_y = 4
- },
-/obj/structure/cable{
- icon_state = "1-8"
- },
-/obj/structure/cable{
- icon_state = "1-4"
- },
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/brig)
-"WXW" = (
-/obj/structure/chair/stool/bar,
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"Xfx" = (
-/obj/machinery/atmospherics/components/unary/vent_pump/on,
-/turf/open/floor/plasteel/red/side{
- dir = 1
- },
-/area/security/brig)
-"Xiv" = (
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/turf/open/floor/plating,
-/area/maintenance/fore/secondary)
-"XjL" = (
-/obj/structure/rack,
-/obj/item/gun/energy/e_gun{
- pixel_x = -3;
- pixel_y = 3
- },
-/obj/item/gun/energy/e_gun,
-/obj/item/gun/energy/e_gun{
- pixel_x = 3;
- pixel_y = -3
- },
-/obj/effect/turf_decal/bot{
- dir = 2
- },
-/obj/structure/window/reinforced{
- dir = 1;
- layer = 2.9
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/turf/open/floor/plasteel{
- dir = 2
- },
-/area/ai_monitored/security/armory)
-"XmQ" = (
-/obj/structure/window/reinforced{
- dir = 4
- },
-/obj/machinery/iv_drip,
-/turf/open/floor/plasteel/whitered/side{
- dir = 5
- },
-/area/security/brig)
-"XqB" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/structure/cable{
- icon_state = "4-8"
- },
-/turf/open/floor/plating,
-/area/maintenance/bar)
-"XwE" = (
-/turf/open/floor/plasteel/red/side{
- dir = 10
- },
-/area/security/brig)
-"XBE" = (
-/obj/effect/spawner/lootdrop/maintenance{
- lootcount = 2;
- name = "2maintenance loot spawner"
- },
-/obj/item/crowbar,
-/obj/item/electropack/shockcollar,
-/turf/open/floor/plating,
-/area/maintenance/bar)
-"XLV" = (
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/obj/effect/turf_decal/stripes/corner,
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 10
- },
-/obj/structure/cable{
- icon_state = "2-4"
- },
-/turf/open/floor/plasteel,
-/area/ai_monitored/security/armory)
-"XMB" = (
-/obj/machinery/atmospherics/pipe/manifold/supply/hidden,
-/obj/machinery/rnd/production/protolathe/department/security,
-/turf/open/floor/plasteel/red/side,
-/area/security/main)
-"XPp" = (
-/obj/item/paper_bin{
- pixel_x = -3;
- pixel_y = 7
- },
-/obj/item/pen,
-/obj/machinery/newscaster{
- pixel_x = 30
- },
-/obj/structure/table/wood,
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"XRe" = (
-/obj/structure/table,
-/obj/machinery/chem_dispenser/drinks,
-/obj/structure/disposalpipe/segment,
-/turf/open/floor/plasteel/bar,
-/area/security/brig)
-"XSH" = (
-/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,
-/turf/open/floor/plasteel,
-/area/security/brig)
-"YcJ" = (
-/turf/open/floor/plasteel,
-/area/security/execution/transfer)
-"YjW" = (
-/obj/item/radio/intercom{
- freerange = 0;
- frequency = 1459;
- name = "Station Intercom (General)";
- pixel_x = 29
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/obj/structure/closet/wardrobe/red,
-/turf/open/floor/plasteel/showroomfloor,
-/area/security/main)
-"YpE" = (
-/obj/structure/chair/stool,
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
- },
-/turf/open/floor/wood,
-/area/maintenance/bar)
-"YNq" = (
-/obj/machinery/light{
- dir = 1
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 1
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/obj/effect/landmark/event_spawn,
-/turf/open/floor/plasteel,
-/area/ai_monitored/security/armory)
-"YNF" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
-/obj/machinery/firealarm{
- dir = 2;
- pixel_y = 24
- },
-/turf/open/floor/plasteel/red/side{
- dir = 1
- },
-/area/security/brig)
-"YRL" = (
-/obj/structure/table,
-/obj/item/storage/box/firingpins,
-/obj/item/storage/box/firingpins,
-/turf/open/floor/plasteel/dark,
-/area/ai_monitored/security/armory)
-"YUq" = (
-/obj/machinery/atmospherics/components/unary/vent_pump/on{
- dir = 4
- },
-/obj/machinery/computer/cryopod{
- pixel_y = 25
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/obj/effect/turf_decal/tile/green/corner{
- dir = 4
- },
-/turf/open/floor/plasteel,
-/area/crew_quarters/cryopod)
-"ZbZ" = (
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/turf/open/floor/plasteel/red/corner{
- dir = 8
- },
-/area/security/brig)
-"Zhd" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 5
- },
-/turf/closed/wall,
-/area/maintenance/bar)
-"Zvf" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
- },
-/turf/open/floor/plasteel/red/corner{
- dir = 1
- },
-/area/security/brig)
-"ZAl" = (
-/obj/machinery/computer/cryopod{
- pixel_y = 25
- },
-/turf/open/floor/plasteel/floorgrime,
-/area/security/prison)
-"ZEU" = (
-/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
- dir = 1
- },
-/turf/open/floor/plasteel,
-/area/security/brig)
-"ZHV" = (
-/obj/machinery/door_timer{
- id = "Cell 1";
- name = "Cell 1";
- pixel_y = -32
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 4
- },
-/turf/open/floor/plasteel/red/corner{
- dir = 2
- },
-/area/security/brig)
(1,1,1) = {"
aaa
@@ -71049,6 +70094,8 @@ aaa
aaa
aaa
aaa
+aaa
+aaa
aag
aaa
aaa
@@ -71056,8 +70103,6 @@ aaa
aaa
aaa
aaa
-aaa
-aaa
aaf
aaS
aaa
@@ -71306,6 +70351,8 @@ aaa
aaa
aaa
aaa
+aaa
+aaa
aag
aaa
aaa
@@ -71313,8 +70360,6 @@ aaa
aaa
aaa
aaa
-aaa
-aaa
aaf
aaS
aaf
@@ -71563,6 +70608,8 @@ aaa
aaa
aaa
aaa
+aaa
+aaa
aag
aaa
aaa
@@ -71570,8 +70617,6 @@ aaa
aaa
aaa
aaa
-aaa
-aaa
aaf
aaS
aaa
@@ -71820,6 +70865,8 @@ aaa
aaa
aaa
aaa
+aaa
+aaa
aag
aaa
aaa
@@ -71827,8 +70874,6 @@ aaa
aaa
aaa
aaa
-aaa
-aaa
aaf
aaS
acy
@@ -72077,6 +71122,8 @@ aaa
aaa
aaa
aaa
+aaa
+aaa
aag
aaa
aaa
@@ -72084,8 +71131,6 @@ aaa
aaa
aaa
aaa
-aaa
-aaa
aaf
aba
aaa
@@ -72334,6 +71379,8 @@ aaa
aaa
aaa
aaa
+aaa
+aaa
aag
aaa
aaa
@@ -72341,8 +71388,6 @@ aaa
aaa
aaa
aaa
-aaa
-aaa
aaf
aaS
aaf
@@ -72591,10 +71636,10 @@ aaa
aaa
aaa
aaa
+aaa
+aaa
aag
aaa
-aaa
-aaa
aoV
bZm
aoV
@@ -72848,10 +71893,10 @@ aaa
aaa
aaa
aaa
+aaa
+aaa
aag
aaa
-aaa
-aaa
aoV
bVz
aaf
@@ -73105,10 +72150,10 @@ aaa
aaa
aaa
aaa
+aaa
+aaa
aag
aaa
-aaa
-aaa
aag
bVz
aag
@@ -73362,10 +72407,10 @@ aaa
aaa
aaa
aaa
-aag
-gXs
aaa
aaa
+aag
+aaa
aaf
bVz
aoV
@@ -73618,10 +72663,10 @@ aaa
aaa
aaa
aaa
-gXs
+aaa
+aaa
+aaa
aag
-gXs
-gXs
aaa
aaf
bVz
@@ -73876,10 +72921,10 @@ aaa
aaf
aaf
aaf
+gXs
+gXs
aag
-gXs
-gXs
-gXs
+aaa
bVx
caf
aoV
@@ -74132,12 +73177,12 @@ aaa
aaa
aaa
aaa
-bCq
-bLv
-bCq
-bCq
-bCq
-bCq
+aaa
+aaa
+aaa
+jtl
+aaa
+aoV
cbj
aoV
aag
@@ -74389,11 +73434,11 @@ aaa
aaa
aaa
aaa
-bCq
-KrE
-bCq
-bPS
-gZR
+aaa
+aaa
+aaa
+jtl
+aaa
bCq
cbj
bLv
@@ -74646,11 +73691,11 @@ aaa
aaa
aaa
aaa
-bCq
-bHE
-bCq
-fLS
-pDm
+aaa
+aaa
+aaa
+jtl
+aaa
bCq
cbk
bLv
@@ -74865,7 +73910,7 @@ aLJ
aLE
aOl
aPA
-aQW
+aQN
aQW
aTD
aQW
@@ -74903,11 +73948,11 @@ aaa
aaa
aaa
aaa
-bLv
-bHE
-Gwy
-Qge
-tsC
+aaa
+aaa
+aaa
+jtl
+aaa
bCq
bVy
bLv
@@ -75160,11 +74205,11 @@ aaa
aaa
aaa
aaa
-bCq
-bHE
-bCq
-bCq
-qQU
+aaa
+aaa
+aaa
+jtl
+aaa
bCq
bVB
bHE
@@ -75417,11 +74462,11 @@ aaa
aaa
aaa
aaa
-bLv
-bHE
-bCq
-bPS
-kcq
+aaa
+aaa
+aaa
+jtl
+aaa
bCq
bVA
bWw
@@ -75675,10 +74720,10 @@ aaa
aaa
aaa
bCq
-bHE
bCq
-fLS
-jJa
+bCq
+bCq
+bCq
bCq
bVD
bWy
@@ -75932,10 +74977,10 @@ bGi
aoV
aoV
bCq
+bPU
bHE
-OSr
-DHH
-fEF
+bPU
+bPU
bCq
bVC
bWx
@@ -76189,10 +75234,10 @@ bGi
aoV
aoV
bCq
-bPW
+bCq
+uAK
bCq
bCq
-qQU
bCq
bVF
bWA
@@ -76448,8 +75493,8 @@ aoV
bCq
bHE
bHE
-bSq
-bTx
+bHE
+bHE
bCq
bVE
bWz
@@ -76706,20 +75751,20 @@ bCq
bPY
cOw
bCq
-ete
-ete
-ete
-ete
-ete
-MRP
-ete
-ete
-ete
-ete
-ete
-ete
-ete
-ete
+bCq
+bCq
+bCq
+bCq
+bCq
+bYy
+ref
+ref
+xPY
+ref
+ref
+ref
+ref
+ref
bUs
bLv
aaa
@@ -76963,20 +76008,20 @@ bCq
bPX
bRg
bRg
-ete
-nuB
-OBq
-sGR
-jDQ
-nuB
-IwC
-ete
-nuB
-iZV
-OBq
-nuB
-lIk
-ete
+bCq
+bHE
+bVG
+bHE
+bHE
+bHE
+dkC
+tmK
+gxS
+gxS
+qit
+iGw
+iGw
+ref
bUs
bLv
aaa
@@ -77220,20 +76265,20 @@ bLv
bQa
bHE
bHE
-ete
-Qvz
-jHE
-esl
-Ozq
-WSZ
-Ozq
-UmK
-Ozq
-Ozq
-eTp
-jnM
-fDN
-ete
+bCq
+bHE
+ref
+ref
+ref
+ref
+ref
+gxS
+vNv
+gxS
+iGw
+qbA
+tqe
+ref
bUs
bLv
aaf
@@ -77477,20 +76522,20 @@ bLv
bPZ
bHE
bHE
-ReY
-CxU
-WwY
-WXW
-FJK
-CUx
-qDl
-rHF
-qDl
-Sly
-Gnk
-irr
-nuB
-ete
+cTF
+bHE
+ref
+wPS
+rrl
+eYI
+ref
+gxS
+gxS
+gxS
+iGw
+vJu
+ooS
+ref
bUs
bLv
aaa
@@ -77734,20 +76779,20 @@ bLv
bHE
bHE
bSs
-ete
-MJI
-tLw
-wdF
-jss
-tLw
-nuB
-uQt
-HJB
-irr
-gEX
-PcH
-znN
-ete
+bCq
+bHE
+ref
+rgN
+iEy
+qBv
+ref
+iGw
+iGw
+vNv
+ouu
+iGw
+iGw
+ref
bUs
bLv
aaa
@@ -77991,20 +77036,20 @@ bCq
bHE
bRh
bLu
-ete
-SjU
-HWl
-PzP
-jdX
-ihS
-Eko
-ete
-nuB
-uOE
-gEX
-PcH
-nuw
-ete
+bCq
+bHE
+ref
+ref
+wzn
+ref
+ref
+qKd
+qKd
+iGw
+kds
+gxS
+gxS
+ref
bUs
bLv
aaf
@@ -78169,10 +77214,10 @@ abc
abc
afu
abc
-abc
-abc
-abc
-abc
+aaa
+aaa
+aaa
+aaa
aaa
aaa
aaa
@@ -78248,21 +77293,21 @@ bCq
bOK
bCq
bCq
-ete
-VTn
-Pem
-Oly
-LcH
-gPL
-ete
-ete
-nuB
-irr
-tvf
-orD
-irr
-ete
-bUs
+bCq
+bHE
+ref
+fWI
+gxS
+vNv
+nKB
+gxS
+bSu
+uBG
+stg
+vSH
+tEz
+pDq
+dqT
bLv
aaa
cjJ
@@ -78425,20 +77470,20 @@ abc
aea
aeH
aft
-vdY
-Jgm
-jXE
-DJw
abc
-gXs
+aaa
+aaa
+aaa
+aaa
+aaa
aaa
aaa
aiU
-QFx
+aln
aiU
aaa
aiU
-QFx
+anN
aiU
aaa
aaa
@@ -78506,20 +77551,20 @@ bHE
bLv
aaa
bLv
-lYQ
-Pem
-ete
-ete
-ete
-ete
-nuB
-nuB
-nuB
-YpE
-irr
-ihC
-ete
-bUs
+bHE
+ref
+knR
+vJW
+nRn
+oqQ
+qdB
+wSH
+qBQ
+oPA
+nRn
+nwX
+nEe
+bUz
bLv
aaa
cjJ
@@ -78684,18 +77729,18 @@ aeJ
afw
abc
abc
-FZW
-IcK
-abc
-aaf
aaf
aaa
+aaf
+aaf
+aaf
+aaf
aiU
-rtk
+alp
aiU
aaa
aiU
-rtk
+alp
aiU
aaf
aaf
@@ -78763,20 +77808,20 @@ bHE
bLv
aaf
bLv
-lYQ
-Pem
-mKs
-XBE
-RRt
-FRl
-nuB
-HJB
-jnM
-kuo
-nuB
-nuB
-ete
-bUs
+bUt
+ref
+ygH
+idZ
+tmK
+qSC
+gxS
+qKd
+iGw
+gxS
+qit
+eKN
+vhC
+bUz
bLv
aaf
cjJ
@@ -78934,26 +77979,26 @@ abb
abt
aca
acz
-wOx
+acX
adC
aeb
aeI
afv
agf
abc
-DVb
-mQI
-abc
+aaf
+aaa
+aaa
aiT
aiT
aiV
+akG
+cxJ
aiU
-Iiq
-aiU
-aiT
-aiU
-Iiq
+amK
aiU
+cxP
+aoq
aiV
aiT
aiT
@@ -79020,20 +78065,20 @@ bLv
bCq
aaa
bLv
-lYQ
-Pem
-MIE
-Wgg
-fhC
-ete
-STm
-vnP
-XPp
-Ecg
-AgS
-UnJ
-ete
bUs
+ref
+tOc
+vNv
+gxS
+ezO
+gxS
+gxS
+gxS
+gxS
+gxS
+gRV
+vhC
+bUz
bCq
aaa
aaf
@@ -79191,17 +78236,17 @@ abe
abw
acc
acB
-tTl
+acZ
adE
aee
aeL
afy
agh
abc
-YcJ
-YcJ
-YcJ
-aiV
+aaf
+aaa
+aaf
+aiT
ajs
akb
akI
@@ -79277,20 +78322,20 @@ bLv
aaa
aaa
bTB
-XqB
-mCA
-OtF
-OtF
-OtF
-OtF
-OtF
-OtF
-OtF
-OtF
-OtF
-OtF
-Zhd
-bUs
+bUv
+mtJ
+mtJ
+mtJ
+mtJ
+mtJ
+mtJ
+mtJ
+mtJ
+mtJ
+mtJ
+mtJ
+car
+bUz
bCq
bCq
bCq
@@ -79448,17 +78493,17 @@ abd
abv
acb
acA
-lgR
+acI
adD
aed
aeK
afx
agg
abc
-YcJ
-iTV
-YcJ
-aiV
+aaf
+aaa
+aaa
+aiU
ajr
aka
akH
@@ -79534,7 +78579,7 @@ bLv
bLv
bLv
bTA
-iqw
+bUu
bLw
bLw
bLw
@@ -79708,14 +78753,14 @@ aby
aby
aby
aeg
-Fdq
+aeN
afA
afA
afA
-YcJ
-YcJ
-YcJ
-aiV
+aaf
+aaa
+aaa
+aiU
aju
akd
akK
@@ -79973,13 +79018,13 @@ aai
aai
aai
aai
-yOg
+ajt
akc
akJ
alr
amd
amL
-rpN
+anu
alq
aot
apc
@@ -80231,13 +79276,13 @@ agK
aiB
aai
ajw
-vYR
+akf
aiX
aiX
aiX
aiX
aiV
-xJF
+anP
aiT
cCi
cCi
@@ -80475,13 +79520,13 @@ aat
abh
aat
acd
-xpa
+abK
acY
adG
aeh
aeO
afI
-hDJ
+agl
agH
ags
ags
@@ -80726,7 +79771,7 @@ aak
aap
aay
aaD
-aau
+aat
aat
aat
aat
@@ -80746,7 +79791,7 @@ aho
acd
ajy
akh
-Sfp
+afK
ajc
afM
afN
@@ -81257,7 +80302,7 @@ agK
agK
ail
aiE
-Evc
+aiW
ajA
akj
agj
@@ -81265,7 +80310,7 @@ agj
agj
aiX
aiX
-mlG
+anQ
aov
cCi
apU
@@ -81494,7 +80539,7 @@ aaa
aag
aaf
aaj
-nbc
+aaq
aay
aaE
aaJ
@@ -81503,7 +80548,7 @@ aaV
aat
aat
acd
-Lru
+abL
adb
acd
ael
@@ -81516,13 +80561,13 @@ agj
agj
agj
ajz
-cTu
-PEg
-aly
-AWY
-Jcn
-aiX
+aki
+akM
+alv
+amf
+amQ
anw
+anz
aov
cCi
arT
@@ -81773,13 +80818,13 @@ ahW
aiD
agj
auj
-ZEU
-fqD
-hYC
-qiF
-amg
-aiX
+akl
+akO
+alx
+alx
+amR
anw
+anz
aox
cCi
cCi
@@ -82030,13 +81075,13 @@ ain
aid
agj
aiZ
-ZHV
-akQ
-agj
-agj
-agj
-aiX
-kXo
+akk
+akN
+alw
+amg
+amR
+anw
+anR
aow
apg
aqZ
@@ -82286,14 +81331,14 @@ ahP
ahP
aiF
agj
-ajD
-akm
-PYb
-aly
-ryv
-Jcn
-aiX
-anw
+aja
+ajG
+akQ
+agj
+agj
+amS
+anx
+anz
aov
aph
aph
@@ -82522,35 +81567,35 @@ aaa
aag
aaf
aai
-ZAl
+aau
aaA
-Kpp
+aaG
aaK
aaP
aaX
aat
aat
acd
-Vup
+acD
acY
adG
aeq
aeV
acd
agj
-XmQ
-NzL
-GlY
+ahm
+ahD
+aiw
aiO
agj
-aja
-ZEU
-mqQ
-hYC
-qiF
-ami
-aiX
+ajD
+akm
+akP
+aly
+amh
+amR
anw
+anz
aov
aph
aob
@@ -82786,7 +81831,7 @@ aai
aai
aai
abj
-rPG
+abG
acd
acd
acd
@@ -82794,20 +81839,20 @@ acd
aeP
afC
agk
-HXb
+agF
agP
agP
agP
agP
aiz
-zmg
-TIM
-akQ
-agj
-agj
-agj
-aiX
+ajg
+akl
+akR
+alx
+alx
+amR
anw
+anz
aov
aph
aoc
@@ -83039,12 +82084,12 @@ aaa
aaa
aaf
aaf
-Emp
+aaa
aaf
aai
abi
abF
-cIV
+ach
acK
adf
acd
@@ -83058,13 +82103,13 @@ agO
agO
aiy
ajb
-fuL
-kQp
-Nrx
-rmO
-Jcn
-aiX
+ajF
+akN
+alw
+ami
+amR
anw
+anz
aov
api
ata
@@ -83296,8 +82341,8 @@ aaf
aaf
aaf
aaf
-aaS
aaf
+aaR
aaZ
aaZ
aaZ
@@ -83312,16 +82357,16 @@ agn
agR
agn
agR
-eEc
-aiX
-VLP
-akv
-rTI
-uGh
-aww
-amk
-aiX
-eet
+agn
+ajc
+ajI
+ako
+akQ
+agj
+agj
+amS
+any
+anz
aov
aph
aqb
@@ -83553,32 +82598,32 @@ aaa
aaa
aaa
aaf
-Emp
+aaa
+aaf
+aaf
+aaT
aaf
-GcW
-qla
-Dhx
-EbP
aaZ
-fpJ
-ATB
-lla
-YRL
+abm
+cpg
+acv
+adi
+adi
aaZ
-NQr
-Gbr
-tra
-ixw
-lVH
-piy
-ajI
-oxm
-akQ
-agj
-agj
-agj
-aiX
+aeW
+agQ
+ahv
+ahQ
+aiI
+aiH
+ajB
+akm
+akP
+aly
+amj
+amR
anw
+anz
aov
aph
aph
@@ -83810,32 +82855,32 @@ aaa
aaa
aaa
aaf
-Emp
+aaa
aaf
-GcW
-qla
-QDB
-EbP
+aaf
+aaT
+aaa
aaZ
-MLq
-cxA
+abH
+acl
+ajC
acL
-lTe
+adi
aaZ
-faB
-Uua
-CQC
-NSC
-KvX
-WWX
-VLP
-akm
-oKT
-aly
-xDn
-Jcn
-aiX
+agp
+agT
+ahx
+ahS
+aiK
+ajc
+ajI
+akl
+akT
+aww
+alx
+amR
anw
+anz
aov
apk
anw
@@ -84067,41 +83112,41 @@ aaa
aaa
aaa
aaf
-Emp
+aaa
aaf
-GcW
-qla
-fKO
-tfB
+aaf
+abY
+aaa
aaZ
-xgi
+abn
+ack
adk
adK
-zaC
-dhD
-agt
+cqG
+aeX
+ago
agS
agQ
-agt
-Rwb
-akV
+ahR
+aiJ
+ajc
ajI
-ZEU
-cQs
-hYC
-qiF
-amp
-aiX
+akk
+akS
+alw
+amk
+amR
+anw
anS
-Eew
-JbH
-oEE
-oEE
-oEE
-oEE
-oEE
-oEE
-JOT
+aoy
+apj
+anz
+anz
+anz
+anz
+anz
+anz
+awk
axB
anz
anz
@@ -84324,32 +83369,32 @@ aaa
aaa
aaa
aaf
-Emp
+aaa
aaf
-GcW
-qla
-QDB
-yLl
+aaf
+aaT
+aaa
aaZ
-zGy
-XjL
-Pez
-IOq
-CQO
-PBc
+abJ
+ack
+acM
+adQ
+cwM
+aeZ
+agr
agU
ahy
-LAP
-xbq
-Gmd
-KHo
-vJW
+ahX
+aiL
+ajc
+ajI
+akq
akQ
agj
agj
-agj
-aiX
-anA
+amS
+anx
+anz
aoz
apm
aqd
@@ -84581,33 +83626,33 @@ aaa
aaa
aaa
aaf
-Emp
+aaa
aaf
-GcW
-DRh
-xic
-yLl
+aaf
+aaT
+aaa
aaZ
-YNq
+abI
+ack
coS
aet
cxA
-KNi
+aeY
agt
agt
-vVq
-zcn
-agt
-WDU
-vYy
-xVn
+ahz
+aie
+aiN
+ajc
+ajI
+akp
akU
-Clf
+alz
aml
-FQA
-aiX
-Qru
-iYT
+amT
+anw
+anz
+aoz
apl
aqc
aqc
@@ -84838,33 +83883,33 @@ aaa
aaa
aaa
aaf
-Emp
+aaa
aaf
-GcW
-ssv
-Fwc
-XLV
-BlT
-wkw
-eAL
-sgY
-Moa
-tIp
+aaf
+abY
+aaa
+aaZ
+abQ
+ack
+adj
+arc
+blT
+agq
cml
agV
cxk
aig
-CaS
-aiX
-Zvf
-ZbZ
-Nql
+aiM
+ajc
+ajI
+akp
+akV
alB
amn
-UqV
-dcW
-aiG
-Knt
+amV
+anw
+anz
+aoz
aod
aqf
ahT
@@ -84878,9 +83923,9 @@ anF
anF
anF
anF
-UYY
-Xiv
-gwo
+anF
+anF
+anF
aoa
aJu
aKF
@@ -85095,33 +84140,33 @@ aaa
aaa
aaa
aaf
-Emp
+aaa
aaf
-GcW
-vmd
-MWg
-IEd
-VZe
-EOh
+aaf
+abY
+aaa
+aaZ
+abN
+ack
+bkA
acF
-acF
-gPJ
+aes
avB
amN
agt
-ahB
-Uuv
-agn
-aiX
-ksu
-muL
-amS
+awN
+aHp
+aIF
+ajc
+ajI
+akp
+akQ
alA
-iuz
amm
-zRm
-vZp
-vZp
+amU
+anw
+anT
+aoA
apn
aqe
arf
@@ -85133,12 +84178,12 @@ arf
arf
arf
arf
-rAZ
-rAZ
-rAZ
-rAZ
-jNv
-ahn
+arf
+arf
+arf
+arf
+aoa
+arf
aJn
aJn
aJq
@@ -85352,33 +84397,33 @@ aaa
aaa
aaa
aaf
-Emp
+aaa
aaf
-GcW
-mTf
-npy
-BdE
-Osi
-lsi
-Jnv
-RyJ
-SUw
+aaf
+aaT
+aaf
+aaZ
+aci
+acm
+cpA
+adg
+aeu
alt
agu
agX
ahB
aij
agn
-UvC
-sCj
-uZB
-PlJ
-UvC
-Jfm
-Jfm
-Jfm
-Jfm
-CpD
+aje
+ajJ
+akr
+akX
+alC
+alC
+amX
+anz
+anz
+aoB
aod
aqe
arf
@@ -85390,12 +84435,12 @@ atf
arf
aqa
atf
-rAZ
-ykv
-kPE
-rAZ
-jNv
-ahn
+arf
+sjc
+sjc
+sjc
+sjc
+arf
aaa
aJn
aJq
@@ -85609,12 +84654,12 @@ aaa
aaa
aaf
aaf
+aaf
+aaf
+aaa
adR
-adR
-adR
-adR
-Mzd
-avB
+abo
+aaZ
aaZ
aaZ
acT
@@ -85626,18 +84671,18 @@ agW
ahE
aii
agn
-Xfx
-ajb
-NkF
-PlJ
-ajc
-alC
-Jfm
-Jfm
-loR
-GpD
-LZL
-nMU
+ajd
+ajI
+ahY
+akW
+aiG
+amo
+amW
+anz
+anz
+aoz
+aod
+aqe
arf
apY
ate
@@ -85647,12 +84692,12 @@ ath
arf
apY
ath
-rAZ
-YUq
-zSX
-rAZ
-jNv
-ahn
+xfy
+shL
+ath
+shL
+shL
+arf
aaa
aJn
aLY
@@ -85866,33 +84911,33 @@ aaa
aaa
aaa
aaa
+aaf
+aaf
+aaa
abp
-IqS
-IqS
-vCy
-abO
-abO
-SbB
-abO
+abP
+aco
+acO
+abl
abO
abO
afc
-abo
+afQ
agw
agY
ahA
ahZ
adR
aiQ
-VLP
-txT
-Tqy
-sVi
-ajc
-Knt
-aiG
-CJg
-vJv
+ajI
+akt
+akQ
+agj
+agj
+aiX
+anB
+anz
+aoD
aod
aqe
arf
@@ -85904,12 +84949,12 @@ ath
arf
ayV
ath
-rAZ
-crS
-uMu
-rAZ
-jNv
-ahn
+arf
+aCd
+ath
+aCd
+aCd
+arf
aJw
aJw
aMh
@@ -86123,6 +85168,9 @@ aaa
aaa
aaa
aaa
+aaa
+aaf
+aaa
abo
abO
abO
@@ -86130,26 +85178,23 @@ abO
abO
abO
abO
-abO
-abO
-abO
afb
abo
afg
ahb
ahG
aik
-SWq
+cBV
ajf
ajK
-DHO
-Qcw
-IPJ
-ajc
-XwE
-alC
-CJg
-Jcy
+aks
+akY
+alx
+amp
+aiX
+anA
+anz
+aoC
aod
aqe
arf
@@ -86161,12 +85206,12 @@ awo
arf
asd
aAb
-rAZ
-crS
-JAr
-rAZ
-evS
-ahn
+arf
+asd
+aDK
+arf
+arf
+arf
aJv
aKG
aMg
@@ -86380,15 +85425,15 @@ aaa
aaa
aaa
aaa
+aaa
+aaf
+aaa
abp
abO
-abO
-wZF
-wZF
-wZF
-wZF
-wZF
-abO
+acq
+acq
+acq
+acq
aew
afe
afS
@@ -86397,17 +85442,17 @@ aha
ahC
aia
aiP
-YNF
-XSH
-MxR
+aiR
+ajB
+akv
+ala
+akz
+alf
aiX
-uzg
-USL
-uFV
-uFV
-Nmb
-Nau
-efg
+anA
+anz
+aoF
+apo
aqh
arh
asg
@@ -86421,8 +85466,8 @@ atj
aAX
azc
atj
-Hig
-oux
+aFe
+aul
aHT
aJy
aJy
@@ -86637,17 +85682,17 @@ aaa
aaa
aaa
aaf
+aaf
+aaf
+aaf
abo
abO
-abO
-abO
-abO
acp
acP
acP
acP
aev
-YjW
+afd
afR
agx
agZ
@@ -86656,14 +85701,14 @@ aim
adR
aiG
ajL
-RWl
+aku
+akZ
+alE
+amq
aiX
-WMt
-qZT
-vml
-PJW
-TZk
-XRe
+anA
+anz
+aoE
aod
aqg
aun
@@ -86678,7 +85723,7 @@ azT
auk
auk
aDG
-zxh
+aFd
auk
aHH
aJg
@@ -86894,15 +85939,15 @@ aaa
aaa
aaa
aaa
+aaa
+aaa
+aaf
abp
-aco
-EXC
-rax
-fYm
-rax
-rax
-rax
-abl
+abR
+abP
+abP
+abP
+abP
abp
abp
abp
@@ -86912,15 +85957,15 @@ ahF
aip
adR
aiX
-nCJ
+ajN
akx
aiX
aiX
aiX
aiX
-sfv
-WRc
-sfv
+anC
+anU
+anC
cSA
aqe
arf
@@ -86935,7 +85980,7 @@ azV
aAh
aAh
aFg
-gKP
+aFh
aAh
aAh
aAh
@@ -87151,9 +86196,9 @@ aaa
aaa
aaf
aaf
-abp
-abp
-abp
+aaf
+aaf
+aaf
abq
abq
abq
@@ -87168,10 +86213,10 @@ ahb
ahF
clI
abp
-MRu
+ajh
ajM
akw
-WQm
+alb
alG
amr
amY
@@ -87192,7 +86237,7 @@ aAd
aAh
aCm
aDL
-iyF
+aFf
aGk
aHU
aJz
@@ -87423,7 +86468,7 @@ afV
agB
ahd
ahI
-XMB
+clS
abp
ajj
ajP
@@ -87449,7 +86494,7 @@ aAg
aAh
aDO
aDQ
-vGV
+aFi
aGl
aBy
aBy
@@ -87670,7 +86715,7 @@ aaf
aaf
abr
abS
-qVv
+acr
acQ
adn
adM
@@ -87933,7 +86978,7 @@ adp
adP
aey
afj
-BSi
+afX
agC
ahf
ahK
@@ -88970,7 +88015,7 @@ abp
ajp
ajU
ajn
-ajn
+trb
ajn
amr
ajp
@@ -89218,7 +88263,7 @@ aaf
abo
aeA
afl
-zft
+aga
abp
ahj
abp
@@ -89981,8 +89026,8 @@ aaf
aag
aag
aag
-poo
-poo
+aaa
+aaa
aag
abp
abp
@@ -101566,8 +100611,8 @@ aaf
aaf
aaf
aaf
-alP
-ybU
+aaf
+aaf
alP
anf
alP
@@ -101823,8 +100868,8 @@ aaa
aaa
aaa
aaa
-alP
-alP
+aaa
+aaf
alP
anf
alP
diff --git a/_maps/map_files/Deltastation/DeltaStation2.dmm b/_maps/map_files/Deltastation/DeltaStation2.dmm
index e22386b9f8..8d5467fbe5 100644
--- a/_maps/map_files/Deltastation/DeltaStation2.dmm
+++ b/_maps/map_files/Deltastation/DeltaStation2.dmm
@@ -15401,9 +15401,7 @@
},
/obj/effect/decal/cleanable/dirt,
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/obj/machinery/airlock_sensor{
- id_tag = "incinerator_airlock_sensor";
- master_tag = "incinerator_airlock_control";
+/obj/machinery/airlock_sensor/incinerator_atmos{
pixel_y = 24
},
/turf/open/floor/engine,
@@ -15960,10 +15958,7 @@
},
/area/security/execution/education)
"aNO" = (
-/obj/machinery/door/poddoor{
- id = "turbinevent";
- name = "Turbine Vent"
- },
+/obj/machinery/door/poddoor/incinerator_atmos_main,
/turf/open/floor/engine/vacuum,
/area/maintenance/disposal/incinerator)
"aNP" = (
@@ -15997,9 +15992,7 @@
/turf/open/floor/engine/vacuum,
/area/maintenance/disposal/incinerator)
"aNR" = (
-/obj/machinery/igniter{
- id = "Incinerator"
- },
+/obj/machinery/igniter/incinerator_atmos,
/obj/structure/cable{
icon_state = "4-8"
},
@@ -16011,14 +16004,7 @@
/area/maintenance/disposal/incinerator)
"aNS" = (
/obj/effect/mapping_helpers/airlock/locked,
-/obj/machinery/door/airlock/public/glass{
- autoclose = 0;
- frequency = 1449;
- heat_proof = 1;
- id_tag = "incinerator_airlock_exterior";
- name = "Incinerator Exterior Airlock";
- req_access_txt = "12"
- },
+/obj/machinery/door/airlock/public/glass/incinerator/atmos_exterior,
/obj/structure/cable{
icon_state = "4-8"
},
@@ -16033,23 +16019,14 @@
icon_state = "4-8"
},
/obj/effect/decal/cleanable/dirt,
-/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume{
- dir = 2;
- frequency = 1449;
- id = "incinerator_airlock_pump"
+/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume/incinerator_atmos{
+ dir = 2
},
/turf/open/floor/engine,
/area/maintenance/disposal/incinerator)
"aNU" = (
/obj/effect/mapping_helpers/airlock/locked,
-/obj/machinery/door/airlock/public/glass{
- autoclose = 0;
- frequency = 1449;
- heat_proof = 1;
- id_tag = "incinerator_airlock_interior";
- name = "Incinerator Interior Airlock";
- req_access_txt = "12"
- },
+/obj/machinery/door/airlock/public/glass/incinerator/atmos_interior,
/obj/structure/cable{
icon_state = "4-8"
},
@@ -16057,16 +16034,8 @@
/obj/effect/mapping_helpers/airlock/cyclelink_helper{
dir = 8
},
-/obj/machinery/embedded_controller/radio/airlock_controller{
- airpump_tag = "incinerator_airlock_pump";
- exterior_door_tag = "incinerator_airlock_exterior";
- id_tag = "incinerator_airlock_control";
- interior_door_tag = "incinerator_airlock_interior";
- name = "Incinerator Access Console";
- pixel_y = 27;
- req_access_txt = "12";
- sanitize_external = 1;
- sensor_tag = "incinerator_airlock_sensor"
+/obj/machinery/embedded_controller/radio/airlock_controller/incinerator_atmos{
+ pixel_y = 27
},
/turf/open/floor/engine,
/area/maintenance/disposal/incinerator)
@@ -16735,24 +16704,17 @@
/turf/open/floor/engine,
/area/maintenance/disposal/incinerator)
"aPA" = (
-/obj/machinery/button/ignition{
- id = "Incinerator";
+/obj/machinery/button/ignition/incinerator/atmos{
pixel_x = 8;
pixel_y = -36
},
-/obj/machinery/button/door{
- id = "turbinevent";
- name = "Turbine Vent Control";
+/obj/machinery/button/door/incinerator_vent_atmos_main{
pixel_x = -8;
- pixel_y = -36;
- req_access_txt = "12"
+ pixel_y = -36
},
-/obj/machinery/button/door{
- id = "auxincineratorvent";
- name = "Auxiliary Vent Control";
+/obj/machinery/button/door/incinerator_vent_atmos_aux{
pixel_x = -8;
- pixel_y = -24;
- req_access_txt = "12"
+ pixel_y = -24
},
/obj/machinery/computer/turbine_computer{
dir = 1;
@@ -17622,10 +17584,7 @@
/turf/open/floor/plating/airless,
/area/maintenance/disposal/incinerator)
"aRo" = (
-/obj/machinery/door/poddoor{
- id = "auxincineratorvent";
- name = "Incineration Chamber Vent"
- },
+/obj/machinery/door/poddoor/incinerator_atmos_aux,
/turf/open/floor/engine/vacuum,
/area/maintenance/disposal/incinerator)
"aRp" = (
@@ -72556,7 +72515,7 @@
/obj/item/pen,
/obj/machinery/door/window/southleft{
name = "Research Lab Desk";
- req_access_txt = "7"
+ req_one_access_txt = "7;29"
},
/obj/machinery/door/poddoor/shutters/preopen{
id = "rndlab1";
@@ -76089,7 +76048,7 @@
/obj/machinery/door/window/southleft{
dir = 4;
name = "Research Lab Desk";
- req_access_txt = "7"
+ req_one_access_txt = "7;29"
},
/obj/machinery/door/window/westleft,
/obj/effect/turf_decal/delivery,
@@ -76754,7 +76713,7 @@
/obj/machinery/door/window/southleft{
dir = 8;
name = "Research Lab Desk";
- req_access_txt = "7"
+ req_one_access_txt = "7;29"
},
/obj/machinery/door/poddoor/shutters/preopen{
id = "rndlab2";
@@ -82923,7 +82882,6 @@
/obj/machinery/atmospherics/components/unary/portables_connector/visible{
dir = 4
},
-/obj/structure/window/spawner/north,
/obj/effect/turf_decal/stripes/line{
dir = 5
},
@@ -83693,6 +83651,9 @@
/obj/effect/turf_decal/stripes/line{
dir = 4
},
+/obj/machinery/portable_atmospherics/pump{
+ name = "Lil Pump"
+ },
/turf/open/floor/plasteel,
/area/science/mixing)
"dxQ" = (
@@ -84469,7 +84430,6 @@
dir = 4
},
/obj/machinery/portable_atmospherics/canister,
-/obj/structure/window/spawner,
/obj/effect/turf_decal/stripes/line{
dir = 6
},
@@ -84989,7 +84949,6 @@
/obj/effect/turf_decal/stripes/line{
dir = 10
},
-/obj/structure/window/spawner,
/turf/open/floor/plasteel,
/area/science/mixing)
"dAD" = (
@@ -85787,6 +85746,9 @@
/obj/effect/turf_decal/stripes/line{
dir = 5
},
+/obj/item/radio/intercom{
+ pixel_x = -26
+ },
/turf/open/floor/plasteel,
/area/science/mixing)
"dCb" = (
@@ -86384,7 +86346,6 @@
/obj/effect/turf_decal/stripes/line{
dir = 9
},
-/obj/structure/window/spawner/north,
/turf/open/floor/plasteel,
/area/science/mixing)
"dDt" = (
@@ -86891,6 +86852,7 @@
/obj/structure/sign/poster/official/science{
pixel_x = 32
},
+/obj/machinery/portable_atmospherics/scrubber,
/turf/open/floor/plasteel,
/area/science/mixing)
"dEv" = (
@@ -87473,6 +87435,7 @@
/obj/effect/turf_decal/stripes/line{
dir = 8
},
+/obj/machinery/portable_atmospherics/pump,
/turf/open/floor/plasteel,
/area/science/mixing)
"dFM" = (
@@ -92690,12 +92653,6 @@
},
/turf/open/floor/plating,
/area/maintenance/port/aft)
-"dQF" = (
-/obj/machinery/droneDispenser,
-/obj/effect/decal/cleanable/dirt,
-/obj/effect/turf_decal/bot,
-/turf/open/floor/plasteel,
-/area/maintenance/port/aft)
"dQG" = (
/obj/structure/table,
/obj/effect/decal/cleanable/dirt,
@@ -99679,14 +99636,7 @@
},
/area/science/mixing)
"fpQ" = (
-/obj/machinery/door/airlock/research/glass{
- autoclose = 0;
- frequency = 1449;
- heat_proof = 1;
- id_tag = "tox_airlock_interior";
- name = "Mixing Room Interior Airlock";
- req_access_txt = "8"
- },
+/obj/machinery/door/airlock/research/glass/incinerator/toxmix_interior,
/obj/effect/mapping_helpers/airlock/locked,
/turf/open/floor/engine,
/area/science/mixing)
@@ -99714,9 +99664,7 @@
/obj/machinery/atmospherics/components/binary/pump/on{
dir = 1
},
-/obj/machinery/airlock_sensor{
- id_tag = "tox_airlock_sensor";
- master_tag = "tox_airlock_control";
+/obj/machinery/airlock_sensor/incinerator_toxmix{
pixel_x = -24
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
@@ -99951,17 +99899,13 @@
/obj/effect/turf_decal/stripes/line{
dir = 4
},
-/obj/machinery/button/ignition{
- id = "herrington_memorial_toxigniter";
+/obj/machinery/button/ignition/incinerator/toxmix{
pixel_x = -6;
pixel_y = 30
},
-/obj/machinery/button/door{
- id = "mixvent";
+/obj/machinery/button/door/incinerator_vent_toxmix{
pixel_x = 8;
- pixel_y = 30;
- req_one_access = null;
- req_one_access_txt = "8"
+ pixel_y = 30
},
/obj/effect/decal/cleanable/dirt,
/obj/machinery/camera{
@@ -100048,7 +99992,7 @@
/obj/machinery/autolathe,
/obj/machinery/door/window/southleft{
name = "Research Lab Desk";
- req_access_txt = "7"
+ req_one_access_txt = "7;29"
},
/obj/machinery/door/firedoor,
/obj/machinery/door/poddoor/shutters/preopen{
@@ -100066,10 +100010,8 @@
},
/area/science/mixing)
"lyU" = (
-/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume{
- dir = 8;
- frequency = 1449;
- id = "tox_airlock_pump"
+/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume/incinerator_toxmix{
+ dir = 8
},
/turf/open/floor/engine,
/area/science/mixing)
@@ -100144,14 +100086,8 @@
/area/science/circuit)
"mkm" = (
/obj/machinery/atmospherics/components/binary/valve,
-/obj/machinery/embedded_controller/radio/airlock_controller{
- airpump_tag = "tox_airlock_pump";
- exterior_door_tag = "tox_airlock_exterior";
- id_tag = "tox_airlock_control";
- interior_door_tag = "tox_airlock_interior";
- pixel_y = 26;
- sanitize_external = 1;
- sensor_tag = "tox_airlock_sensor"
+/obj/machinery/embedded_controller/radio/airlock_controller/incinerator_toxmix{
+ pixel_y = 26
},
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/plasteel/vault{
@@ -100207,15 +100143,7 @@
},
/area/science/mixing)
"oIE" = (
-/obj/machinery/door/airlock/research/glass{
- autoclose = 0;
- frequency = 1449;
- heat_proof = 1;
- id_tag = "tox_airlock_exterior";
- name = "Mixing Room Exterior Airlock";
- req_one_access = "8";
- req_one_access_txt = "0"
- },
+/obj/machinery/door/airlock/research/glass/incinerator/toxmix_exterior,
/obj/effect/mapping_helpers/airlock/locked,
/turf/open/floor/engine,
/area/science/mixing)
@@ -100255,9 +100183,7 @@
},
/area/science/research)
"oYI" = (
-/obj/machinery/igniter{
- id = "herrington_memorial_toxigniter"
- },
+/obj/machinery/igniter/incinerator_toxmix,
/turf/open/floor/engine/vacuum,
/area/science/mixing)
"oZC" = (
@@ -100360,9 +100286,7 @@
/turf/open/floor/engine/vacuum,
/area/science/mixing)
"svv" = (
-/obj/machinery/door/poddoor{
- id = "mixvent"
- },
+/obj/machinery/door/poddoor/incinerator_toxmix,
/turf/open/floor/engine/vacuum,
/area/science/mixing)
"tmi" = (
@@ -134175,7 +134099,7 @@ dNC
dNC
dOT
dPM
-dQF
+dOb
dRE
dSC
dTA
diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm
index f2b63a49f3..912cc6743b 100644
--- a/_maps/map_files/MetaStation/MetaStation.dmm
+++ b/_maps/map_files/MetaStation/MetaStation.dmm
@@ -1,4 +1,4 @@
-//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"aaa" = (
/turf/open/space/basic,
/area/space)
@@ -897,6 +897,14 @@
},
/turf/open/floor/plasteel/floorgrime,
/area/security/prison)
+"acx" = (
+/obj/machinery/airalarm{
+ dir = 8;
+ pixel_x = 24
+ },
+/obj/machinery/cryopod,
+/turf/open/floor/plasteel/floorgrime,
+/area/security/prison)
"acy" = (
/obj/machinery/door/airlock/external{
name = "Escape Pod Two"
@@ -1042,6 +1050,15 @@
/obj/machinery/light,
/turf/open/floor/plasteel/floorgrime,
/area/security/prison)
+"acM" = (
+/obj/structure/table,
+/obj/item/paper_bin{
+ pixel_x = -3;
+ pixel_y = 7
+ },
+/obj/item/pen,
+/turf/open/floor/plasteel/floorgrime,
+/area/security/prison)
"acN" = (
/obj/structure/table/glass,
/obj/item/reagent_containers/syringe,
@@ -3622,25 +3639,6 @@
icon_state = "platingdmg1"
},
/area/maintenance/fore)
-"ahU" = (
-/obj/effect/decal/cleanable/cobweb/cobweb2,
-/obj/structure/table,
-/obj/item/stock_parts/manipulator,
-/obj/effect/spawner/lootdrop/maintenance,
-/turf/open/floor/plating,
-/area/maintenance/fore)
-"ahV" = (
-/obj/structure/cable/yellow{
- icon_state = "1-2"
- },
-/obj/machinery/firealarm{
- dir = 8;
- pixel_x = -24
- },
-/turf/open/floor/plasteel/neutral/corner{
- dir = 1
- },
-/area/crew_quarters/fitness/recreation)
"ahW" = (
/obj/structure/window/reinforced{
dir = 1
@@ -4057,22 +4055,6 @@
},
/turf/open/floor/plating,
/area/maintenance/fore)
-"aiP" = (
-/obj/structure/table,
-/obj/item/folder,
-/turf/open/floor/plating,
-/area/maintenance/fore)
-"aiQ" = (
-/obj/structure/cable/yellow{
- icon_state = "1-2"
- },
-/obj/structure/extinguisher_cabinet{
- pixel_x = -27
- },
-/turf/open/floor/plasteel/neutral/corner{
- dir = 1
- },
-/area/crew_quarters/fitness/recreation)
"aiR" = (
/obj/structure/table,
/obj/item/clothing/under/sl_suit{
@@ -4476,7 +4458,9 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
},
-/turf/open/floor/plasteel,
+/turf/open/floor/plasteel/neutral/corner{
+ dir = 8
+ },
/area/crew_quarters/fitness/recreation)
"ajS" = (
/obj/structure/table,
@@ -5121,10 +5105,6 @@
},
/turf/open/floor/plating,
/area/maintenance/fore)
-"alf" = (
-/obj/structure/closet/firecloset,
-/turf/open/floor/plasteel/dark,
-/area/crew_quarters/fitness/recreation)
"alg" = (
/obj/structure/cable/yellow{
icon_state = "1-2"
@@ -5828,10 +5808,6 @@
},
/turf/open/floor/plating,
/area/maintenance/fore)
-"amv" = (
-/obj/structure/closet/emcloset,
-/turf/open/floor/plasteel/vault,
-/area/crew_quarters/fitness/recreation)
"amw" = (
/obj/structure/window/reinforced,
/obj/machinery/door/window/eastright{
@@ -6013,6 +5989,11 @@
},
/turf/open/floor/plating,
/area/maintenance/port/fore)
+"amU" = (
+/turf/open/floor/plating{
+ icon_state = "platingdmg2"
+ },
+/area/maintenance/port)
"amW" = (
/obj/structure/table/reinforced,
/obj/item/folder,
@@ -7774,9 +7755,7 @@
/turf/open/floor/plating,
/area/maintenance/port/fore)
"aqR" = (
-/obj/structure/chair{
- dir = 8
- },
+/obj/machinery/vending/kink,
/turf/open/floor/plating{
icon_state = "panelscorched"
},
@@ -21724,11 +21703,23 @@
"aUM" = (
/turf/closed/wall,
/area/crew_quarters/locker)
+"aUN" = (
+/obj/structure/closet/wardrobe/black,
+/turf/open/floor/plasteel/vault,
+/area/crew_quarters/locker)
+"aUO" = (
+/obj/structure/closet/wardrobe/grey,
+/turf/open/floor/plasteel/vault,
+/area/crew_quarters/locker)
+"aUP" = (
+/obj/structure/closet/wardrobe/white,
+/turf/open/floor/plasteel/vault,
+/area/crew_quarters/locker)
"aUQ" = (
/turf/open/floor/plasteel/vault,
/area/crew_quarters/locker)
"aUR" = (
-/obj/structure/closet/wardrobe/green,
+/obj/machinery/vending/kink,
/turf/open/floor/plasteel/vault,
/area/crew_quarters/locker)
"aUS" = (
@@ -25533,6 +25524,12 @@
dir = 4
},
/area/security/checkpoint/engineering)
+"bcO" = (
+/obj/machinery/vending/kink,
+/turf/open/floor/plating{
+ icon_state = "platingdmg3"
+ },
+/area/maintenance/starboard/fore)
"bcP" = (
/obj/machinery/light{
dir = 8
@@ -51612,7 +51609,7 @@
/obj/machinery/door/window/eastright{
dir = 2;
name = "Research and Development Desk";
- req_access_txt = "7"
+ req_one_access_txt = "7;29"
},
/obj/machinery/door/poddoor/shutters/preopen{
id = "research_shutters";
@@ -52935,29 +52932,14 @@
/area/maintenance/disposal/incinerator)
"cja" = (
/obj/effect/mapping_helpers/airlock/locked,
-/obj/machinery/door/airlock/public/glass{
- autoclose = 0;
- frequency = 1449;
- heat_proof = 1;
- id_tag = "incinerator_airlock_interior";
- name = "Incinerator Interior Airlock";
- req_access_txt = "12"
- },
+/obj/machinery/door/airlock/public/glass/incinerator/atmos_interior,
/obj/structure/cable{
icon_state = "1-2"
},
/obj/effect/mapping_helpers/airlock/cyclelink_helper,
-/obj/machinery/embedded_controller/radio/airlock_controller{
- airpump_tag = "incinerator_airlock_pump";
- exterior_door_tag = "incinerator_airlock_exterior";
- id_tag = "incinerator_airlock_control";
- interior_door_tag = "incinerator_airlock_interior";
- name = "Incinerator Access Console";
+/obj/machinery/embedded_controller/radio/airlock_controller/incinerator_atmos{
pixel_x = 40;
- pixel_y = 8;
- req_access_txt = "12";
- sanitize_external = 1;
- sensor_tag = "incinerator_airlock_sensor"
+ pixel_y = 8
},
/turf/open/floor/engine,
/area/maintenance/disposal/incinerator)
@@ -53665,9 +53647,7 @@
/obj/machinery/atmospherics/components/binary/pump/on{
dir = 1
},
-/obj/machinery/airlock_sensor{
- id_tag = "incinerator_airlock_sensor";
- master_tag = "incinerator_airlock_control";
+/obj/machinery/airlock_sensor/incinerator_atmos{
pixel_x = -8;
pixel_y = 24
},
@@ -53680,10 +53660,8 @@
/obj/structure/cable{
icon_state = "1-2"
},
-/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume{
- dir = 8;
- frequency = 1449;
- id = "incinerator_airlock_pump"
+/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume/incinerator_atmos{
+ dir = 8
},
/turf/open/floor/engine,
/area/maintenance/disposal/incinerator)
@@ -54314,8 +54292,7 @@
/turf/open/floor/plating,
/area/maintenance/starboard/aft)
"cmb" = (
-/obj/machinery/chem_master/condimaster{
- name = "CondiMaster Neo";
+/obj/machinery/chem_master{
pixel_x = -4
},
/turf/open/floor/plating,
@@ -54328,14 +54305,7 @@
/area/space/nearstation)
"cmd" = (
/obj/effect/mapping_helpers/airlock/locked,
-/obj/machinery/door/airlock/public/glass{
- autoclose = 0;
- frequency = 1449;
- heat_proof = 1;
- id_tag = "incinerator_airlock_exterior";
- name = "Incinerator Exterior Airlock";
- req_access_txt = "12"
- },
+/obj/machinery/door/airlock/public/glass/incinerator/atmos_exterior,
/obj/structure/cable{
icon_state = "1-2"
},
@@ -54795,9 +54765,7 @@
/turf/open/floor/engine/vacuum,
/area/maintenance/disposal/incinerator)
"cne" = (
-/obj/machinery/igniter{
- id = "Incinerator"
- },
+/obj/machinery/igniter/incinerator_atmos,
/obj/structure/cable{
icon_state = "1-2"
},
@@ -54817,10 +54785,7 @@
/turf/open/floor/engine/vacuum,
/area/maintenance/disposal/incinerator)
"cng" = (
-/obj/machinery/door/poddoor{
- id = "auxincineratorvent";
- name = "Incineration Chamber Vent"
- },
+/obj/machinery/door/poddoor/incinerator_atmos_aux,
/turf/open/floor/engine/vacuum,
/area/maintenance/disposal/incinerator)
"cnh" = (
@@ -55792,7 +55757,7 @@
/obj/machinery/door/window/eastright{
dir = 4;
name = "Research and Development Desk";
- req_access_txt = "7"
+ req_one_access_txt = "7;29"
},
/obj/item/folder/white{
pixel_x = 4;
@@ -56632,7 +56597,7 @@
/obj/machinery/door/window/eastleft{
dir = 1;
name = "Research and Development Deliveries";
- req_access_txt = "7"
+ req_one_access_txt = "7;29"
},
/obj/structure/window/reinforced{
dir = 8
@@ -56905,10 +56870,7 @@
/turf/closed/wall/r_wall,
/area/maintenance/disposal/incinerator)
"crf" = (
-/obj/machinery/door/poddoor{
- id = "turbinevent";
- name = "Turbine Vent"
- },
+/obj/machinery/door/poddoor/incinerator_atmos_main,
/turf/open/floor/engine/vacuum,
/area/maintenance/disposal/incinerator)
"crg" = (
@@ -58034,10 +57996,7 @@
/turf/open/floor/plating,
/area/maintenance/port/aft)
"cto" = (
-/obj/machinery/vending/assist,
-/obj/effect/turf_decal/stripes/line{
- dir = 1
- },
+/obj/machinery/vending/kink,
/turf/open/floor/plating,
/area/maintenance/port/aft)
"ctq" = (
@@ -63419,10 +63378,7 @@
/turf/open/space,
/area/science/mixing)
"cEr" = (
-/obj/machinery/door/poddoor{
- id = "mixvent";
- name = "Mixer Room Vent"
- },
+/obj/machinery/door/poddoor/incinerator_toxmix,
/turf/open/floor/engine/vacuum,
/area/science/mixing)
"cEs" = (
@@ -63432,9 +63388,8 @@
/turf/open/floor/engine/vacuum,
/area/science/mixing)
"cEt" = (
-/obj/machinery/sparker{
+/obj/machinery/sparker/toxmix{
dir = 2;
- id = "mixingsparker";
pixel_x = 25
},
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/atmos/toxins_mixing_output{
@@ -63449,9 +63404,7 @@
/turf/closed/wall/r_wall,
/area/science/mixing)
"cEv" = (
-/obj/machinery/airlock_sensor{
- id_tag = "tox_airlock_sensor";
- master_tag = "tox_airlock_control";
+/obj/machinery/airlock_sensor/incinerator_toxmix{
pixel_y = 24
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
@@ -63465,14 +63418,8 @@
dir = 4
},
/obj/machinery/meter,
-/obj/machinery/embedded_controller/radio/airlock_controller{
- airpump_tag = "tox_airlock_pump";
- exterior_door_tag = "tox_airlock_exterior";
- id_tag = "tox_airlock_control";
- interior_door_tag = "tox_airlock_interior";
- pixel_x = -24;
- sanitize_external = 1;
- sensor_tag = "tox_airlock_sensor"
+/obj/machinery/embedded_controller/radio/airlock_controller/incinerator_toxmix{
+ pixel_x = -24
},
/obj/effect/turf_decal/stripes/corner{
dir = 1
@@ -63864,35 +63811,19 @@
/area/science/mixing)
"cFo" = (
/obj/effect/mapping_helpers/airlock/locked,
-/obj/machinery/door/airlock/research/glass{
- autoclose = 0;
- frequency = 1449;
- heat_proof = 1;
- id_tag = "tox_airlock_exterior";
- name = "Mixing Room Exterior Airlock";
- req_access_txt = "8"
- },
+/obj/machinery/door/airlock/research/glass/incinerator/toxmix_exterior,
/turf/open/floor/engine,
/area/science/mixing)
"cFp" = (
-/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume{
- dir = 2;
- frequency = 1449;
- id = "tox_airlock_pump"
+/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume/incinerator_toxmix{
+ dir = 2
},
/obj/effect/landmark/blobstart,
/turf/open/floor/engine,
/area/science/mixing)
"cFq" = (
/obj/effect/mapping_helpers/airlock/locked,
-/obj/machinery/door/airlock/research/glass{
- autoclose = 0;
- frequency = 1449;
- heat_proof = 1;
- id_tag = "tox_airlock_interior";
- name = "Mixing Room Interior Airlock";
- req_access_txt = "8"
- },
+/obj/machinery/door/airlock/research/glass/incinerator/toxmix_interior,
/turf/open/floor/engine,
/area/science/mixing)
"cFr" = (
@@ -64316,9 +64247,8 @@
},
/area/science/research)
"cGj" = (
-/obj/machinery/sparker{
+/obj/machinery/sparker/toxmix{
dir = 2;
- id = "mixingsparker";
pixel_x = 25
},
/obj/machinery/atmospherics/components/unary/outlet_injector/atmos/toxins_mixing_input{
@@ -64341,15 +64271,11 @@
dir = 4
},
/obj/machinery/meter,
-/obj/machinery/button/door{
- id = "mixvent";
- name = "Mixing Room Vent Control";
+/obj/machinery/button/door/incinerator_vent_toxmix{
pixel_x = -25;
- pixel_y = 5;
- req_access_txt = "7"
+ pixel_y = 5
},
-/obj/machinery/button/ignition{
- id = "mixingsparker";
+/obj/machinery/button/ignition/incinerator/toxmix{
pixel_x = -25;
pixel_y = -5
},
@@ -67097,8 +67023,7 @@
/turf/open/floor/plating,
/area/maintenance/aft)
"cLC" = (
-/obj/machinery/button/ignition{
- id = "Incinerator";
+/obj/machinery/button/ignition/incinerator/atmos{
pixel_x = 8;
pixel_y = -36
},
@@ -67109,20 +67034,14 @@
network = list("turbine");
pixel_x = 29
},
-/obj/machinery/button/door{
- id = "turbinevent";
- name = "Turbine Vent Control";
+/obj/machinery/button/door/incinerator_vent_atmos_main{
pixel_x = -8;
- pixel_y = -36;
- req_access_txt = "12"
+ pixel_y = -36
},
/obj/machinery/atmospherics/pipe/simple/general/visible,
-/obj/machinery/button/door{
- id = "auxincineratorvent";
- name = "Auxiliary Vent Control";
+/obj/machinery/button/door/incinerator_vent_atmos_aux{
pixel_x = -8;
- pixel_y = -24;
- req_access_txt = "12"
+ pixel_y = -24
},
/obj/machinery/computer/turbine_computer{
dir = 1;
@@ -70756,6 +70675,13 @@
/obj/structure/disposalpipe/segment,
/turf/closed/wall/r_wall,
/area/science/xenobiology)
+"cUd" = (
+/obj/machinery/cryopod{
+ dir = 4;
+ tag = "0"
+ },
+/turf/open/floor/plasteel/dark,
+/area/crew_quarters/fitness/recreation)
"cUH" = (
/obj/structure/table/optable,
/turf/open/floor/plasteel/white,
@@ -71412,6 +71338,10 @@
/obj/structure/easel,
/turf/open/floor/plating,
/area/maintenance/port)
+"dbl" = (
+/obj/structure/easel,
+/turf/open/floor/plating,
+/area/maintenance/starboard/aft)
"dbm" = (
/obj/effect/landmark/event_spawn,
/turf/open/floor/plasteel,
@@ -73623,19 +73553,12 @@
/turf/open/floor/plating,
/area/maintenance/port/fore)
"dhp" = (
-/obj/machinery/light{
- dir = 8
- },
/obj/structure/cable/yellow{
icon_state = "1-2"
},
-/obj/machinery/atmospherics/pipe/simple/supply/hidden{
- dir = 6
+/turf/open/floor/plasteel/neutral/corner{
+ dir = 8
},
-/obj/structure/sign/poster/official/random{
- pixel_x = -32
- },
-/turf/open/floor/plasteel,
/area/crew_quarters/fitness/recreation)
"dhq" = (
/obj/structure/table/reinforced,
@@ -76007,6 +75930,10 @@
},
/turf/open/floor/plating,
/area/maintenance/starboard)
+"dWa" = (
+/obj/machinery/computer/cryopod,
+/turf/closed/wall,
+/area/security/prison)
"dYu" = (
/obj/machinery/door/airlock/external{
name = "Auxiliary Airlock"
@@ -76175,6 +76102,13 @@
},
/turf/closed/wall/r_wall,
/area/maintenance/disposal/incinerator)
+"hdw" = (
+/obj/machinery/cryopod{
+ dir = 4;
+ tag = "0"
+ },
+/turf/open/floor/plasteel/vault,
+/area/crew_quarters/fitness/recreation)
"hfJ" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
@@ -76191,14 +76125,6 @@
},
/turf/open/floor/plating,
/area/security/prison)
-"hAJ" = (
-/obj/machinery/airalarm{
- dir = 8;
- pixel_x = 24
- },
-/obj/machinery/cryopod,
-/turf/open/floor/plasteel/floorgrime,
-/area/security/prison)
"ioI" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
@@ -76217,7 +76143,7 @@
/obj/machinery/door/window/eastright{
dir = 2;
name = "Research and Development Desk";
- req_access_txt = "7"
+ req_one_access_txt = "7;29"
},
/obj/machinery/door/firedoor,
/obj/machinery/door/poddoor/shutters/preopen{
@@ -76447,10 +76373,15 @@
},
/turf/open/floor/plasteel/white,
/area/science/circuit)
-"mEW" = (
-/obj/machinery/vending/kink,
-/turf/open/floor/plasteel/vault,
-/area/crew_quarters/locker)
+"mSt" = (
+/obj/machinery/firealarm{
+ dir = 8;
+ pixel_x = -24
+ },
+/turf/open/floor/plasteel/neutral/corner{
+ dir = 1
+ },
+/area/crew_quarters/fitness/recreation)
"nnK" = (
/obj/item/stack/sheet/glass/fifty,
/obj/item/paper_bin,
@@ -76711,12 +76642,10 @@
},
/turf/open/floor/wood,
/area/library)
-"rhY" = (
-/obj/machinery/vending/kink,
-/turf/open/floor/plating{
- icon_state = "platingdmg2"
- },
-/area/maintenance/port)
+"rzf" = (
+/obj/machinery/computer/cryopod,
+/turf/closed/wall,
+/area/crew_quarters/fitness/recreation)
"rzX" = (
/obj/structure/chair/office/light{
dir = 1;
@@ -76930,15 +76859,6 @@
},
/turf/open/floor/plasteel,
/area/science/misc_lab)
-"vlg" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
- },
-/obj/effect/turf_decal/tile/green/side,
-/turf/open/floor/plasteel/neutral/corner{
- dir = 2
- },
-/area/crew_quarters/locker)
"vlx" = (
/obj/machinery/vr_sleeper,
/turf/open/floor/plasteel/neutral/corner{
@@ -76994,7 +76914,6 @@
/turf/closed/wall,
/area/science/circuit)
"wOE" = (
-/obj/machinery/droneDispenser,
/turf/open/floor/plating,
/area/maintenance/aft)
"wPk" = (
@@ -77083,79 +77002,6 @@
/obj/machinery/light,
/turf/open/floor/plasteel/white,
/area/science/circuit)
-"AIY" = (
-/obj/machinery/computer/cryopod{
- pixel_y = -24
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 1
- },
-/obj/effect/turf_decal/box/white/corners,
-/obj/effect/turf_decal/box/white/corners{
- dir = 8
- },
-/turf/open/floor/plasteel/vault,
-/area/crew_quarters/locker)
-"FiY" = (
-/obj/machinery/vending/kink,
-/turf/open/floor/plating{
- icon_state = "platingdmg3"
- },
-/area/maintenance/starboard/fore)
-"KHe" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
- },
-/obj/effect/turf_decal/tile/green/corner{
- dir = 1
- },
-/turf/open/floor/plasteel/neutral/corner{
- dir = 2
- },
-/area/crew_quarters/locker)
-"RbF" = (
-/obj/machinery/vending/kink,
-/obj/machinery/vending/kink,
-/turf/open/floor/plating,
-/area/maintenance/starboard/aft)
-"SuJ" = (
-/obj/machinery/cryopod,
-/obj/effect/turf_decal/stripes/line{
- dir = 5
- },
-/turf/open/floor/plasteel/vault,
-/area/crew_quarters/locker)
-"WoM" = (
-/obj/machinery/cryopod{
- dir = 4
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 1
- },
-/turf/open/floor/plasteel/vault,
-/area/crew_quarters/locker)
-"Xvm" = (
-/obj/structure/table,
-/obj/item/paper_bin{
- pixel_x = -3;
- pixel_y = 7
- },
-/obj/item/pen,
-/obj/machinery/computer/cryopod{
- pixel_x = 30;
- pixel_y = 6
- },
-/turf/open/floor/plasteel/floorgrime,
-/area/security/prison)
-"XMx" = (
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
- },
-/obj/effect/turf_decal/tile/green/corner,
-/turf/open/floor/plasteel/neutral/corner{
- dir = 2
- },
-/area/crew_quarters/locker)
(1,1,1) = {"
aaa
@@ -95026,7 +94872,7 @@ bHQ
bvW
bLg
bLf
-rhY
+amU
bPL
alK
bOf
@@ -101641,8 +101487,8 @@ aay
abs
abK
ace
-hAJ
-Xvm
+acx
+acM
abe
ady
adT
@@ -101899,7 +101745,7 @@ aax
aax
aax
aax
-abe
+dWa
abe
abe
abe
@@ -110487,7 +110333,7 @@ cGl
cHg
cIh
dAh
-RbF
+dbl
dyc
dxQ
dvY
@@ -110675,8 +110521,8 @@ aOx
aPJ
aQT
aOu
-XMx
-WoM
+aTt
+aUN
aUM
aYc
aTC
@@ -110932,8 +110778,8 @@ aOy
aOt
aQU
aSg
-vlg
-AIY
+aTt
+aUO
aUM
boW
aZt
@@ -111189,8 +111035,8 @@ aOz
aOu
aQV
aOv
-KHe
-SuJ
+aTt
+aUP
aUM
dCD
aZt
@@ -111673,8 +111519,8 @@ acQ
afs
agr
acP
-ahU
-aiP
+acP
+acP
acP
acP
acP
@@ -111930,12 +111776,12 @@ acP
acP
ags
acP
-acP
-acP
-acP
-alf
-amv
-acP
+hdw
+cUd
+cUd
+cUd
+cUd
+rzf
aoS
acP
arB
@@ -112186,9 +112032,9 @@ aaa
acQ
aft
agt
+mSt
+ahf
ahf
-ahV
-aiQ
dhp
alg
alg
@@ -112447,7 +112293,7 @@ ahg
ahg
ahg
ajR
-ahg
+ahl
ahg
anG
aoU
@@ -112475,7 +112321,7 @@ aPL
aQZ
aSh
aTA
-mEW
+aUT
aUM
aYh
aCM
@@ -118361,7 +118207,7 @@ aaf
aaf
ack
dni
-FiY
+bcO
dnS
dnS
dnS
diff --git a/_maps/map_files/OmegaStation/OmegaStation.dmm b/_maps/map_files/OmegaStation/OmegaStation.dmm
index 783b752b39..437cd5491e 100644
--- a/_maps/map_files/OmegaStation/OmegaStation.dmm
+++ b/_maps/map_files/OmegaStation/OmegaStation.dmm
@@ -1,4 +1,4 @@
-//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"aaa" = (
/turf/open/space/basic,
/area/space)
@@ -7629,7 +7629,6 @@
},
/area/teleporter)
"aoJ" = (
-/obj/machinery/droneDispenser,
/obj/effect/turf_decal/stripes/line{
dir = 10
},
@@ -14629,6 +14628,18 @@
dir = 5
},
/area/crew_quarters/dorms)
+"aEL" = (
+/obj/item/twohanded/required/kirbyplants{
+ icon_state = "plant-21"
+ },
+/obj/machinery/status_display{
+ pixel_y = -32
+ },
+/obj/effect/turf_decal/bot,
+/turf/open/floor/plasteel/vault{
+ dir = 5
+ },
+/area/crew_quarters/dorms)
"aEM" = (
/obj/structure/closet/crate/bin,
/obj/effect/turf_decal/bot,
@@ -20523,7 +20534,7 @@
/obj/item/pen,
/obj/machinery/door/window/southleft{
name = "Research Lab Desk";
- req_access_txt = "7"
+ req_one_access_txt = "7;29"
},
/obj/machinery/door/poddoor/shutters/preopen{
id = "rndlab1";
@@ -21476,7 +21487,7 @@
/obj/machinery/door/window/southleft{
dir = 4;
name = "Research Lab Desk";
- req_access_txt = "7"
+ req_one_access_txt = "7;29"
},
/obj/machinery/door/poddoor/shutters/preopen{
id = "rndlab1";
@@ -35974,16 +35985,6 @@
dir = 5
},
/area/engine/atmos)
-"ZwS" = (
-/obj/machinery/status_display{
- pixel_y = -32
- },
-/obj/effect/turf_decal/bot,
-/obj/machinery/vending/kink,
-/turf/open/floor/plasteel/vault{
- dir = 5
- },
-/area/crew_quarters/dorms)
(1,1,1) = {"
aaa
@@ -72590,7 +72591,7 @@ aAF
aBO
aCN
aDD
-ZwS
+aEL
awQ
aGz
aGM
diff --git a/_maps/map_files/PubbyStation/PubbyStation.dmm b/_maps/map_files/PubbyStation/PubbyStation.dmm
index 27a5b55895..e0de739f99 100644
--- a/_maps/map_files/PubbyStation/PubbyStation.dmm
+++ b/_maps/map_files/PubbyStation/PubbyStation.dmm
@@ -1,4 +1,4 @@
-//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"aaa" = (
/turf/open/space/basic,
/area/space)
@@ -3054,6 +3054,10 @@
},
/turf/open/space,
/area/space/nearstation)
+"ajB" = (
+/obj/item/storage/box/mousetraps,
+/turf/open/floor/plating,
+/area/maintenance/department/security/brig)
"ajC" = (
/obj/structure/chair/stool,
/turf/open/floor/plating,
@@ -3448,6 +3452,10 @@
},
/turf/open/floor/plating,
/area/maintenance/department/security/brig)
+"aks" = (
+/obj/machinery/light/small,
+/turf/open/floor/plating,
+/area/maintenance/department/security/brig)
"akt" = (
/obj/structure/bed,
/obj/item/bedsheet,
@@ -7805,6 +7813,7 @@
dir = 4;
pixel_x = 28
},
+/obj/machinery/cryopod,
/turf/open/floor/plasteel,
/area/crew_quarters/dorms)
"avm" = (
@@ -10349,6 +10358,14 @@
},
/turf/open/floor/plasteel,
/area/hallway/primary/central)
+"aBK" = (
+/obj/structure/table,
+/obj/machinery/light{
+ dir = 4
+ },
+/obj/item/crowbar,
+/turf/open/floor/plasteel,
+/area/hallway/primary/central)
"aBL" = (
/obj/effect/spawner/structure/window/reinforced,
/obj/machinery/door/poddoor/shutters/preopen{
@@ -10422,12 +10439,16 @@
/obj/machinery/atmospherics/components/unary/vent_pump/on,
/turf/open/floor/plasteel,
/area/crew_quarters/dorms)
+"aBT" = (
+/obj/structure/closet/wardrobe/white,
+/turf/open/floor/plasteel/arrival,
+/area/crew_quarters/fitness/recreation)
"aBU" = (
/obj/structure/closet/wardrobe/mixed,
/turf/open/floor/plasteel/arrival,
/area/crew_quarters/fitness/recreation)
"aBV" = (
-/obj/structure/closet/wardrobe/green,
+/obj/machinery/vending/kink,
/turf/open/floor/plasteel/arrival,
/area/crew_quarters/fitness/recreation)
"aBW" = (
@@ -11017,6 +11038,7 @@
/turf/open/floor/plasteel/white/side,
/area/crew_quarters/dorms)
"aDk" = (
+/obj/machinery/cryopod,
/turf/open/floor/plasteel/white/corner{
icon_state = "whitecorner";
dir = 8
@@ -12047,6 +12069,14 @@
/obj/machinery/vending/snack,
/turf/open/floor/plasteel,
/area/hallway/primary/central)
+"aFD" = (
+/obj/structure/table,
+/obj/machinery/light{
+ dir = 4
+ },
+/obj/item/taperecorder,
+/turf/open/floor/plasteel,
+/area/hallway/primary/central)
"aFE" = (
/obj/structure/cable{
icon_state = "1-2"
@@ -12420,6 +12450,13 @@
/obj/machinery/vending/cigarette,
/turf/open/floor/plasteel,
/area/hallway/primary/central)
+"aGA" = (
+/obj/structure/cable{
+ icon_state = "1-2"
+ },
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/turf/open/floor/plating,
+/area/storage/emergency/starboard)
"aGB" = (
/obj/machinery/space_heater,
/turf/open/floor/plating,
@@ -21172,10 +21209,6 @@
icon_state = "platingdmg3"
},
/area/maintenance/department/cargo)
-"bdA" = (
-/obj/machinery/droneDispenser,
-/turf/open/floor/plating,
-/area/maintenance/department/cargo)
"bdB" = (
/obj/structure/cable{
icon_state = "1-4"
@@ -25732,7 +25765,7 @@
/obj/machinery/door/window/eastright{
dir = 2;
name = "Research and Development Desk";
- req_access_txt = "7"
+ req_one_access_txt = "7;29"
},
/obj/machinery/door/poddoor/shutters/preopen{
id = "research_shutters_2";
@@ -31482,8 +31515,8 @@
/obj/structure/cable{
icon_state = "4-8"
},
-/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
- dir = 4
+/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{
+ dir = 1
},
/turf/open/floor/plasteel/white,
/area/science/mixing)
@@ -32064,9 +32097,6 @@
dir = 4
},
/area/science/explab)
-"bFg" = (
-/turf/open/floor/plasteel/white,
-/area/science/mixing)
"bFh" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber/on{
dir = 1
@@ -32501,6 +32531,9 @@
/area/science/mixing)
"bGn" = (
/obj/machinery/vending/wardrobe/science_wardrobe,
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
+ dir = 5
+ },
/turf/open/floor/plasteel/whitepurple/side,
/area/science/mixing)
"bGo" = (
@@ -32520,6 +32553,9 @@
pixel_y = -2
},
/obj/structure/table/reinforced,
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
+ dir = 4
+ },
/turf/open/floor/plasteel/whitepurple/side,
/area/science/mixing)
"bGp" = (
@@ -32544,6 +32580,9 @@
network = list("ss13","rd")
},
/obj/machinery/light,
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
+ dir = 4
+ },
/turf/open/floor/plasteel/whitepurple/side,
/area/science/mixing)
"bGq" = (
@@ -32561,16 +32600,25 @@
},
/obj/item/assembly/timer,
/obj/structure/table/reinforced,
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
+ dir = 4
+ },
/turf/open/floor/plasteel/whitepurple/side,
/area/science/mixing)
"bGr" = (
/obj/structure/tank_dispenser,
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
+ dir = 4
+ },
/turf/open/floor/plasteel/whitepurple/side,
/area/science/mixing)
"bGs" = (
/obj/effect/turf_decal/stripes/line{
dir = 4
},
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
+ dir = 10
+ },
/turf/open/floor/plasteel/whitepurple/side,
/area/science/mixing)
"bGt" = (
@@ -33023,12 +33071,8 @@
/area/science/mixing)
"bHz" = (
/obj/machinery/atmospherics/components/binary/valve,
-/obj/machinery/button/door{
- id = "toxvent";
- name = "Aft Vent Control";
- pixel_y = -24;
- req_access_txt = "0";
- req_one_access_txt = "8;24"
+/obj/machinery/button/door/incinerator_vent_toxmix{
+ pixel_y = -24
},
/obj/effect/turf_decal/stripes/line{
dir = 8
@@ -33044,14 +33088,9 @@
pixel_x = -6;
pixel_y = -24
},
-/obj/machinery/doorButtons/airlock_controller{
- idExterior = "tox_airlock_exterior";
- idInterior = "tox_airlock_interior";
- idSelf = "tox_access_control";
- name = "Mixing Chamber Access Console";
+/obj/machinery/embedded_controller/radio/airlock_controller/incinerator_toxmix{
pixel_x = 6;
- pixel_y = -26;
- req_access_txt = "0"
+ pixel_y = -26
},
/obj/effect/turf_decal/stripes/line{
dir = 4
@@ -33068,9 +33107,15 @@
dir = 2;
name = "Incinerator Output Pump"
},
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
/turf/open/floor/plasteel,
/area/science/mixing)
"bHD" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
/turf/open/floor/plasteel/purple/side,
/area/science/mixing)
"bHE" = (
@@ -33081,6 +33126,9 @@
/obj/effect/turf_decal/bot{
dir = 2
},
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 9
+ },
/turf/open/floor/plasteel/purple/side,
/area/science/mixing)
"bHI" = (
@@ -33115,6 +33163,10 @@
},
/turf/open/space/basic,
/area/space/nearstation)
+"bHP" = (
+/obj/effect/decal/cleanable/cobweb,
+/turf/open/floor/plasteel/dark,
+/area/maintenance/department/engine)
"bHQ" = (
/turf/open/floor/plasteel/dark,
/area/maintenance/department/engine)
@@ -33515,15 +33567,7 @@
/area/science/mixing)
"bIL" = (
/obj/effect/mapping_helpers/airlock/locked,
-/obj/machinery/door/airlock/public/glass{
- autoclose = 0;
- frequency = 1449;
- heat_proof = 1;
- id_tag = "tox_airlock_interior";
- name = "Interior Airlock";
- req_access_txt = "8";
- req_one_access_txt = "0"
- },
+/obj/machinery/door/airlock/research/glass/incinerator/toxmix_interior,
/obj/effect/mapping_helpers/airlock/cyclelink_helper,
/turf/open/floor/engine,
/area/science/mixing)
@@ -33954,36 +33998,33 @@
/obj/machinery/atmospherics/components/binary/pump/on{
dir = 2
},
-/obj/machinery/doorButtons/access_button{
- idDoor = "tox_airlock_exterior";
- idSelf = "tox_access_control";
- layer = 3.1;
- name = "airlock control";
- pixel_x = 8;
- pixel_y = -24
- },
/obj/machinery/light/small{
dir = 8
},
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
+ dir = 4
+ },
+/obj/machinery/airlock_sensor/incinerator_toxmix{
+ pixel_x = -24
+ },
/turf/open/floor/engine,
/area/science/mixing)
"bJR" = (
+/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume/incinerator_toxmix{
+ dir = 8
+ },
/turf/open/floor/engine,
/area/science/mixing)
"bJS" = (
/obj/machinery/atmospherics/components/binary/pump{
dir = 1
},
-/obj/machinery/doorButtons/access_button{
- idDoor = "tox_airlock_interior";
- idSelf = "tox_access_control";
- name = "airlock control";
- pixel_x = -8;
- pixel_y = 24
- },
/obj/machinery/light/small{
dir = 4
},
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 4
+ },
/turf/open/floor/engine,
/area/science/mixing)
"bJT" = (
@@ -34467,15 +34508,7 @@
/area/engine/atmos)
"bLf" = (
/obj/effect/mapping_helpers/airlock/locked,
-/obj/machinery/door/airlock/public/glass{
- autoclose = 0;
- frequency = 1449;
- heat_proof = 1;
- id_tag = "tox_airlock_exterior";
- name = "Exterior Airlock";
- req_access_txt = "8";
- req_one_access_txt = "0"
- },
+/obj/machinery/door/airlock/research/glass/incinerator/toxmix_exterior,
/obj/effect/mapping_helpers/airlock/cyclelink_helper{
dir = 1
},
@@ -35680,10 +35713,7 @@
/turf/closed/wall/r_wall,
/area/science/mixing)
"bOt" = (
-/obj/machinery/door/poddoor{
- id = "toxvent";
- name = "Aft Vent"
- },
+/obj/machinery/door/poddoor/incinerator_toxmix,
/turf/open/floor/engine/vacuum,
/area/science/mixing)
"bOu" = (
@@ -40308,19 +40338,13 @@
dir = 8;
id = "incineratorturbine"
},
-/obj/machinery/button/door{
- id = "turbinevent";
- name = "Outtake Vent Control";
+/obj/machinery/button/door/incinerator_vent_atmos_main{
pixel_x = 24;
- pixel_y = 6;
- req_one_access_txt = "8;24"
+ pixel_y = 6
},
-/obj/machinery/button/door{
- id = "mixvent";
- name = "Intake Vent Control";
+/obj/machinery/button/door/incinerator_vent_atmos_aux{
pixel_x = 24;
- pixel_y = -6;
- req_one_access_txt = "8;24"
+ pixel_y = -6
},
/turf/open/floor/plasteel/darkyellow/side{
dir = 4
@@ -40340,6 +40364,9 @@
dir = 1
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/obj/machinery/airlock_sensor/incinerator_atmos{
+ pixel_y = 22
+ },
/turf/open/floor/engine,
/area/maintenance/disposal/incinerator)
"bZT" = (
@@ -40607,24 +40634,10 @@
icon_state = "4-8"
},
/obj/effect/mapping_helpers/airlock/locked,
-/obj/machinery/door/airlock/public/glass{
- autoclose = 0;
- frequency = 1449;
- heat_proof = 1;
- id_tag = "incinerator_airlock_interior";
- name = "Turbine Interior Airlock";
- req_access_txt = "24"
- },
-/obj/machinery/embedded_controller/radio/airlock_controller{
- airpump_tag = "incinerator_airlock_pump";
- exterior_door_tag = "incinerator_airlock_exterior";
- id_tag = "incinerator_airlock_control";
- interior_door_tag = "incinerator_airlock_interior";
- name = "Incinerator Access Console";
+/obj/machinery/door/airlock/public/glass/incinerator/atmos_interior,
+/obj/machinery/embedded_controller/radio/airlock_controller/incinerator_atmos{
pixel_x = -6;
- pixel_y = -26;
- sanitize_external = 1;
- sensor_tag = "incinerator_airlock_sensor"
+ pixel_y = -26
},
/turf/open/floor/engine,
/area/maintenance/disposal/incinerator)
@@ -40632,10 +40645,8 @@
/obj/structure/cable/yellow{
icon_state = "4-8"
},
-/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume{
- dir = 2;
- frequency = 1449;
- id = "incinerator_airlock_pump"
+/obj/machinery/atmospherics/components/binary/dp_vent_pump/high_volume/incinerator_atmos{
+ dir = 2
},
/turf/open/floor/engine,
/area/maintenance/disposal/incinerator)
@@ -40644,23 +40655,14 @@
icon_state = "4-8"
},
/obj/effect/mapping_helpers/airlock/locked,
-/obj/machinery/door/airlock/public/glass{
- autoclose = 0;
- frequency = 1449;
- heat_proof = 1;
- id_tag = "incinerator_airlock_exterior";
- name = "Turbine Exterior Airlock";
- req_access_txt = "24"
- },
+/obj/machinery/door/airlock/public/glass/incinerator/atmos_exterior,
/turf/open/floor/engine,
/area/maintenance/disposal/incinerator)
"caO" = (
/obj/structure/cable/yellow{
icon_state = "4-8"
},
-/obj/machinery/igniter{
- id = "Incinerator"
- },
+/obj/machinery/igniter/incinerator_atmos,
/obj/machinery/air_sensor/atmos/incinerator_tank{
pixel_x = 32;
pixel_y = -32
@@ -40697,10 +40699,7 @@
/turf/open/floor/engine,
/area/maintenance/disposal/incinerator)
"caR" = (
-/obj/machinery/door/poddoor{
- id = "turbinevent";
- name = "Outtake Vent"
- },
+/obj/machinery/door/poddoor/incinerator_atmos_main,
/turf/open/floor/engine/vacuum,
/area/maintenance/disposal/incinerator)
"caS" = (
@@ -40920,8 +40919,7 @@
/turf/open/floor/plasteel/dark,
/area/maintenance/disposal/incinerator)
"cbC" = (
-/obj/machinery/button/ignition{
- id = "Incinerator";
+/obj/machinery/button/ignition/incinerator/atmos{
pixel_x = 26;
pixel_y = -6
},
@@ -40945,12 +40943,6 @@
},
/obj/machinery/light/small,
/obj/machinery/atmospherics/pipe/simple/general/hidden,
-/obj/machinery/airlock_sensor{
- id_tag = "incinerator_airlock_sensor";
- master_tag = "incinerator_airlock_control";
- pixel_x = -26;
- pixel_y = 8
- },
/turf/open/floor/engine,
/area/maintenance/disposal/incinerator)
"cbF" = (
@@ -41194,10 +41186,7 @@
},
/area/maintenance/disposal/incinerator)
"ccs" = (
-/obj/machinery/door/poddoor{
- id = "mixvent";
- name = "Intake Vent"
- },
+/obj/machinery/door/poddoor/incinerator_atmos_aux,
/turf/open/floor/engine/vacuum,
/area/maintenance/disposal/incinerator)
"ccu" = (
@@ -43077,6 +43066,19 @@
},
/turf/open/floor/plasteel/dark,
/area/chapel/main/monastery)
+"cjO" = (
+/obj/effect/decal/cleanable/cobweb{
+ icon_state = "cobweb2"
+ },
+/obj/item/stack/sheet/glass/fifty{
+ layer = 4
+ },
+/obj/item/stack/sheet/metal{
+ amount = 20;
+ layer = 3.1
+ },
+/turf/open/floor/plating,
+/area/maintenance/department/chapel/monastery)
"cjP" = (
/obj/item/twohanded/required/kirbyplants{
icon_state = "plant-22"
@@ -46986,10 +46988,7 @@
/turf/open/floor/plasteel/dark,
/area/library)
"cBk" = (
-/obj/machinery/vending/boozeomat{
- products = list(/obj/item/reagent_containers/food/drinks/bottle/whiskey = 1, /obj/item/reagent_containers/food/drinks/bottle/absinthe = 1, /obj/item/reagent_containers/food/drinks/bottle/limejuice = 1, /obj/item/reagent_containers/food/drinks/bottle/cream = 1, /obj/item/reagent_containers/food/drinks/soda_cans/tonic = 1, /obj/item/reagent_containers/food/drinks/drinkingglass = 10, /obj/item/reagent_containers/food/drinks/ice = 3, /obj/item/reagent_containers/food/drinks/drinkingglass/shotglass = 6, /obj/item/reagent_containers/food/drinks/flask = 1);
- req_access_txt = "0"
- },
+/obj/machinery/vending/boozeomat/maint,
/turf/closed/wall,
/area/maintenance/department/crew_quarters/dorms)
"cBl" = (
@@ -47905,7 +47904,6 @@
/obj/structure/cable{
icon_state = "1-2"
},
-/obj/machinery/atmospherics/pipe/simple/general/hidden,
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plating,
/area/maintenance/department/cargo)
@@ -48014,16 +48012,6 @@
},
/turf/open/floor/plating,
/area/engine/engineering)
-"eWf" = (
-/obj/machinery/light{
- dir = 4
- },
-/obj/machinery/cryopod,
-/obj/machinery/computer/cryopod{
- pixel_y = 24
- },
-/turf/open/floor/plasteel/dark,
-/area/hallway/primary/central)
"eWi" = (
/obj/structure/reagent_dispensers/fueltank,
/turf/open/floor/plasteel/dark,
@@ -49447,6 +49435,10 @@
},
/turf/closed/wall/r_wall,
/area/engine/engineering)
+"jqN" = (
+/obj/effect/spawner/lootdrop/keg,
+/turf/open/floor/wood,
+/area/maintenance/department/crew_quarters/dorms)
"jrG" = (
/obj/effect/turf_decal/stripes/corner{
dir = 1
@@ -49729,6 +49721,12 @@
icon_state = "platingdmg3"
},
/area/maintenance/department/engine)
+"kfh" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 9
+ },
+/turf/closed/wall/r_wall,
+/area/science/mixing)
"kfM" = (
/obj/structure/closet,
/obj/machinery/light/small{
@@ -49793,6 +49791,10 @@
/obj/item/clothing/under/rank/clown/sexy,
/turf/open/floor/plasteel/dark,
/area/maintenance/department/crew_quarters/dorms)
+"kmn" = (
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/turf/open/floor/plasteel/white,
+/area/science/mixing)
"knw" = (
/obj/structure/cable{
icon_state = "1-2"
@@ -49835,9 +49837,6 @@
dir = 9
},
/area/chapel/office)
-"kwI" = (
-/turf/open/floor/plasteel,
-/area/science/mixing)
"kxj" = (
/obj/structure/chair/office/dark{
dir = 1
@@ -50732,6 +50731,12 @@
/obj/item/stack/spacecash/c10,
/turf/open/floor/plasteel/dark,
/area/maintenance/department/crew_quarters/dorms)
+"noM" = (
+/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
+ dir = 1
+ },
+/turf/open/floor/plasteel,
+/area/science/mixing)
"npE" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plating,
@@ -50769,6 +50774,12 @@
},
/turf/open/floor/plasteel,
/area/construction/mining/aux_base)
+"nsD" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden{
+ dir = 6
+ },
+/turf/closed/wall/r_wall,
+/area/science/mixing)
"ntj" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
@@ -50991,11 +51002,6 @@
/obj/structure/disposalpipe/segment,
/turf/open/floor/wood,
/area/lawoffice)
-"nSH" = (
-/obj/effect/decal/cleanable/cobweb,
-/obj/machinery/vending/kink,
-/turf/open/floor/plasteel/dark,
-/area/maintenance/department/engine)
"nVU" = (
/obj/item/twohanded/spear,
/turf/open/floor/plating,
@@ -51957,15 +51963,6 @@
},
/turf/open/floor/plating,
/area/crew_quarters/heads/chief)
-"qHi" = (
-/obj/structure/table,
-/obj/machinery/light{
- dir = 4
- },
-/obj/item/crowbar,
-/obj/item/taperecorder,
-/turf/open/floor/plasteel,
-/area/hallway/primary/central)
"qHI" = (
/obj/structure/disposalpipe/segment{
dir = 9
@@ -52329,6 +52326,11 @@
"rHA" = (
/turf/open/floor/plasteel,
/area/construction/mining/aux_base)
+"rHP" = (
+/obj/structure/lattice,
+/obj/structure/reagent_dispensers/keg/aphro/strong,
+/turf/open/space,
+/area/space/nearstation)
"rJg" = (
/obj/machinery/atmospherics/pipe/simple/cyan/hidden,
/obj/machinery/light/small{
@@ -52354,7 +52356,7 @@
width = 9
},
/turf/open/floor/plating,
-/area/shuttle/auxillary_base)
+/area/construction/mining/aux_base)
"rKr" = (
/obj/structure/cable{
icon_state = "4-8"
@@ -52407,6 +52409,10 @@
},
/turf/open/floor/plating/airless,
/area/engine/engineering)
+"rPW" = (
+/obj/machinery/atmospherics/pipe/simple/supply/hidden,
+/turf/closed/wall/r_wall,
+/area/science/mixing)
"rSH" = (
/obj/item/trash/can,
/turf/open/floor/wood,
@@ -52449,7 +52455,7 @@
/turf/open/floor/plating,
/area/engine/engineering)
"sbk" = (
-/obj/structure/girder,
+/obj/machinery/vending/kink,
/turf/open/floor/plating,
/area/maintenance/department/crew_quarters/dorms)
"sbY" = (
@@ -53020,6 +53026,10 @@
},
/turf/open/floor/plating/airless,
/area/engine/engineering)
+"ubW" = (
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
+/turf/closed/wall/r_wall,
+/area/science/mixing)
"uek" = (
/obj/structure/rack,
/obj/effect/spawner/lootdrop/maintenance{
@@ -53135,7 +53145,7 @@
/area/construction/mining/aux_base)
"uoS" = (
/turf/open/floor/plating,
-/area/shuttle/auxillary_base)
+/area/construction/mining/aux_base)
"uqJ" = (
/obj/effect/spawner/structure/window/reinforced,
/obj/structure/cable,
@@ -54302,6 +54312,12 @@
},
/turf/open/floor/plasteel/dark/telecomms,
/area/tcommsat/server)
+"xIx" = (
+/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
+ dir = 5
+ },
+/turf/closed/wall/r_wall,
+/area/science/mixing)
"xJy" = (
/obj/structure/chair/comfy/black,
/obj/structure/sign/plaques/atmos{
@@ -54404,6 +54420,10 @@
},
/turf/open/floor/plasteel,
/area/science/xenobiology)
+"yap" = (
+/obj/machinery/computer/cryopod,
+/turf/closed/wall,
+/area/crew_quarters/dorms)
"ybX" = (
/obj/structure/table,
/obj/effect/spawner/lootdrop/maintenance,
@@ -54452,65 +54472,6 @@
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plasteel/dark,
/area/engine/engineering)
-"yzM" = (
-/obj/machinery/light/small,
-/obj/item/storage/box/mousetraps,
-/turf/open/floor/plating,
-/area/maintenance/department/security/brig)
-"Drm" = (
-/obj/effect/turf_decal/stripes/corner,
-/turf/open/floor/plasteel/green/corner,
-/area/hallway/primary/central)
-"EjC" = (
-/obj/machinery/cryopod,
-/turf/open/floor/plasteel/dark,
-/area/hallway/primary/central)
-"JAb" = (
-/obj/structure/cable{
- icon_state = "1-2"
- },
-/obj/machinery/atmospherics/pipe/simple/supply/hidden,
-/obj/item/taperecorder,
-/turf/open/floor/plating,
-/area/storage/emergency/starboard)
-"KhG" = (
-/obj/machinery/vending/kink,
-/turf/open/floor/plating,
-/area/maintenance/department/security/brig)
-"QYc" = (
-/obj/machinery/vending/kink,
-/obj/effect/decal/cleanable/cobweb{
- icon_state = "cobweb2"
- },
-/turf/open/floor/plating,
-/area/maintenance/department/chapel/monastery)
-"RST" = (
-/obj/effect/turf_decal/stripes/line{
- dir = 4
- },
-/turf/open/floor/plasteel/green/side{
- dir = 4
- },
-/area/hallway/primary/central)
-"Xmf" = (
-/obj/item/stack/sheet/metal{
- amount = 20;
- layer = 3.1
- },
-/obj/item/stack/sheet/glass/fifty{
- layer = 4
- },
-/turf/open/floor/plating,
-/area/maintenance/department/chapel/monastery)
-"YSB" = (
-/obj/machinery/vending/kink,
-/turf/closed/wall,
-/area/storage/emergency/starboard)
-"Zud" = (
-/obj/machinery/vending/kink,
-/obj/machinery/vending/kink,
-/turf/open/floor/plasteel/arrival,
-/area/crew_quarters/fitness/recreation)
(1,1,1) = {"
aaa
@@ -70775,7 +70736,7 @@ aaa
aaa
ait
aiV
-KhG
+ajB
akr
aiu
ait
@@ -71149,7 +71110,7 @@ cvw
cvI
ckQ
clf
-Xmf
+cwA
cwA
cwS
cjm
@@ -71290,7 +71251,7 @@ aaa
aiu
aiX
ajD
-yzM
+aks
aiu
ait
ait
@@ -71405,7 +71366,7 @@ cgG
cfn
ciR
cwa
-QYc
+cjO
ckk
ckC
ckR
@@ -75731,7 +75692,7 @@ bDg
bEj
bFF
bva
-nSH
+bHP
bJb
bJb
bJb
@@ -88728,7 +88689,7 @@ aaa
aaa
aaa
aby
-abI
+rHP
abO
abX
acg
@@ -90583,12 +90544,12 @@ awd
abI
awd
aAM
-qHi
+aBK
aDa
aEb
-Drm
-RST
-RST
+aAM
+aFD
+aDa
aAN
aIf
aJe
@@ -90844,8 +90805,8 @@ awd
awd
aAN
aAN
-eWf
-EjC
+awd
+awd
aAN
aIg
aJf
@@ -91100,10 +91061,10 @@ aaa
aaa
aaa
aaa
-aAN
-aAN
-aAN
-aAN
+aaa
+aaa
+aaa
+awd
aHN
aIU
aJI
@@ -91381,7 +91342,7 @@ aPY
bau
aLf
aFi
-bdA
+aFi
beI
beI
bgD
@@ -91591,7 +91552,7 @@ cBo
alQ
alb
cBw
-alb
+jqN
aiS
aiS
aiS
@@ -92387,7 +92348,7 @@ aDd
apX
aEU
aFE
-JAb
+aGA
aHn
aIi
aJi
@@ -92901,7 +92862,7 @@ com
apX
aET
lKL
-YSB
+aET
aET
aHN
aIU
@@ -94688,7 +94649,7 @@ aaa
aaa
apX
apX
-apX
+yap
avl
fIu
dbi
@@ -95003,7 +94964,7 @@ bAF
bBK
bCW
bDV
-bFg
+bFh
bGm
bHy
aaa
@@ -95209,7 +95170,7 @@ axw
ayu
azC
axw
-Zud
+aBT
atn
aEf
aFc
@@ -95260,7 +95221,7 @@ bAF
bBL
bCW
bDW
-bFh
+kmn
bGn
bHy
aaa
@@ -96547,9 +96508,9 @@ bDa
bEa
bFm
bGs
-bHy
-bHy
-bHy
+ubW
+ubW
+xIx
bHy
bHy
bHy
@@ -97575,9 +97536,9 @@ bHy
bHy
bHy
bGw
-bHy
-bHy
-bHy
+nsD
+rPW
+kfh
bHy
bHy
bHy
@@ -97832,7 +97793,7 @@ bwm
glf
bFr
qtA
-kwI
+khk
bIN
dAF
bCV
@@ -98602,7 +98563,7 @@ nev
hgD
bEf
bFu
-khk
+noM
bHE
bJV
bLh
diff --git a/_maps/map_files/generic/CentCom.dmm b/_maps/map_files/generic/CentCom.dmm
index 0f9857ad73..9a03ede62b 100644
--- a/_maps/map_files/generic/CentCom.dmm
+++ b/_maps/map_files/generic/CentCom.dmm
@@ -2162,6 +2162,9 @@
/obj/structure/kitchenspike,
/turf/open/floor/plasteel/dark,
/area/ctf)
+"gu" = (
+/turf/closed/indestructible/splashscreen,
+/area/start)
"gv" = (
/turf/open/floor/plasteel/darkblue/side{
dir = 10
@@ -5699,6 +5702,10 @@
},
/turf/open/floor/plasteel/cafeteria,
/area/centcom/holding)
+"pW" = (
+/obj/effect/landmark/ai_multicam_room,
+/turf/open/ai_visible,
+/area/ai_multicam_room)
"pX" = (
/obj/item/storage/crayons,
/obj/structure/table,
@@ -10234,6 +10241,9 @@
dir = 8
},
/area/centcom/evac)
+"Di" = (
+/turf/closed/indestructible/riveted,
+/area/ai_multicam_room)
"Dj" = (
/obj/machinery/vr_sleeper{
dir = 8
@@ -13476,9 +13486,6 @@
},
/turf/open/floor/wood,
/area/centcom/holding)
-"NE" = (
-/turf/closed/indestructible/splashscreen,
-/area/space)
"NF" = (
/obj/structure/ladder/unbreakable/binary,
/turf/open/indestructible/airblock,
@@ -13624,6 +13631,9 @@
"PY" = (
/turf/open/floor/plasteel/whitegreen,
/area/centcom/holding)
+"Qe" = (
+/turf/open/ai_visible,
+/area/ai_multicam_room)
"Qk" = (
/obj/structure/flora/ausbushes/fullgrass,
/obj/structure/flora/ausbushes/ppflowers,
@@ -13946,9 +13956,6 @@
},
/turf/open/floor/plasteel,
/area/centcom/evac)
-"Wd" = (
-/turf/open/space/basic,
-/area/start)
"WJ" = (
/obj/machinery/door/airlock/centcom{
name = "Thunderdome Administration";
@@ -14257,21 +14264,21 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-NE
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+gu
aa
aa
aa
@@ -14514,21 +14521,21 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
aa
aa
aa
@@ -14771,21 +14778,21 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
+fX
aa
aa
aa
@@ -15042,7 +15049,7 @@ fX
fX
fX
fX
-Wd
+fX
aa
aa
aa
@@ -16063,7 +16070,7 @@ fX
fX
fX
fX
-fX
+fY
fX
fX
fX
@@ -16834,7 +16841,7 @@ fX
fX
fX
fX
-fY
+fX
fX
fX
fX
@@ -18112,21 +18119,21 @@ aa
aa
aa
aa
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
aa
aa
aa
@@ -18369,21 +18376,21 @@ aa
aa
aa
aa
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
aa
aa
aa
@@ -18626,21 +18633,21 @@ aa
aa
aa
aa
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
aa
aa
aa
@@ -18883,21 +18890,21 @@ aa
aa
aa
aa
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
aa
aa
aa
@@ -19140,21 +19147,21 @@ aa
aa
aa
aa
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
aa
aa
aa
@@ -19397,21 +19404,21 @@ aa
aa
aa
aa
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
-fX
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
+aa
aa
aa
aa
@@ -30581,29 +30588,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
aa
aa
aa
@@ -30838,29 +30845,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -31095,29 +31102,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -31352,29 +31359,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -31609,29 +31616,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -31866,29 +31873,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -32123,29 +32130,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -32380,29 +32387,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -32637,29 +32644,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -32894,29 +32901,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -33151,29 +33158,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -33408,29 +33415,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+pW
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -33665,29 +33672,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -33922,29 +33929,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -34179,29 +34186,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -34436,29 +34443,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -34693,29 +34700,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -34950,29 +34957,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -35207,29 +35214,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -35464,29 +35471,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -35721,29 +35728,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -35978,29 +35985,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Qe
+Di
aa
aa
aa
@@ -36235,29 +36242,29 @@ aa
aa
aa
aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
-aa
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
+Di
aa
aa
aa
diff --git a/_maps/shuttles/aux_base_default.dmm b/_maps/shuttles/aux_base_default.dmm
index d35420ebb0..e093d3c864 100644
--- a/_maps/shuttles/aux_base_default.dmm
+++ b/_maps/shuttles/aux_base_default.dmm
@@ -1,4 +1,4 @@
-//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"b" = (
/obj/effect/turf_decal/stripes/line{
dir = 8
@@ -44,10 +44,6 @@
/obj/effect/turf_decal/stripes/line,
/turf/open/floor/plating,
/area/shuttle/auxillary_base)
-"y" = (
-/obj/effect/turf_decal/stripes/line,
-/turf/open/floor/plating,
-/area/shuttle/auxillary_base)
"z" = (
/obj/machinery/light{
dir = 8
@@ -82,7 +78,6 @@
/area/shuttle/auxillary_base)
"X" = (
/obj/machinery/camera{
- c_tag = "Auxillary Mining Base";
dir = 1
},
/obj/structure/mining_shuttle_beacon,
@@ -142,7 +137,7 @@ P
k
k
k
-y
+x
"}
(6,1,1) = {"
v
diff --git a/_maps/shuttles/aux_base_small.dmm b/_maps/shuttles/aux_base_small.dmm
new file mode 100644
index 0000000000..b29512d675
--- /dev/null
+++ b/_maps/shuttles/aux_base_small.dmm
@@ -0,0 +1,149 @@
+//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
+"b" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 9
+ },
+/obj/structure/ore_box,
+/turf/open/floor/plating,
+/area/shuttle/auxillary_base)
+"c" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 1
+ },
+/turf/open/floor/plating,
+/area/shuttle/auxillary_base)
+"d" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 5
+ },
+/turf/open/floor/plating,
+/area/shuttle/auxillary_base)
+"e" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/turf/open/floor/plating,
+/area/shuttle/auxillary_base)
+"f" = (
+/turf/open/floor/plating,
+/area/shuttle/auxillary_base)
+"g" = (
+/obj/effect/turf_decal/stripes/line{
+ dir = 4
+ },
+/turf/open/floor/plating,
+/area/shuttle/auxillary_base)
+"h" = (
+/obj/machinery/camera{
+ dir = 1
+ },
+/obj/structure/mining_shuttle_beacon,
+/turf/open/floor/plating,
+/area/shuttle/auxillary_base)
+"i" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/turf/open/floor/plating,
+/area/shuttle/auxillary_base)
+"j" = (
+/obj/docking_port/mobile/auxillary_base{
+ dheight = 4;
+ dir = 2;
+ dwidth = 4;
+ height = 9;
+ width = 9;
+ timid = 1
+ },
+/obj/machinery/bluespace_beacon,
+/obj/machinery/computer/auxillary_base,
+/turf/closed/wall,
+/area/shuttle/auxillary_base)
+"k" = (
+/obj/machinery/light{
+ dir = 8
+ },
+/turf/open/floor/plating,
+/area/shuttle/auxillary_base)
+"l" = (
+/obj/machinery/portable_atmospherics/canister/air,
+/obj/effect/turf_decal/stripes/line{
+ dir = 10
+ },
+/turf/open/floor/plating,
+/area/shuttle/auxillary_base)
+"m" = (
+/obj/effect/turf_decal/stripes/line,
+/turf/open/floor/plating,
+/area/shuttle/auxillary_base)
+"n" = (
+/obj/structure/closet/secure_closet/miner/unlocked,
+/obj/effect/turf_decal/stripes/line{
+ dir = 6
+ },
+/turf/open/floor/plating,
+/area/shuttle/auxillary_base)
+
+(1,1,1) = {"
+b
+e
+e
+e
+e
+e
+l
+"}
+(2,1,1) = {"
+c
+f
+f
+f
+f
+f
+m
+"}
+(3,1,1) = {"
+c
+f
+f
+i
+f
+f
+m
+"}
+(4,1,1) = {"
+c
+f
+h
+j
+f
+f
+m
+"}
+(5,1,1) = {"
+c
+f
+f
+k
+f
+f
+m
+"}
+(6,1,1) = {"
+c
+f
+f
+f
+f
+f
+m
+"}
+(7,1,1) = {"
+d
+g
+g
+g
+g
+g
+n
+"}
\ No newline at end of file
diff --git a/_maps/shuttles/infiltrator_basic.dmm b/_maps/shuttles/infiltrator_basic.dmm
index 5d21fad7f8..0b1a7c5c6a 100644
--- a/_maps/shuttles/infiltrator_basic.dmm
+++ b/_maps/shuttles/infiltrator_basic.dmm
@@ -411,12 +411,12 @@
/area/shuttle/syndicate/airlock)
"bi" = (
/obj/structure/rack,
-/obj/item/clothing/suit/space/syndicate/black/red,
-/obj/item/clothing/head/helmet/space/syndicate/black/red,
/obj/effect/turf_decal/bot_white,
/obj/effect/turf_decal/stripes/line{
dir = 10
},
+/obj/item/clothing/suit/space/syndicate,
+/obj/item/clothing/head/helmet/space/syndicate,
/turf/open/floor/mineral/plastitanium,
/area/shuttle/syndicate/airlock)
"bj" = (
diff --git a/code/__DEFINES/MC.dm b/code/__DEFINES/MC.dm
index cbcf2c1dd9..97ce6ef6fd 100644
--- a/code/__DEFINES/MC.dm
+++ b/code/__DEFINES/MC.dm
@@ -19,8 +19,8 @@
#define NEW_SS_GLOBAL(varname) if(varname != src){if(istype(varname)){Recover();qdel(varname);}varname = src;}
-#define START_PROCESSING(Processor, Datum) if (!Datum.isprocessing) {Datum.isprocessing = TRUE;Processor.processing += Datum}
-#define STOP_PROCESSING(Processor, Datum) Datum.isprocessing = FALSE;Processor.processing -= Datum
+#define START_PROCESSING(Processor, Datum) if (!(Datum.datum_flags & DF_ISPROCESSING)) {Datum.datum_flags |= DF_ISPROCESSING;Processor.processing += Datum}
+#define STOP_PROCESSING(Processor, Datum) Datum.datum_flags &= ~DF_ISPROCESSING;Processor.processing -= Datum
//SubSystem flags (Please design any new flags so that the default is off, to make adding flags to subsystems easier)
diff --git a/code/__DEFINES/admin.dm b/code/__DEFINES/admin.dm
index 94a247171c..255464d406 100644
--- a/code/__DEFINES/admin.dm
+++ b/code/__DEFINES/admin.dm
@@ -58,7 +58,9 @@
#define ADMIN_FULLMONTY(user) "[key_name_admin(user)] [ADMIN_FULLMONTY_NONAME(user)]"
#define ADMIN_JMP(src) "(JMP)"
#define COORD(src) "[src ? "([src.x],[src.y],[src.z])" : "nonexistent location"]"
+#define AREACOORD(src) "[src ? "[get_area_name(src, TRUE)] ([src.x], [src.y], [src.z])" : "nonexistent location"]"
#define ADMIN_COORDJMP(src) "[src ? "[COORD(src)] [ADMIN_JMP(src)]" : "nonexistent location"]"
+#define ADMIN_VERBOSEJMP(src) "[src ? "[AREACOORD(src)] [ADMIN_JMP(src)]" : "nonexistent location"]"
#define ADMIN_INDIVIDUALLOG(user) "(LOGS)"
#define ADMIN_PUNISHMENT_LIGHTNING "Lightning bolt"
@@ -67,6 +69,7 @@
#define ADMIN_PUNISHMENT_BSA "Bluespace Artillery Device"
#define ADMIN_PUNISHMENT_FIREBALL "Fireball"
#define ADMIN_PUNISHMENT_ROD "Immovable Rod"
+#define ADMIN_PUNISHMENT_SUPPLYPOD "Supply Pod"
#define AHELP_ACTIVE 1
#define AHELP_CLOSED 2
diff --git a/code/__DEFINES/atmospherics.dm b/code/__DEFINES/atmospherics.dm
index c6c35ef08b..f6f903ec8f 100644
--- a/code/__DEFINES/atmospherics.dm
+++ b/code/__DEFINES/atmospherics.dm
@@ -194,6 +194,37 @@
#define ATMOS_GAS_MONITOR_WASTE_ENGINE "engine-waste_out"
#define ATMOS_GAS_MONITOR_WASTE_ATMOS "atmos-waste_out"
+//AIRLOCK CONTROLLER TAGS
+
+//RnD toxins burn chamber
+#define INCINERATOR_TOXMIX_IGNITER "toxmix_igniter"
+#define INCINERATOR_TOXMIX_VENT "toxmix_vent"
+#define INCINERATOR_TOXMIX_DP_VENTPUMP "toxmix_airlock_pump"
+#define INCINERATOR_TOXMIX_AIRLOCK_SENSOR "toxmix_airlock_sensor"
+#define INCINERATOR_TOXMIX_AIRLOCK_CONTROLLER "toxmix_airlock_controller"
+#define INCINERATOR_TOXMIX_AIRLOCK_INTERIOR "toxmix_airlock_interior"
+#define INCINERATOR_TOXMIX_AIRLOCK_EXTERIOR "toxmix_airlock_exterior"
+
+//Atmospherics/maintenance incinerator
+#define INCINERATOR_ATMOS_IGNITER "atmos_incinerator_igniter"
+#define INCINERATOR_ATMOS_MAINVENT "atmos_incinerator_mainvent"
+#define INCINERATOR_ATMOS_AUXVENT "atmos_incinerator_auxvent"
+#define INCINERATOR_ATMOS_DP_VENTPUMP "atmos_incinerator_airlock_pump"
+#define INCINERATOR_ATMOS_AIRLOCK_SENSOR "atmos_incinerator_airlock_sensor"
+#define INCINERATOR_ATMOS_AIRLOCK_CONTROLLER "atmos_incinerator_airlock_controller"
+#define INCINERATOR_ATMOS_AIRLOCK_INTERIOR "atmos_incinerator_airlock_interior"
+#define INCINERATOR_ATMOS_AIRLOCK_EXTERIOR "atmos_incinerator_airlock_exterior"
+
+//Syndicate lavaland base incinerator (lavaland_surface_syndicate_base1.dmm)
+#define INCINERATOR_SYNDICATELAVA_IGNITER "syndicatelava_igniter"
+#define INCINERATOR_SYNDICATELAVA_MAINVENT "syndicatelava_mainvent"
+#define INCINERATOR_SYNDICATELAVA_AUXVENT "syndicatelava_auxvent"
+#define INCINERATOR_SYNDICATELAVA_DP_VENTPUMP "syndicatelava_airlock_pump"
+#define INCINERATOR_SYNDICATELAVA_AIRLOCK_SENSOR "syndicatelava_airlock_sensor"
+#define INCINERATOR_SYNDICATELAVA_AIRLOCK_CONTROLLER "syndicatelava_airlock_controller"
+#define INCINERATOR_SYNDICATELAVA_AIRLOCK_INTERIOR "syndicatelava_airlock_interior"
+#define INCINERATOR_SYNDICATELAVA_AIRLOCK_EXTERIOR "syndicatelava_airlock_exterior"
+
//MULTIPIPES
//IF YOU EVER CHANGE THESE CHANGE SPRITES TO MATCH.
#define PIPING_LAYER_MIN 1
diff --git a/code/__DEFINES/construction.dm b/code/__DEFINES/construction.dm
index c5c88b18f1..157069f4eb 100644
--- a/code/__DEFINES/construction.dm
+++ b/code/__DEFINES/construction.dm
@@ -45,11 +45,6 @@
#define GLASS_CORE 4
#define AI_READY_CORE 5
-//emitter construction defines
-#define EM_UNSECURED 0
-#define EM_SECURED 1
-#define EM_WELDED 2
-
//Construction defines for the pinion airlock
#define GEAR_SECURE 1
#define GEAR_LOOSE 2
diff --git a/code/__DEFINES/flags.dm b/code/__DEFINES/flags.dm
index 61249cb60a..f566492ec3 100644
--- a/code/__DEFINES/flags.dm
+++ b/code/__DEFINES/flags.dm
@@ -9,6 +9,7 @@ GLOBAL_LIST_INIT(bitflags, list(1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 204
// for /datum/var/datum_flags
#define DF_USE_TAG (1<<0)
#define DF_VAR_EDITED (1<<1)
+#define DF_ISPROCESSING (1<<2)
//FLAGS BITMASK
diff --git a/code/__DEFINES/logging.dm b/code/__DEFINES/logging.dm
index 6d7cf12789..197c315f78 100644
--- a/code/__DEFINES/logging.dm
+++ b/code/__DEFINES/logging.dm
@@ -20,4 +20,7 @@
#define INDIVIDUAL_SAY_LOG "Say log"
#define INDIVIDUAL_EMOTE_LOG "Emote log"
#define INDIVIDUAL_OOC_LOG "OOC log"
-#define INDIVIDUAL_SHOW_ALL_LOG "All logs"
\ No newline at end of file
+#define INDIVIDUAL_OWNERSHIP_LOG "Ownership log"
+#define INDIVIDUAL_SHOW_ALL_LOG "All logs"
+#define LOGSRC_CLIENT "Client"
+#define LOGSRC_MOB "Mob"
diff --git a/code/__DEFINES/misc.dm b/code/__DEFINES/misc.dm
index a31ebccbad..43c706e58e 100644
--- a/code/__DEFINES/misc.dm
+++ b/code/__DEFINES/misc.dm
@@ -254,6 +254,8 @@ GLOBAL_LIST_INIT(ghost_others_options, list(GHOST_OTHERS_SIMPLE, GHOST_OTHERS_DE
#define ORBITRON "Orbitron"
#define SHARE "Share Tech Mono"
+GLOBAL_LIST_INIT(pda_styles, list(MONO, VT, ORBITRON, SHARE))
+
//Color Defines
#define OOC_COLOR "#002eb8"
diff --git a/code/__HELPERS/radiation.dm b/code/__HELPERS/radiation.dm
index 8418cc8505..93dcdb4b0e 100644
--- a/code/__HELPERS/radiation.dm
+++ b/code/__HELPERS/radiation.dm
@@ -42,5 +42,6 @@
last_huge_pulse = world.time
log = TRUE
if(log)
- log_game("Radiation pulse with intensity:[intensity] and range modifier:[range_modifier] in area [get_area(source)] ")
+ var/turf/_source_T = isturf(source) ? source : get_turf(source)
+ log_game("Radiation pulse with intensity: [intensity] and range modifier: [range_modifier] in [AREACOORD(_source_T)] ")
return TRUE
\ No newline at end of file
diff --git a/code/_globalvars/bitfields.dm b/code/_globalvars/bitfields.dm
index 6113e11eef..5ef8dc6d1b 100644
--- a/code/_globalvars/bitfields.dm
+++ b/code/_globalvars/bitfields.dm
@@ -35,7 +35,8 @@ GLOBAL_LIST_INIT(bitfields, list(
),
"datum_flags" = list(
"DF_USE_TAG" = DF_USE_TAG,
- "DF_VAR_EDITED" = DF_VAR_EDITED
+ "DF_VAR_EDITED" = DF_VAR_EDITED,
+ "DF_ISPROCESSING" = DF_ISPROCESSING,
),
"item_flags" = list(
"BEING_REMOVED" = BEING_REMOVED,
diff --git a/code/_globalvars/logging.dm b/code/_globalvars/logging.dm
index 545ffbcbef..e00e4775ac 100644
--- a/code/_globalvars/logging.dm
+++ b/code/_globalvars/logging.dm
@@ -41,6 +41,4 @@ GLOBAL_PROTECT(OOClog)
GLOBAL_LIST_EMPTY(adminlog)
GLOBAL_PROTECT(adminlog)
-GLOBAL_LIST_EMPTY(individual_log_list) // Logs each mob individual logs, a global so it doesn't get lost on cloning/changing mobs
-
GLOBAL_LIST_EMPTY(active_turfs_startlist)
diff --git a/code/_onclick/ai.dm b/code/_onclick/ai.dm
index 9ef689de8b..59598b9d7f 100644
--- a/code/_onclick/ai.dm
+++ b/code/_onclick/ai.dm
@@ -26,6 +26,14 @@
return
next_click = world.time + 1
+ if(multicam_on)
+ var/turf/T = get_turf(A)
+ if(T)
+ for(var/obj/screen/movable/pic_in_pic/ai/P in T.vis_locs)
+ if(P.ai == src)
+ P.Click(params)
+ break
+
if(check_click_intercept(params,A))
return
@@ -38,8 +46,8 @@
if(!can_see(A))
if(isturf(A)) //On unmodified clients clicking the static overlay clicks the turf underneath
return //So there's no point messaging admins
- message_admins("[key_name_admin(src)] might be running a modified client! (failed can_see on AI click of [A]([ADMIN_COORDJMP(pixel_turf)]))")
- var/message = "[key_name(src)] might be running a modified client! (failed can_see on AI click of [A]([COORD(pixel_turf)]))"
+ message_admins("[ADMIN_LOOKUPFLW(src)] might be running a modified client! (failed can_see on AI click of [A] (Turf Loc: [ADMIN_VERBOSEJMP(pixel_turf)]))")
+ var/message = "[key_name(src)] might be running a modified client! (failed can_see on AI click of [A] (Turf Loc: [AREACOORD(pixel_turf)]))"
log_admin(message)
if(REALTIMEOFDAY >= chnotify + 9000)
chnotify = REALTIMEOFDAY
diff --git a/code/_onclick/hud/_defines.dm b/code/_onclick/hud/_defines.dm
index 3225252520..b558e7c87c 100644
--- a/code/_onclick/hud/_defines.dm
+++ b/code/_onclick/hud/_defines.dm
@@ -134,6 +134,8 @@
#define ui_ai_take_picture "SOUTH:6,WEST+12"
#define ui_ai_view_images "SOUTH:6,WEST+13"
#define ui_ai_sensor "SOUTH:6,WEST+14"
+#define ui_ai_multicam "SOUTH+1:6,WEST+13"
+#define ui_ai_add_multicam "SOUTH+1:6,WEST+14"
//Pop-up inventory
#define ui_shoes "WEST+1:8,SOUTH:5"
diff --git a/code/_onclick/hud/ai.dm b/code/_onclick/hud/ai.dm
index 8d4aca5fbf..463051c6b4 100644
--- a/code/_onclick/hud/ai.dm
+++ b/code/_onclick/hud/ai.dm
@@ -164,6 +164,26 @@
var/mob/living/silicon/S = usr
S.toggle_sensors()
+/obj/screen/ai/multicam
+ name = "Multicamera Mode"
+ icon_state = "multicam"
+
+/obj/screen/ai/multicam/Click()
+ if(..())
+ return
+ var/mob/living/silicon/ai/AI = usr
+ AI.toggle_multicam()
+
+/obj/screen/ai/add_multicam
+ name = "New Camera"
+ icon_state = "new_cam"
+
+/obj/screen/ai/add_multicam/Click()
+ if(..())
+ return
+ var/mob/living/silicon/ai/AI = usr
+ AI.drop_new_multicam()
+
/datum/hud/ai
ui_style_icon = 'icons/mob/screen_ai.dmi'
@@ -247,12 +267,20 @@
using.screen_loc = ui_ai_view_images
static_inventory += using
-
//Medical/Security sensors
using = new /obj/screen/ai/sensors()
using.screen_loc = ui_ai_sensor
static_inventory += using
+//Multicamera mode
+ using = new /obj/screen/ai/multicam()
+ using.screen_loc = ui_ai_multicam
+ static_inventory += using
+
+//Add multicamera camera
+ using = new /obj/screen/ai/add_multicam()
+ using.screen_loc = ui_ai_add_multicam
+ static_inventory += using
/mob/living/silicon/ai/create_mob_hud()
if(client && !hud_used)
diff --git a/code/_onclick/hud/movable_screen_objects.dm b/code/_onclick/hud/movable_screen_objects.dm
index 4da721012d..f71ced7a9d 100644
--- a/code/_onclick/hud/movable_screen_objects.dm
+++ b/code/_onclick/hud/movable_screen_objects.dm
@@ -12,6 +12,8 @@
var/snap2grid = FALSE
var/moved = FALSE
var/locked = FALSE
+ var/x_off = -16
+ var/y_off = -16
//Snap Screen Object
//Tied to the grid, snaps to the nearest turf
@@ -42,8 +44,8 @@
screen_loc = "[screen_loc_X[1]],[screen_loc_Y[1]]"
else //Normalise Pixel Values (So the object drops at the center of the mouse, not 16 pixels off)
- var/pix_X = text2num(screen_loc_X[2]) - 16
- var/pix_Y = text2num(screen_loc_Y[2]) - 16
+ var/pix_X = text2num(screen_loc_X[2]) + x_off
+ var/pix_Y = text2num(screen_loc_Y[2]) + y_off
screen_loc = "[screen_loc_X[1]]:[pix_X],[screen_loc_Y[1]]:[pix_Y]"
moved = screen_loc
diff --git a/code/_onclick/hud/picture_in_picture.dm b/code/_onclick/hud/picture_in_picture.dm
new file mode 100644
index 0000000000..aea87827a6
--- /dev/null
+++ b/code/_onclick/hud/picture_in_picture.dm
@@ -0,0 +1,144 @@
+/obj/screen/movable/pic_in_pic
+ name = "Picture-in-picture"
+ screen_loc = "CENTER"
+ plane = FLOOR_PLANE
+ var/atom/center
+ var/width = 0
+ var/height = 0
+ var/list/shown_to = list()
+ var/list/viewing_turfs = list()
+ var/obj/screen/component_button/button_x
+ var/obj/screen/component_button/button_expand
+ var/obj/screen/component_button/button_shrink
+
+ var/mutable_appearance/standard_background
+ var/const/max_dimensions = 10
+
+/obj/screen/movable/pic_in_pic/Initialize()
+ . = ..()
+ make_backgrounds()
+
+/obj/screen/movable/pic_in_pic/Destroy()
+ for(var/C in shown_to)
+ unshow_to(C)
+ QDEL_NULL(button_x)
+ QDEL_NULL(button_shrink)
+ QDEL_NULL(button_expand)
+ return ..()
+
+/obj/screen/movable/pic_in_pic/component_click(obj/screen/component_button/component, params)
+ if(component == button_x)
+ qdel(src)
+ else if(component == button_expand)
+ set_view_size(width+1, height+1)
+ else if(component == button_shrink)
+ set_view_size(width-1, height-1)
+
+/obj/screen/movable/pic_in_pic/proc/make_backgrounds()
+ standard_background = new /mutable_appearance()
+ standard_background.icon = 'icons/misc/pic_in_pic.dmi'
+ standard_background.icon_state = "background"
+ standard_background.layer = SPACE_LAYER
+
+/obj/screen/movable/pic_in_pic/proc/add_buttons()
+ var/static/mutable_appearance/move_tab
+ if(!move_tab)
+ move_tab = new /mutable_appearance()
+ //all these properties are always the same, and since adding something to the overlay
+ //list makes a copy, there is no reason to make a new one each call
+ move_tab.icon = 'icons/misc/pic_in_pic.dmi'
+ move_tab.icon_state = "move"
+ move_tab.plane = HUD_PLANE
+ var/matrix/M = matrix()
+ M.Translate(0, (height + 0.25) * world.icon_size)
+ move_tab.transform = M
+ add_overlay(move_tab)
+
+ if(!button_x)
+ button_x = new /obj/screen/component_button(null, src)
+ var/mutable_appearance/MA = new /mutable_appearance()
+ MA.name = "close"
+ MA.icon = 'icons/misc/pic_in_pic.dmi'
+ MA.icon_state = "x"
+ MA.plane = HUD_PLANE
+ button_x.appearance = MA
+ M = matrix()
+ M.Translate((max(4, width) - 0.75) * world.icon_size, (height + 0.25) * world.icon_size)
+ button_x.transform = M
+ vis_contents += button_x
+
+ if(!button_expand)
+ button_expand = new /obj/screen/component_button(null, src)
+ var/mutable_appearance/MA = new /mutable_appearance()
+ MA.name = "expand"
+ MA.icon = 'icons/misc/pic_in_pic.dmi'
+ MA.icon_state = "expand"
+ MA.plane = HUD_PLANE
+ button_expand.appearance = MA
+ M = matrix()
+ M.Translate(world.icon_size, (height + 0.25) * world.icon_size)
+ button_expand.transform = M
+ vis_contents += button_expand
+
+ if(!button_shrink)
+ button_shrink = new /obj/screen/component_button(null, src)
+ var/mutable_appearance/MA = new /mutable_appearance()
+ MA.name = "shrink"
+ MA.icon = 'icons/misc/pic_in_pic.dmi'
+ MA.icon_state = "shrink"
+ MA.plane = HUD_PLANE
+ button_shrink.appearance = MA
+ M = matrix()
+ M.Translate(2 * world.icon_size, (height + 0.25) * world.icon_size)
+ button_shrink.transform = M
+ vis_contents += button_shrink
+
+/obj/screen/movable/pic_in_pic/proc/add_background()
+ if((width > 0) && (height > 0))
+ var/matrix/M = matrix()
+ M.Scale(width + 0.5, height + 0.5)
+ M.Translate((width-1)/2 * world.icon_size, (height-1)/2 * world.icon_size)
+ standard_background.transform = M
+ add_overlay(standard_background)
+
+/obj/screen/movable/pic_in_pic/proc/set_view_size(width, height, do_refresh = TRUE)
+ width = CLAMP(width, 0, max_dimensions)
+ height = CLAMP(height, 0, max_dimensions)
+ src.width = width
+ src.height = height
+
+ y_off = -height * world.icon_size - 16
+
+ cut_overlays()
+ add_background()
+ add_buttons()
+ if(do_refresh)
+ refresh_view()
+
+/obj/screen/movable/pic_in_pic/proc/set_view_center(atom/target, do_refresh = TRUE)
+ center = target
+ if(do_refresh)
+ refresh_view()
+
+/obj/screen/movable/pic_in_pic/proc/refresh_view()
+ vis_contents -= viewing_turfs
+ if(!width || !height)
+ return
+ var/turf/T = get_turf(center)
+ if(!T)
+ return
+ var/turf/lowerleft = locate(max(1, T.x - round(width/2)), max(1, T.y - round(height/2)), T.z)
+ var/turf/upperright = locate(min(world.maxx, lowerleft.x + width - 1), min(world.maxy, lowerleft.y + height - 1), lowerleft.z)
+ viewing_turfs = block(lowerleft, upperright)
+ vis_contents += viewing_turfs
+
+
+/obj/screen/movable/pic_in_pic/proc/show_to(client/C)
+ if(C)
+ shown_to[C] = 1
+ C.screen += src
+
+/obj/screen/movable/pic_in_pic/proc/unshow_to(client/C)
+ if(C)
+ shown_to -= C
+ C.screen -= src
diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm
index 02ece81b41..d2ac10a83f 100644
--- a/code/_onclick/hud/screen_objects.dm
+++ b/code/_onclick/hud/screen_objects.dm
@@ -30,6 +30,9 @@
/obj/screen/orbit()
return
+/obj/screen/proc/component_click(obj/screen/component_button/component, params)
+ return
+
/obj/screen/text
icon = null
icon_state = null
@@ -604,3 +607,15 @@
holder.screen -= src
holder = null
return ..()
+
+
+/obj/screen/component_button
+ var/obj/screen/parent
+
+/obj/screen/component_button/Initialize(mapload, obj/screen/parent)
+ . = ..()
+ src.parent = parent
+
+/obj/screen/component_button/Click(params)
+ if(parent)
+ parent.component_click(src, params)
diff --git a/code/controllers/configuration/entries/game_options.dm b/code/controllers/configuration/entries/game_options.dm
index 3de0ebe439..ebf27324b9 100644
--- a/code/controllers/configuration/entries/game_options.dm
+++ b/code/controllers/configuration/entries/game_options.dm
@@ -288,6 +288,11 @@
/datum/config_entry/flag/shift_time_realtime
+/datum/config_entry/keyed_number_list/antag_rep
+
+/datum/config_entry/number/monkeycap
+ config_entry_value = 64
+ min_val = 0
//Cit changes - Adds config options for crew objectives and miscreants
/datum/config_entry/flag/allow_crew_objectives
@@ -304,4 +309,4 @@
/datum/config_entry/number/nightshift_finish
config_entry_value = 6
-//End of Cit changes
\ No newline at end of file
+//End of Cit changes
diff --git a/code/controllers/subsystem/blackbox.dm b/code/controllers/subsystem/blackbox.dm
index ad95606bf4..f25244a6b1 100644
--- a/code/controllers/subsystem/blackbox.dm
+++ b/code/controllers/subsystem/blackbox.dm
@@ -291,4 +291,4 @@ Versioning
var/suicide = sanitizeSQL(L.suiciding)
var/map = sanitizeSQL(SSmapping.config.map_name)
var/datum/DBQuery/query_report_death = SSdbcore.NewQuery("INSERT INTO [format_table_name("death")] (pod, x_coord, y_coord, z_coord, mapname, server_ip, server_port, round_id, tod, job, special, name, byondkey, laname, lakey, bruteloss, fireloss, brainloss, oxyloss, toxloss, cloneloss, staminaloss, last_words, suicide) VALUES ('[sqlpod]', '[x_coord]', '[y_coord]', '[z_coord]', '[map]', INET_ATON(IF('[world.internet_address]' LIKE '', '0', '[world.internet_address]')), '[world.port]', [GLOB.round_id], '[SQLtime()]', '[sqljob]', '[sqlspecial]', '[sqlname]', '[sqlkey]', '[laname]', '[lakey]', [sqlbrute], [sqlfire], [sqlbrain], [sqloxy], [sqltox], [sqlclone], [sqlstamina], '[last_words]', [suicide])")
- query_report_death.Execute()
+ query_report_death.Execute()
\ No newline at end of file
diff --git a/code/controllers/subsystem/communications.dm b/code/controllers/subsystem/communications.dm
index d4838a21c3..5a791e28ef 100644
--- a/code/controllers/subsystem/communications.dm
+++ b/code/controllers/subsystem/communications.dm
@@ -26,7 +26,7 @@ SUBSYSTEM_DEF(communications)
priority_announce(html_decode(user.treat_message(input)), null, 'sound/misc/announce.ogg', "Captain")
nonsilicon_message_cooldown = world.time + COMMUNICATION_COOLDOWN
log_talk(user,"[key_name(user)] has made a priority announcement: [input]",LOGSAY)
- message_admins("[key_name_admin(user)] has made a priority announcement.")
+ message_admins("[ADMIN_LOOKUPFLW(user)] has made a priority announcement.")
/datum/controller/subsystem/communications/proc/send_message(datum/comm_message/sending,print = TRUE,unique = FALSE)
for(var/obj/machinery/computer/communications/C in GLOB.machines)
diff --git a/code/controllers/subsystem/icon_smooth.dm b/code/controllers/subsystem/icon_smooth.dm
index d0ad2ffbc3..1c8d94826d 100644
--- a/code/controllers/subsystem/icon_smooth.dm
+++ b/code/controllers/subsystem/icon_smooth.dm
@@ -6,16 +6,26 @@ SUBSYSTEM_DEF(icon_smooth)
flags = SS_TICKER
var/list/smooth_queue = list()
+ var/list/deferred = list()
/datum/controller/subsystem/icon_smooth/fire()
- while(smooth_queue.len)
- var/atom/A = smooth_queue[smooth_queue.len]
- smooth_queue.len--
- smooth_icon(A)
+ var/list/cached = smooth_queue
+ while(cached.len)
+ var/atom/A = cached[cached.len]
+ cached.len--
+ if (A.flags_1 & INITIALIZED_1)
+ smooth_icon(A)
+ else
+ deferred += A
if (MC_TICK_CHECK)
return
- if (!smooth_queue.len)
- can_fire = 0
+
+ if (!cached.len)
+ if (deferred.len)
+ smooth_queue = deferred
+ deferred = cached
+ else
+ can_fire = 0
/datum/controller/subsystem/icon_smooth/Initialize()
smooth_zlevel(1,TRUE)
diff --git a/code/controllers/subsystem/job.dm b/code/controllers/subsystem/job.dm
index c19345f328..f72b7d1d6a 100644
--- a/code/controllers/subsystem/job.dm
+++ b/code/controllers/subsystem/job.dm
@@ -422,7 +422,7 @@ SUBSYSTEM_DEF(job)
else
M = H
- SSpersistence.antag_rep_change[M.client.ckey] += job.antag_rep
+ SSpersistence.antag_rep_change[M.client.ckey] += job.GetAntagRep()
to_chat(M, "You are the [rank].")
if(job)
diff --git a/code/controllers/subsystem/machines.dm b/code/controllers/subsystem/machines.dm
index eab61d4ef9..6d5d64fe6c 100644
--- a/code/controllers/subsystem/machines.dm
+++ b/code/controllers/subsystem/machines.dm
@@ -45,7 +45,7 @@ SUBSYSTEM_DEF(machines)
else
processing -= thing
if (!QDELETED(thing))
- thing.isprocessing = FALSE
+ thing.datum_flags &= ~DF_ISPROCESSING
if (MC_TICK_CHECK)
return
diff --git a/code/controllers/subsystem/mapping.dm b/code/controllers/subsystem/mapping.dm
index 9b6944403a..2d99012881 100644
--- a/code/controllers/subsystem/mapping.dm
+++ b/code/controllers/subsystem/mapping.dm
@@ -121,7 +121,7 @@ SUBSYSTEM_DEF(mapping)
z_list = SSmapping.z_list
#define INIT_ANNOUNCE(X) to_chat(world, "[X]"); log_world(X)
-/datum/controller/subsystem/mapping/proc/LoadGroup(list/errorList, name, path, files, list/traits, list/default_traits)
+/datum/controller/subsystem/mapping/proc/LoadGroup(list/errorList, name, path, files, list/traits, list/default_traits, silent = FALSE)
var/start_time = REALTIMEOFDAY
if (!islist(files)) // handle single-level maps
@@ -157,8 +157,8 @@ SUBSYSTEM_DEF(mapping)
var/full_path = "_maps/[path]/[file]"
if(!loader.load_map(file(full_path), 0, 0, start_z + files[file], no_changeturf = TRUE))
errorList |= full_path
-
- INIT_ANNOUNCE("Loaded [name] in [(REALTIMEOFDAY - start_time)/10]s!")
+ if(!silent)
+ INIT_ANNOUNCE("Loaded [name] in [(REALTIMEOFDAY - start_time)/10]s!")
/datum/controller/subsystem/mapping/proc/loadWorld()
//if any of these fail, something has gone horribly, HORRIBLY, wrong
@@ -187,9 +187,6 @@ SUBSYSTEM_DEF(mapping)
LoadGroup(FailedZs, "Lavaland", "map_files/Mining", "Lavaland.dmm", default_traits = ZTRAITS_LAVALAND)
else if (!isnull(config.minetype))
INIT_ANNOUNCE("WARNING: An unknown minetype '[config.minetype]' was set! This is being ignored! Update the maploader code!")
-
- // load Reebe
- LoadGroup(FailedZs, "Reebe", "map_files/generic", "City_of_Cogs.dmm", default_traits = ZTRAITS_REEBE)
#endif
if(LAZYLEN(FailedZs)) //but seriously, unless the server's filesystem is messed up this will never happen
@@ -367,14 +364,14 @@ GLOBAL_LIST_EMPTY(the_station_areas)
away_level = template.load_new_z()
else
return
-
+
message_admins("Admin [key_name_admin(usr)] has loaded [away_name] away mission.")
log_admin("Admin [key_name(usr)] has loaded [away_name] away mission.")
if(!away_level)
message_admins("Loading [away_name] failed!")
return
-
-
+
+
if(GLOB.the_gateway)
//Link any found away gate with station gate
var/obj/machinery/gateway/centeraway/new_gate
diff --git a/code/controllers/subsystem/mobs.dm b/code/controllers/subsystem/mobs.dm
index 066c621572..428819f897 100644
--- a/code/controllers/subsystem/mobs.dm
+++ b/code/controllers/subsystem/mobs.dm
@@ -7,7 +7,6 @@ SUBSYSTEM_DEF(mobs)
var/list/currentrun = list()
var/static/list/clients_by_zlevel[][]
var/static/list/cubemonkeys = list()
- var/cubemonkeycap = 64
/datum/controller/subsystem/mobs/stat_entry()
..("P:[GLOB.mob_living_list.len]")
diff --git a/code/controllers/subsystem/processing/processing.dm b/code/controllers/subsystem/processing/processing.dm
index f6d45ebff2..ef2a0f72e6 100644
--- a/code/controllers/subsystem/processing/processing.dm
+++ b/code/controllers/subsystem/processing/processing.dm
@@ -27,7 +27,6 @@ SUBSYSTEM_DEF(processing)
if (MC_TICK_CHECK)
return
-/datum/var/isprocessing = FALSE
/datum/proc/process()
set waitfor = 0
STOP_PROCESSING(SSobj, src)
diff --git a/code/controllers/subsystem/shuttle.dm b/code/controllers/subsystem/shuttle.dm
index 3ffb669084..fe57bca354 100644
--- a/code/controllers/subsystem/shuttle.dm
+++ b/code/controllers/subsystem/shuttle.dm
@@ -277,7 +277,7 @@ SUBSYSTEM_DEF(shuttle)
if(call_reason)
SSblackbox.record_feedback("text", "shuttle_reason", 1, "[call_reason]")
log_game("Shuttle call reason: [call_reason]")
- message_admins("[key_name_admin(user)] has called the shuttle. (TRIGGER CENTCOM RECALL)")
+ message_admins("[ADMIN_LOOKUPFLW(user)] has called the shuttle. (TRIGGER CENTCOM RECALL)")
/datum/controller/subsystem/shuttle/proc/centcom_recall(old_timer, admiral_message)
if(emergency.mode != SHUTTLE_CALL || emergency.timer != old_timer)
@@ -310,9 +310,8 @@ SUBSYSTEM_DEF(shuttle)
if(canRecall())
emergency.cancel(get_area(user))
log_game("[key_name(user)] has recalled the shuttle.")
- message_admins("[key_name_admin(user)] has recalled the shuttle.")
- var/area/A = get_area(user)
- deadchat_broadcast("[user.real_name] has recalled the shuttle at [A.name].", user)
+ message_admins("[ADMIN_LOOKUPFLW(user)] has recalled the shuttle.")
+ deadchat_broadcast("[user.real_name] has recalled the shuttle from [get_area_name(user, TRUE)].", user)
return 1
/datum/controller/subsystem/shuttle/proc/canRecall()
diff --git a/code/datums/action.dm b/code/datums/action.dm
index f9575a56ef..593e81ff01 100644
--- a/code/datums/action.dm
+++ b/code/datums/action.dm
@@ -564,19 +564,6 @@
/datum/action/innate/proc/Deactivate()
return
-//Preset for action that call specific procs (consider innate).
-/datum/action/generic
- check_flags = 0
- var/procname
-
-/datum/action/generic/Trigger()
- if(!..())
- return 0
- if(target && procname)
- call(target, procname)(usr)
- return 1
-
-
//Preset for an action with a cooldown
/datum/action/cooldown
diff --git a/code/datums/brain_damage/split_personality.dm b/code/datums/brain_damage/split_personality.dm
index f33a69a3af..a1f6ff15fb 100644
--- a/code/datums/brain_damage/split_personality.dm
+++ b/code/datums/brain_damage/split_personality.dm
@@ -28,7 +28,7 @@
var/mob/dead/observer/C = pick(candidates)
stranger_backseat.key = C.key
log_game("[key_name(stranger_backseat)] became [key_name(owner)]'s split personality.")
- message_admins("[key_name_admin(stranger_backseat)] became [key_name_admin(owner)]'s split personality.")
+ message_admins("[ADMIN_LOOKUPFLW(stranger_backseat)] became [ADMIN_LOOKUPFLW(owner)]'s split personality.")
else
qdel(src)
diff --git a/code/datums/components/chasm.dm b/code/datums/components/chasm.dm
index 88360194b3..88a92ce8ec 100644
--- a/code/datums/components/chasm.dm
+++ b/code/datums/components/chasm.dm
@@ -11,13 +11,16 @@
/obj/structure/lattice,
/obj/structure/stone_tile,
/obj/item/projectile,
+ /obj/effect/projectile,
/obj/effect/portal,
/obj/effect/abstract,
/obj/effect/hotspot,
/obj/effect/landmark,
/obj/effect/temp_visual,
/obj/effect/light_emitter/tendril,
- /obj/effect/collapse))
+ /obj/effect/collapse,
+ /obj/effect/particle_effect/ion_trails
+ ))
/datum/component/chasm/Initialize(turf/target)
RegisterSignal(list(COMSIG_MOVABLE_CROSSED, COMSIG_ATOM_ENTERED), .proc/Entered)
diff --git a/code/datums/components/riding.dm b/code/datums/components/riding.dm
index 4a720b6550..2ff322fd72 100644
--- a/code/datums/components/riding.dm
+++ b/code/datums/components/riding.dm
@@ -1,5 +1,5 @@
/datum/component/riding
- var/next_vehicle_move = 0 //used for move delays
+ var/last_vehicle_move = 0 //used for move delays
var/vehicle_move_delay = 2 //tick delay between movements, lower = faster, higher = slower
var/keytype
@@ -146,9 +146,9 @@
Unbuckle(user)
return
- if(world.time < next_vehicle_move)
+ if(world.time < last_vehicle_move + vehicle_move_delay)
return
- next_vehicle_move = world.time + vehicle_move_delay
+ last_vehicle_move = world.time
if(keycheck(user))
var/turf/next = get_step(AM, direction)
diff --git a/code/datums/components/stationloving.dm b/code/datums/components/stationloving.dm
index ecfb0ca902..136431b5ee 100644
--- a/code/datums/components/stationloving.dm
+++ b/code/datums/components/stationloving.dm
@@ -39,9 +39,9 @@
var/turf/currentturf = get_turf(src)
to_chat(get(parent, /mob), "You can't help but feel that you just lost something back there...")
var/turf/targetturf = relocate()
- log_game("[parent] has been moved out of bounds in [COORD(currentturf)]. Moving it to [COORD(targetturf)].")
+ log_game("[parent] has been moved out of bounds in [AREACOORD(currentturf)]. Moving it to [AREACOORD(targetturf)].")
if(inform_admins)
- message_admins("[parent] has been moved out of bounds in [ADMIN_COORDJMP(currentturf)]. Moving it to [ADMIN_COORDJMP(targetturf)].")
+ message_admins("[parent] has been moved out of bounds in [ADMIN_VERBOSEJMP(currentturf)]. Moving it to [ADMIN_VERBOSEJMP(targetturf)].")
/datum/component/stationloving/proc/check_soul_imbue()
return disallow_soul_imbue
@@ -67,13 +67,13 @@
var/turf/T = get_turf(parent)
if(inform_admins && force)
- message_admins("[parent] has been !!force deleted!! in [ADMIN_COORDJMP(T)].")
- log_game("[parent] has been !!force deleted!! in [COORD(T)].")
+ message_admins("[parent] has been !!force deleted!! in [ADMIN_VERBOSEJMP(T)].")
+ log_game("[parent] has been !!force deleted!! in [AREACOORD(T)].")
if(!force)
var/turf/targetturf = relocate()
- log_game("[parent] has been destroyed in [COORD(T)]. Moving it to [COORD(targetturf)].")
+ log_game("[parent] has been destroyed in [AREACOORD(T)]. Moving it to [AREACOORD(targetturf)].")
if(inform_admins)
- message_admins("[parent] has been destroyed in [ADMIN_COORDJMP(T)]. Moving it to [ADMIN_COORDJMP(targetturf)].")
+ message_admins("[parent] has been destroyed in [ADMIN_VERBOSEJMP(T)]. Moving it to [ADMIN_VERBOSEJMP(targetturf)].")
return TRUE
return FALSE
diff --git a/code/datums/components/storage/concrete/bag_of_holding.dm b/code/datums/components/storage/concrete/bag_of_holding.dm
index 6b624afadb..c14b1f5270 100644
--- a/code/datums/components/storage/concrete/bag_of_holding.dm
+++ b/code/datums/components/storage/concrete/bag_of_holding.dm
@@ -18,8 +18,8 @@
if(istype(T, /turf/open/space/transit))
continue
T.TerraformTurf(/turf/open/chasm/magic, /turf/open/chasm/magic)
- message_admins("[ADMIN_LOOKUPFLW(user)] detonated a bag of holding at [get_area_name(loccheck, TRUE)] [ADMIN_COORDJMP(loccheck)].")
- log_game("[key_name(user)] detonated a bag of holding at [get_area_name(loccheck, TRUE)] [COORD(loccheck)].")
+ message_admins("[ADMIN_LOOKUPFLW(user)] detonated a bag of holding at [ADMIN_VERBOSEJMP(loccheck)].")
+ log_game("[key_name(user)] detonated a bag of holding at [AREACOORD(loccheck)].")
qdel(A)
return
. = ..()
diff --git a/code/datums/components/wet_floor.dm b/code/datums/components/wet_floor.dm
index 0baddd87eb..49c628385b 100644
--- a/code/datums/components/wet_floor.dm
+++ b/code/datums/components/wet_floor.dm
@@ -175,7 +175,7 @@
if(!LAZYLEN(time_left_list))
if(on_init)
var/turf/T = parent
- stack_trace("Warning: Wet floor component gc'd right initializatoin! What a waste of time and CPU! Type = [T? T.type : "ERROR - NO PARENT"], Coords = [istype(T)? COORD(T) : "ERROR - INVALID PARENT"].")
+ stack_trace("Warning: Wet floor component gc'd right after initialization! What a waste of time and CPU! Type = [T? T.type : "ERROR - NO PARENT"], Location = [istype(T)? AREACOORD(T) : "ERROR - INVALID PARENT"].")
qdel(src)
return TRUE
return FALSE
diff --git a/code/datums/diseases/advance/symptoms/fire.dm b/code/datums/diseases/advance/symptoms/fire.dm
index 781cd6de4d..f85024a7a9 100644
--- a/code/datums/diseases/advance/symptoms/fire.dm
+++ b/code/datums/diseases/advance/symptoms/fire.dm
@@ -125,7 +125,7 @@ Bonus
symptom_delay_max = 140
if(A.properties["stage_rate"] >= 8) //serious boom when wet
explosion_power = 2
- if(A.properties["transmission"] >= 8) //extra chemicals
+ if(A.properties["transmittable"] >= 8) //extra chemicals
chems = TRUE
/datum/symptom/alkali/Activate(datum/disease/advance/A)
diff --git a/code/datums/diseases/advance/symptoms/heal.dm b/code/datums/diseases/advance/symptoms/heal.dm
index 02e0546201..9f274c0aa3 100644
--- a/code/datums/diseases/advance/symptoms/heal.dm
+++ b/code/datums/diseases/advance/symptoms/heal.dm
@@ -60,7 +60,7 @@
/datum/symptom/heal/starlight/Start(datum/disease/advance/A)
if(!..())
return
- if(A.properties["transmission"] >= 6)
+ if(A.properties["transmittable"] >= 6)
nearspace_penalty = 1
if(A.properties["stage_rate"] >= 6)
power = 2
@@ -358,7 +358,7 @@
return
if(A.properties["stage_rate"] >= 7)
power = 2
- if(A.properties["trasmission"] >= 6)
+ if(A.properties["transmittable"] >= 6)
temp_rate = 4
/datum/symptom/heal/plasma/CanHeal(datum/disease/advance/A)
@@ -425,7 +425,7 @@
return
if(A.properties["resistance"] >= 7)
power = 2
- if(A.properties["trasmission"] >= 6)
+ if(A.properties["transmittable"] >= 6)
cellular_damage = TRUE
/datum/symptom/heal/radiation/CanHeal(datum/disease/advance/A)
diff --git a/code/datums/diseases/advance/symptoms/shivering.dm b/code/datums/diseases/advance/symptoms/shivering.dm
index c67bf7798a..e4bb5e1b3e 100644
--- a/code/datums/diseases/advance/symptoms/shivering.dm
+++ b/code/datums/diseases/advance/symptoms/shivering.dm
@@ -33,10 +33,10 @@ Bonus
/datum/symptom/fever/Start(datum/disease/advance/A)
if(!..())
return
- if(A.properties["stage_speed"] >= 5) //dangerous cold
+ if(A.properties["stage_rate"] >= 5) //dangerous cold
power = 1.5
unsafe = TRUE
- if(A.properties["stage_speed"] >= 10)
+ if(A.properties["stage_rate"] >= 10)
power = 2.5
/datum/symptom/shivering/Activate(datum/disease/advance/A)
diff --git a/code/datums/diseases/transformation.dm b/code/datums/diseases/transformation.dm
index 52b63ccd5f..8008c185a5 100644
--- a/code/datums/diseases/transformation.dm
+++ b/code/datums/diseases/transformation.dm
@@ -55,7 +55,7 @@
if(affected_mob.notransform)
return
affected_mob.notransform = 1
- for(var/obj/item/W in affected_mob.get_equipped_items())
+ for(var/obj/item/W in affected_mob.get_equipped_items(TRUE))
affected_mob.dropItemToGround(W)
for(var/obj/item/I in affected_mob.held_items)
affected_mob.dropItemToGround(I)
diff --git a/code/datums/explosion.dm b/code/datums/explosion.dm
index 7e9e9c870f..78314d4fd3 100644
--- a/code/datums/explosion.dm
+++ b/code/datums/explosion.dm
@@ -84,16 +84,15 @@ GLOBAL_LIST_EMPTY(explosions)
var/max_range = max(devastation_range, heavy_impact_range, light_impact_range, flame_range)
- var/area/epi_area = get_area(epicenter)
if(adminlog)
- message_admins("Explosion with size ([devastation_range], [heavy_impact_range], [light_impact_range], [flame_range]) in area: [epi_area] [ADMIN_COORDJMP(epicenter)]")
- log_game("Explosion with size ([devastation_range], [heavy_impact_range], [light_impact_range], [flame_range]) in area [epicenter.loc.name] ([epicenter.x],[epicenter.y],[epicenter.z])")
+ message_admins("Explosion with size ([devastation_range], [heavy_impact_range], [light_impact_range], [flame_range]) in [ADMIN_VERBOSEJMP(epicenter)]")
+ log_game("Explosion with size ([devastation_range], [heavy_impact_range], [light_impact_range], [flame_range]) in [AREACOORD(epicenter)]")
var/x0 = epicenter.x
var/y0 = epicenter.y
var/z0 = epicenter.z
-
- SSblackbox.record_feedback("associative", "explosion", 1, list("dev" = devastation_range, "heavy" = heavy_impact_range, "light" = light_impact_range, "flash" = flash_range, "flame" = flame_range, "orig_dev" = orig_dev_range, "orig_heavy" = orig_heavy_range, "orig_light" = orig_light_range, "x" = x0, "y" = y0, "z" = z0, "area" = epi_area.type))
+ var/area/areatype = get_area(epicenter)
+ SSblackbox.record_feedback("associative", "explosion", 1, list("dev" = devastation_range, "heavy" = heavy_impact_range, "light" = light_impact_range, "flash" = flash_range, "flame" = flame_range, "orig_dev" = orig_dev_range, "orig_heavy" = orig_heavy_range, "orig_light" = orig_light_range, "x" = x0, "y" = y0, "z" = z0, "area" = areatype.type))
// Play sounds; we want sounds to be different depending on distance so we will manually do it ourselves.
// Stereo users will also hear the direction of the explosion!
diff --git a/code/datums/helper_datums/teleport.dm b/code/datums/helper_datums/teleport.dm
index ce5f5df1d9..e5d43fd02b 100644
--- a/code/datums/helper_datums/teleport.dm
+++ b/code/datums/helper_datums/teleport.dm
@@ -112,13 +112,13 @@
if(force_teleport)
teleatom.forceMove(destturf)
if(ismegafauna(teleatom))
- message_admins("[teleatom] [ADMIN_FLW(teleatom)] has teleported from [ADMIN_COORDJMP(curturf)] to [ADMIN_COORDJMP(destturf)].")
+ message_admins("[teleatom] [ADMIN_FLW(teleatom)] has teleported from [ADMIN_VERBOSEJMP(curturf)] to [ADMIN_VERBOSEJMP(destturf)].")
playSpecials(destturf,effectout,soundout)
else
if(teleatom.Move(destturf))
playSpecials(destturf,effectout,soundout)
if(ismegafauna(teleatom))
- message_admins("[teleatom] [ADMIN_FLW(teleatom)] has teleported from [ADMIN_COORDJMP(curturf)] to [ADMIN_COORDJMP(destturf)].")
+ message_admins("[teleatom] [ADMIN_FLW(teleatom)] has teleported from [ADMIN_VERBOSEJMP(curturf)] to [ADMIN_VERBOSEJMP(destturf)].")
if(ismob(teleatom))
var/mob/M = teleatom
M.cancel_camera()
diff --git a/code/datums/holocall.dm b/code/datums/holocall.dm
index d19e8be2e1..ef4edbb6cf 100644
--- a/code/datums/holocall.dm
+++ b/code/datums/holocall.dm
@@ -60,17 +60,19 @@
user.remote_control = null
if(!QDELETED(eye))
- if(user_good && user.client)
- for(var/datum/camerachunk/chunk in eye.visibleCameraChunks)
- chunk.remove(eye)
- qdel(eye)
- eye = null
+ eye.RemoveImages()
+ QDEL_NULL(eye)
+
+ if(connected_holopad && !QDELETED(hologram))
+ hologram = null
+ connected_holopad.clear_holo(user)
user = null
- if(hologram)
+ //Hologram survived holopad destro
+ if(!QDELETED(hologram))
hologram.HC = null
- hologram = null
+ QDEL_NULL(hologram)
for(var/I in dialed_holopads)
var/obj/machinery/holopad/H = I
@@ -93,9 +95,10 @@
/datum/holocall/proc/Disconnect(obj/machinery/holopad/H)
testing("Holocall disconnect")
if(H == connected_holopad)
- calling_holopad.say("[usr] disconnected.")
+ var/area/A = get_area(connected_holopad)
+ calling_holopad.say("[A] holopad disconnected.")
else if(H == calling_holopad && connected_holopad)
- connected_holopad.say("[usr] disconnected.")
+ connected_holopad.say("[user] disconnected.")
ConnectionFailure(H, TRUE)
@@ -157,6 +160,7 @@
eye.setLoc(H.loc)
hangup = new(eye, src)
+ hangup.Grant(user)
//Checks the validity of a holocall and qdels itself if it's not. Returns TRUE if valid, FALSE otherwise
/datum/holocall/proc/Check()
@@ -205,7 +209,7 @@
/datum/holorecord/proc/set_caller_image(mob/user)
var/olddir = user.dir
user.setDir(SOUTH)
- caller_image = getFlatIcon(user)
+ caller_image = image(user)
user.setDir(olddir)
/obj/item/disk/holodisk
@@ -284,7 +288,7 @@
else
var/datum/preset_holoimage/H = new preset_image_type
record.caller_image = H.build_image()
-
+
//These build caller image from outfit and some additional data, for use by mappers for ruin holorecords
/datum/preset_holoimage
var/nonhuman_mobtype //Fill this if you just want something nonhuman
@@ -303,7 +307,7 @@
mannequin.equipOutfit(outfit_type,TRUE)
mannequin.setDir(SOUTH)
COMPILE_OVERLAYS(mannequin)
- . = getFlatIcon(mannequin)
+ . = image(mannequin)
unset_busy_human_dummy("HOLODISK_PRESET")
/obj/item/disk/holodisk/example
@@ -347,4 +351,3 @@
/datum/preset_holoimage/clown
outfit_type = /datum/outfit/job/clown
-
diff --git a/code/datums/ruins/lavaland.dm b/code/datums/ruins/lavaland.dm
index 8817a1ff96..af299aaee9 100644
--- a/code/datums/ruins/lavaland.dm
+++ b/code/datums/ruins/lavaland.dm
@@ -115,6 +115,14 @@
// Generates nothing but atmos runtimes and salt
cost = 0
+/datum/map_template/ruin/lavaland/ratvar
+ name = "Dead God"
+ id = "ratvar"
+ description = "Ratvars final resting place."
+ suffix = "lavaland_surface_dead_ratvar.dmm"
+ cost = 0
+ allow_duplicates = FALSE
+
/datum/map_template/ruin/lavaland/hierophant
name = "Hierophant's Arena"
id = "hierophant"
diff --git a/code/datums/traits/_quirk.dm b/code/datums/traits/_quirk.dm
index d85f79f84a..963afacec3 100644
--- a/code/datums/traits/_quirk.dm
+++ b/code/datums/traits/_quirk.dm
@@ -55,6 +55,9 @@
/datum/quirk/proc/post_add() //for text, disclaimers etc. given after you spawn in with the trait
/datum/quirk/proc/on_transfer() //code called when the trait is transferred to a new mob
+/datum/quirk/proc/clone_data() //return additional data that should be remembered by cloning
+/datum/quirk/proc/on_clone(data) //create the quirk from clone data
+
/datum/quirk/process()
if(QDELETED(quirk_holder))
quirk_holder = null
diff --git a/code/datums/traits/negative.dm b/code/datums/traits/negative.dm
index b6dd926773..68e259441f 100644
--- a/code/datums/traits/negative.dm
+++ b/code/datums/traits/negative.dm
@@ -85,7 +85,11 @@
quirk_holder.SendSignal(COMSIG_CLEAR_MOOD_EVENT, "family_heirloom")
quirk_holder.SendSignal(COMSIG_ADD_MOOD_EVENT, "family_heirloom_missing", /datum/mood_event/family_heirloom_missing)
+/datum/quirk/family_heirloom/clone_data()
+ return heirloom
+/datum/quirk/family_heirloom/on_clone(data)
+ heirloom = data
/datum/quirk/heavy_sleeper
name = "Heavy Sleeper"
diff --git a/code/datums/wires/syndicatebomb.dm b/code/datums/wires/syndicatebomb.dm
index 043110f5d3..92cc1770b3 100644
--- a/code/datums/wires/syndicatebomb.dm
+++ b/code/datums/wires/syndicatebomb.dm
@@ -88,5 +88,5 @@
if(istype(B, /obj/machinery/syndicatebomb/training))
return
var/turf/T = get_turf(B)
- log_game("\A [B] was detonated via boom wire at [COORD(T)].")
- message_admins("A [B.name] was detonated via boom wire at [ADMIN_COORDJMP(T)].")
+ log_game("\A [B] was detonated via boom wire at [AREACOORD(T)].")
+ message_admins("A [B.name] was detonated via boom wire at [ADMIN_VERBOSEJMP(T)].")
diff --git a/code/game/atoms.dm b/code/game/atoms.dm
index 122efe5772..b679956c3f 100644
--- a/code/game/atoms.dm
+++ b/code/game/atoms.dm
@@ -425,23 +425,6 @@
/atom/proc/update_remote_sight(mob/living/user)
return
-/atom/proc/add_vomit_floor(mob/living/carbon/M, toxvomit = 0)
- if(isturf(src))
- var/obj/effect/decal/cleanable/vomit/V = new /obj/effect/decal/cleanable/vomit(src, M.get_static_viruses())
- // Make toxins vomit look different
- if(toxvomit)
- V.icon_state = "vomittox_[pick(1,4)]"
- if(M.reagents)
- clear_reagents_to_vomit_pool(M,V)
-
-/atom/proc/clear_reagents_to_vomit_pool(mob/living/carbon/M, obj/effect/decal/cleanable/vomit/V)
- M.reagents.trans_to(V, M.reagents.total_volume / 10)
- for(var/datum/reagent/R in M.reagents.reagent_list) //clears the stomach of anything that might be digested as food
- if(istype(R, /datum/reagent/consumable))
- var/datum/reagent/consumable/nutri_check = R
- if(nutri_check.nutriment_factor >0)
- M.reagents.remove_reagent(R.id,R.volume)
-
//Hook for running code when a dir change occurs
/atom/proc/setDir(newdir)
diff --git a/code/game/atoms_movable.dm b/code/game/atoms_movable.dm
index 7f817f7787..22a7940bbf 100644
--- a/code/game/atoms_movable.dm
+++ b/code/game/atoms_movable.dm
@@ -161,41 +161,45 @@
else //Diagonal move, split it into cardinal moves
moving_diagonally = FIRST_DIAG_STEP
var/first_step_dir
+ // The `&& moving_diagonally` checks are so that a forceMove taking
+ // place due to a Crossed, Collided, etc. call will interrupt
+ // the second half of the diagonal movement, or the second attempt
+ // at a first half if step() fails because we hit something.
if (direct & NORTH)
if (direct & EAST)
- if (step(src, NORTH))
+ if (step(src, NORTH) && moving_diagonally)
first_step_dir = NORTH
moving_diagonally = SECOND_DIAG_STEP
. = step(src, EAST)
- else if (step(src, EAST))
+ else if (moving_diagonally && step(src, EAST))
first_step_dir = EAST
moving_diagonally = SECOND_DIAG_STEP
. = step(src, NORTH)
else if (direct & WEST)
- if (step(src, NORTH))
+ if (step(src, NORTH) && moving_diagonally)
first_step_dir = NORTH
moving_diagonally = SECOND_DIAG_STEP
. = step(src, WEST)
- else if (step(src, WEST))
+ else if (moving_diagonally && step(src, WEST))
first_step_dir = WEST
moving_diagonally = SECOND_DIAG_STEP
. = step(src, NORTH)
else if (direct & SOUTH)
if (direct & EAST)
- if (step(src, SOUTH))
+ if (step(src, SOUTH) && moving_diagonally)
first_step_dir = SOUTH
moving_diagonally = SECOND_DIAG_STEP
. = step(src, EAST)
- else if (step(src, EAST))
+ else if (moving_diagonally && step(src, EAST))
first_step_dir = EAST
moving_diagonally = SECOND_DIAG_STEP
. = step(src, SOUTH)
else if (direct & WEST)
- if (step(src, SOUTH))
+ if (step(src, SOUTH) && moving_diagonally)
first_step_dir = SOUTH
moving_diagonally = SECOND_DIAG_STEP
. = step(src, WEST)
- else if (step(src, WEST))
+ else if (moving_diagonally && step(src, WEST))
first_step_dir = WEST
moving_diagonally = SECOND_DIAG_STEP
. = step(src, SOUTH)
@@ -310,8 +314,8 @@
var/area/old_area = get_area(oldloc)
var/area/destarea = get_area(destination)
-
loc = destination
+ moving_diagonally = 0
if(!same_loc)
if(oldloc)
@@ -558,7 +562,7 @@
if(visual_effect_icon)
I = image('icons/effects/effects.dmi', A, visual_effect_icon, A.layer + 0.1)
else if(used_item)
- I = image(used_item.icon, A, used_item.icon_state, A.layer + 0.1)
+ I = image(icon = used_item, loc = A, layer = A.layer + 0.1)
// Scale the icon.
I.transform *= 0.75
diff --git a/code/game/gamemodes/changeling/changeling.dm b/code/game/gamemodes/changeling/changeling.dm
index 93d77209e0..1ebfe78c5d 100644
--- a/code/game/gamemodes/changeling/changeling.dm
+++ b/code/game/gamemodes/changeling/changeling.dm
@@ -11,7 +11,7 @@ GLOBAL_VAR(changeling_team_objective_type) //If this is not null, we hand our th
antag_flag = ROLE_CHANGELING
false_report_weight = 10
restricted_jobs = list("AI", "Cyborg")
- protected_jobs = list("Security Officer", "Warden", "Detective", "Head of Security", "Captain")
+ protected_jobs = list("Security Officer", "Warden", "Detective", "Head of Security", "Captain", "Head of Personnel", "Chief Engineer", "Chief Medical Officer", "Research Director") //citadel change - adds HoP, CE, CMO, and RD to ling role blacklist
required_players = 15
required_enemies = 1
recommended_enemies = 4
diff --git a/code/game/gamemodes/clock_cult/clock_cult.dm b/code/game/gamemodes/clock_cult/clock_cult.dm
index 355dd869b1..a0cfd79770 100644
--- a/code/game/gamemodes/clock_cult/clock_cult.dm
+++ b/code/game/gamemodes/clock_cult/clock_cult.dm
@@ -143,6 +143,12 @@ Credit where due:
var/datum/team/clockcult/main_clockcult
/datum/game_mode/clockwork_cult/pre_setup()
+ var/list/errorList = list()
+ SSmapping.LoadGroup(errorList, "Reebe", "map_files/generic", "City_of_Cogs.dmm", default_traits = ZTRAITS_REEBE, silent = TRUE)
+ if(errorList.len) // reebe failed to load
+ message_admins("Rebee failed to load!")
+ log_game("Rebee failed to load!")
+ return FALSE
if(CONFIG_GET(flag/protect_roles_from_antagonist))
restricted_jobs += protected_jobs
if(CONFIG_GET(flag/protect_assistant_from_antagonist))
diff --git a/code/game/gamemodes/traitor/traitor.dm b/code/game/gamemodes/traitor/traitor.dm
index 80ce90722b..95d1aaaa1d 100644
--- a/code/game/gamemodes/traitor/traitor.dm
+++ b/code/game/gamemodes/traitor/traitor.dm
@@ -11,7 +11,7 @@
antag_flag = ROLE_TRAITOR
false_report_weight = 20 //Reports of traitors are pretty common.
restricted_jobs = list("Cyborg")//They are part of the AI if he is traitor so are they, they use to get double chances
- protected_jobs = list("Security Officer", "Warden", "Detective", "Head of Security", "Captain")
+ protected_jobs = list("Security Officer", "Warden", "Detective", "Head of Security", "Captain", "Head of Personnel", "Chief Engineer", "Chief Medical Officer", "Research Director") //citadel change - adds HoP, CE, CMO, and RD to ling role blacklist
required_players = 0
required_enemies = 1
recommended_enemies = 4
diff --git a/code/game/machinery/Beacon.dm b/code/game/machinery/Beacon.dm
index 61e862452f..3d0931d534 100644
--- a/code/game/machinery/Beacon.dm
+++ b/code/game/machinery/Beacon.dm
@@ -6,7 +6,6 @@
desc = "A device that draws power from bluespace and creates a permanent tracking beacon."
level = 1 // underfloor
layer = LOW_OBJ_LAYER
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 0
var/obj/item/beacon/Beacon
diff --git a/code/game/machinery/PDApainter.dm b/code/game/machinery/PDApainter.dm
index e38775b749..d5cf016816 100644
--- a/code/game/machinery/PDApainter.dm
+++ b/code/game/machinery/PDApainter.dm
@@ -4,10 +4,9 @@
icon = 'icons/obj/pda.dmi'
icon_state = "pdapainter"
density = TRUE
- anchored = TRUE
+ max_integrity = 200
var/obj/item/pda/storedpda = null
var/list/colorlist = list()
- max_integrity = 200
/obj/machinery/pdapainter/update_icon()
diff --git a/code/game/machinery/Sleeper.dm b/code/game/machinery/Sleeper.dm
index 3b0a841a0d..83e0f8e0ba 100644
--- a/code/game/machinery/Sleeper.dm
+++ b/code/game/machinery/Sleeper.dm
@@ -3,7 +3,6 @@
icon = 'icons/obj/machines/sleeper.dmi'
icon_state = "console"
density = FALSE
- anchored = TRUE
/obj/machinery/sleeper
name = "sleeper"
@@ -11,7 +10,6 @@
icon = 'icons/obj/machines/sleeper.dmi'
icon_state = "sleeper"
density = FALSE
- anchored = TRUE
state_open = TRUE
circuit = /obj/item/circuitboard/machine/sleeper
var/efficiency = 1
diff --git a/code/game/machinery/_machinery.dm b/code/game/machinery/_machinery.dm
index 3d1d20dcae..7f661b4556 100644
--- a/code/game/machinery/_machinery.dm
+++ b/code/game/machinery/_machinery.dm
@@ -92,6 +92,7 @@ Class Procs:
pressure_resistance = 15
max_integrity = 200
+ anchored = TRUE
interaction_flags_atom = INTERACT_ATOM_ATTACK_HAND | INTERACT_ATOM_UI_INTERACT
var/stat = 0
diff --git a/code/game/machinery/ai_slipper.dm b/code/game/machinery/ai_slipper.dm
index a09db0a3cc..cac29404d2 100644
--- a/code/game/machinery/ai_slipper.dm
+++ b/code/game/machinery/ai_slipper.dm
@@ -5,7 +5,6 @@
icon_state = "ai-slipper0"
layer = PROJECTILE_HIT_THRESHHOLD_LAYER
plane = FLOOR_PLANE
- anchored = TRUE
max_integrity = 200
armor = list("melee" = 50, "bullet" = 20, "laser" = 20, "energy" = 20, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 50, "acid" = 30)
diff --git a/code/game/machinery/airlock_control.dm b/code/game/machinery/airlock_control.dm
index f02b765573..14dc7d05c2 100644
--- a/code/game/machinery/airlock_control.dm
+++ b/code/game/machinery/airlock_control.dm
@@ -1,154 +1,164 @@
-#define AIRLOCK_CONTROL_RANGE 5
-
-// This code allows for airlocks to be controlled externally by setting an id_tag and comm frequency (disables ID access)
-/obj/machinery/door/airlock
- var/id_tag
- var/frequency
- var/datum/radio_frequency/radio_connection
-
-
-/obj/machinery/door/airlock/receive_signal(datum/signal/signal)
- if(!signal)
- return
-
- if(id_tag != signal.data["tag"] || !signal.data["command"])
- return
-
- switch(signal.data["command"])
- if("open")
- open(1)
-
- if("close")
- close(1)
-
- if("unlock")
- locked = FALSE
- update_icon()
-
- if("lock")
- locked = TRUE
- update_icon()
-
- if("secure_open")
- locked = FALSE
- update_icon()
-
- sleep(2)
- open(1)
-
- locked = TRUE
- update_icon()
-
- if("secure_close")
- locked = FALSE
- close(1)
-
- locked = TRUE
- sleep(2)
- update_icon()
-
- send_status()
-
-
-/obj/machinery/door/airlock/proc/send_status()
- if(radio_connection)
- var/datum/signal/signal = new(list(
- "tag" = id_tag,
- "timestamp" = world.time,
- "door_status" = density ? "closed" : "open",
- "lock_status" = locked ? "locked" : "unlocked"
- ))
- radio_connection.post_signal(src, signal, range = AIRLOCK_CONTROL_RANGE, filter = RADIO_AIRLOCK)
-
-
-/obj/machinery/door/airlock/open(surpress_send)
- . = ..()
- if(!surpress_send)
- send_status()
-
-
-/obj/machinery/door/airlock/close(surpress_send)
- . = ..()
- if(!surpress_send)
- send_status()
-
-
-/obj/machinery/door/airlock/proc/set_frequency(new_frequency)
- SSradio.remove_object(src, frequency)
- if(new_frequency)
- frequency = new_frequency
- radio_connection = SSradio.add_object(src, frequency, RADIO_AIRLOCK)
-
-/obj/machinery/door/airlock/Destroy()
- if(frequency)
- SSradio.remove_object(src,frequency)
- return ..()
-
-/obj/machinery/airlock_sensor
- icon = 'icons/obj/airlock_machines.dmi'
- icon_state = "airlock_sensor_off"
- name = "airlock sensor"
- resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
-
- anchored = TRUE
- power_channel = ENVIRON
-
- var/id_tag
- var/master_tag
- var/frequency = FREQ_AIRLOCK_CONTROL
-
- var/datum/radio_frequency/radio_connection
-
- var/on = TRUE
- var/alert = FALSE
-
-
-/obj/machinery/airlock_sensor/update_icon()
- if(on)
- if(alert)
- icon_state = "airlock_sensor_alert"
- else
- icon_state = "airlock_sensor_standby"
- else
- icon_state = "airlock_sensor_off"
-
-/obj/machinery/airlock_sensor/attack_hand(mob/user)
- . = ..()
- if(.)
- return
- var/datum/signal/signal = new(list(
- "tag" = master_tag,
- "command" = "cycle"
- ))
-
- radio_connection.post_signal(src, signal, range = AIRLOCK_CONTROL_RANGE, filter = RADIO_AIRLOCK)
- flick("airlock_sensor_cycle", src)
-
-/obj/machinery/airlock_sensor/process()
- if(on)
- var/datum/gas_mixture/air_sample = return_air()
- var/pressure = round(air_sample.return_pressure(),0.1)
- alert = (pressure < ONE_ATMOSPHERE*0.8)
-
- var/datum/signal/signal = new(list(
- "tag" = id_tag,
- "timestamp" = world.time,
- "pressure" = num2text(pressure)
- ))
-
- radio_connection.post_signal(src, signal, range = AIRLOCK_CONTROL_RANGE, filter = RADIO_AIRLOCK)
-
- update_icon()
-
-/obj/machinery/airlock_sensor/proc/set_frequency(new_frequency)
- SSradio.remove_object(src, frequency)
- frequency = new_frequency
- radio_connection = SSradio.add_object(src, frequency, RADIO_AIRLOCK)
-
-/obj/machinery/airlock_sensor/Initialize()
- . = ..()
- set_frequency(frequency)
-
-/obj/machinery/airlock_sensor/Destroy()
- SSradio.remove_object(src,frequency)
+#define AIRLOCK_CONTROL_RANGE 5
+
+// This code allows for airlocks to be controlled externally by setting an id_tag and comm frequency (disables ID access)
+/obj/machinery/door/airlock
+ var/id_tag
+ var/frequency
+ var/datum/radio_frequency/radio_connection
+
+
+/obj/machinery/door/airlock/receive_signal(datum/signal/signal)
+ if(!signal)
+ return
+
+ if(id_tag != signal.data["tag"] || !signal.data["command"])
+ return
+
+ switch(signal.data["command"])
+ if("open")
+ open(1)
+
+ if("close")
+ close(1)
+
+ if("unlock")
+ locked = FALSE
+ update_icon()
+
+ if("lock")
+ locked = TRUE
+ update_icon()
+
+ if("secure_open")
+ locked = FALSE
+ update_icon()
+
+ sleep(2)
+ open(1)
+
+ locked = TRUE
+ update_icon()
+
+ if("secure_close")
+ locked = FALSE
+ close(1)
+
+ locked = TRUE
+ sleep(2)
+ update_icon()
+
+ send_status()
+
+
+/obj/machinery/door/airlock/proc/send_status()
+ if(radio_connection)
+ var/datum/signal/signal = new(list(
+ "tag" = id_tag,
+ "timestamp" = world.time,
+ "door_status" = density ? "closed" : "open",
+ "lock_status" = locked ? "locked" : "unlocked"
+ ))
+ radio_connection.post_signal(src, signal, range = AIRLOCK_CONTROL_RANGE, filter = RADIO_AIRLOCK)
+
+
+/obj/machinery/door/airlock/open(surpress_send)
+ . = ..()
+ if(!surpress_send)
+ send_status()
+
+
+/obj/machinery/door/airlock/close(surpress_send)
+ . = ..()
+ if(!surpress_send)
+ send_status()
+
+
+/obj/machinery/door/airlock/proc/set_frequency(new_frequency)
+ SSradio.remove_object(src, frequency)
+ if(new_frequency)
+ frequency = new_frequency
+ radio_connection = SSradio.add_object(src, frequency, RADIO_AIRLOCK)
+
+/obj/machinery/door/airlock/Destroy()
+ if(frequency)
+ SSradio.remove_object(src,frequency)
+ return ..()
+
+/obj/machinery/airlock_sensor
+ icon = 'icons/obj/airlock_machines.dmi'
+ icon_state = "airlock_sensor_off"
+ name = "airlock sensor"
+ resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
+
+ power_channel = ENVIRON
+
+ var/id_tag
+ var/master_tag
+ var/frequency = FREQ_AIRLOCK_CONTROL
+
+ var/datum/radio_frequency/radio_connection
+
+ var/on = TRUE
+ var/alert = FALSE
+
+/obj/machinery/airlock_sensor/incinerator_toxmix
+ id_tag = INCINERATOR_TOXMIX_AIRLOCK_SENSOR
+ master_tag = INCINERATOR_TOXMIX_AIRLOCK_CONTROLLER
+
+/obj/machinery/airlock_sensor/incinerator_atmos
+ id_tag = INCINERATOR_ATMOS_AIRLOCK_SENSOR
+ master_tag = INCINERATOR_ATMOS_AIRLOCK_CONTROLLER
+
+/obj/machinery/airlock_sensor/incinerator_syndicatelava
+ id_tag = INCINERATOR_SYNDICATELAVA_AIRLOCK_SENSOR
+ master_tag = INCINERATOR_SYNDICATELAVA_AIRLOCK_CONTROLLER
+
+/obj/machinery/airlock_sensor/update_icon()
+ if(on)
+ if(alert)
+ icon_state = "airlock_sensor_alert"
+ else
+ icon_state = "airlock_sensor_standby"
+ else
+ icon_state = "airlock_sensor_off"
+
+/obj/machinery/airlock_sensor/attack_hand(mob/user)
+ . = ..()
+ if(.)
+ return
+ var/datum/signal/signal = new(list(
+ "tag" = master_tag,
+ "command" = "cycle"
+ ))
+
+ radio_connection.post_signal(src, signal, range = AIRLOCK_CONTROL_RANGE, filter = RADIO_AIRLOCK)
+ flick("airlock_sensor_cycle", src)
+
+/obj/machinery/airlock_sensor/process()
+ if(on)
+ var/datum/gas_mixture/air_sample = return_air()
+ var/pressure = round(air_sample.return_pressure(),0.1)
+ alert = (pressure < ONE_ATMOSPHERE*0.8)
+
+ var/datum/signal/signal = new(list(
+ "tag" = id_tag,
+ "timestamp" = world.time,
+ "pressure" = num2text(pressure)
+ ))
+
+ radio_connection.post_signal(src, signal, range = AIRLOCK_CONTROL_RANGE, filter = RADIO_AIRLOCK)
+
+ update_icon()
+
+/obj/machinery/airlock_sensor/proc/set_frequency(new_frequency)
+ SSradio.remove_object(src, frequency)
+ frequency = new_frequency
+ radio_connection = SSradio.add_object(src, frequency, RADIO_AIRLOCK)
+
+/obj/machinery/airlock_sensor/Initialize()
+ . = ..()
+ set_frequency(frequency)
+
+/obj/machinery/airlock_sensor/Destroy()
+ SSradio.remove_object(src,frequency)
return ..()
\ No newline at end of file
diff --git a/code/game/machinery/announcement_system.dm b/code/game/machinery/announcement_system.dm
index 17ee13b634..959bcfab4d 100644
--- a/code/game/machinery/announcement_system.dm
+++ b/code/game/machinery/announcement_system.dm
@@ -2,7 +2,6 @@ GLOBAL_LIST_EMPTY(announcement_systems)
/obj/machinery/announcement_system
density = TRUE
- anchored = TRUE
name = "\improper Automated Announcement System"
desc = "An automated announcement system that handles minor announcements over the radio."
icon = 'icons/obj/machines/telecomms.dmi'
diff --git a/code/game/machinery/aug_manipulator.dm b/code/game/machinery/aug_manipulator.dm
index 8445f62d97..a168cdd4d5 100644
--- a/code/game/machinery/aug_manipulator.dm
+++ b/code/game/machinery/aug_manipulator.dm
@@ -4,7 +4,6 @@
icon = 'icons/obj/pda.dmi'
icon_state = "pdapainter"
density = TRUE
- anchored = TRUE
obj_integrity = 200
max_integrity = 200
var/obj/item/bodypart/storedpart
diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm
index d6154aeb8b..2a753fc333 100644
--- a/code/game/machinery/autolathe.dm
+++ b/code/game/machinery/autolathe.dm
@@ -7,13 +7,12 @@
desc = "It produces items using metal and glass."
icon_state = "autolathe"
density = TRUE
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 10
active_power_usage = 100
circuit = /obj/item/circuitboard/machine/autolathe
layer = BELOW_OBJ_LAYER
-
+
var/operating = FALSE
var/list/L = list()
var/list/LL = list()
diff --git a/code/game/machinery/buttons.dm b/code/game/machinery/buttons.dm
index 9511e8d0d4..f974f1b39b 100644
--- a/code/game/machinery/buttons.dm
+++ b/code/game/machinery/buttons.dm
@@ -11,7 +11,6 @@
var/id = null
var/initialized_button = 0
armor = list("melee" = 50, "bullet" = 50, "laser" = 50, "energy" = 50, "bomb" = 10, "bio" = 100, "rad" = 100, "fire" = 90, "acid" = 70)
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 2
resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
@@ -190,6 +189,31 @@
device = new /obj/item/assembly/control(src)
..()
+/obj/machinery/button/door/incinerator_vent_toxmix
+ name = "combustion chamber vent control"
+ id = INCINERATOR_TOXMIX_VENT
+ req_access = list(ACCESS_TOX)
+
+/obj/machinery/button/door/incinerator_vent_atmos_main
+ name = "turbine vent control"
+ id = INCINERATOR_ATMOS_MAINVENT
+ req_one_access = list(ACCESS_ATMOSPHERICS, ACCESS_MAINT_TUNNELS)
+
+/obj/machinery/button/door/incinerator_vent_atmos_aux
+ name = "combustion chamber vent control"
+ id = INCINERATOR_ATMOS_AUXVENT
+ req_one_access = list(ACCESS_ATMOSPHERICS, ACCESS_MAINT_TUNNELS)
+
+/obj/machinery/button/door/incinerator_vent_syndicatelava_main
+ name = "turbine vent control"
+ id = INCINERATOR_SYNDICATELAVA_MAINVENT
+ req_access = list(ACCESS_SYNDICATE)
+
+/obj/machinery/button/door/incinerator_vent_syndicatelava_aux
+ name = "combustion chamber vent control"
+ id = INCINERATOR_SYNDICATELAVA_AUXVENT
+ req_access = list(ACCESS_SYNDICATE)
+
/obj/machinery/button/massdriver
name = "mass driver button"
desc = "A remote control switch for a mass driver."
@@ -204,6 +228,19 @@
skin = "launcher"
device_type = /obj/item/assembly/control/igniter
+/obj/machinery/button/ignition/incinerator
+ name = "combustion chamber ignition switch"
+ desc = "A remote control switch for the combustion chamber's igniter."
+
+/obj/machinery/button/ignition/incinerator/toxmix
+ id = INCINERATOR_TOXMIX_IGNITER
+
+/obj/machinery/button/ignition/incinerator/atmos
+ id = INCINERATOR_ATMOS_IGNITER
+
+/obj/machinery/button/ignition/incinerator/syndicatelava
+ id = INCINERATOR_SYNDICATELAVA_IGNITER
+
/obj/machinery/button/flasher
name = "flasher button"
desc = "A remote control switch for a mounted flasher."
diff --git a/code/game/machinery/camera/camera.dm b/code/game/machinery/camera/camera.dm
index 3e8a0bb84d..5cf652f00d 100644
--- a/code/game/machinery/camera/camera.dm
+++ b/code/game/machinery/camera/camera.dm
@@ -19,9 +19,7 @@
integrity_failure = 50
var/list/network = list("ss13")
var/c_tag = null
- var/c_tag_order = 999
var/status = TRUE
- anchored = TRUE
var/start_active = FALSE //If it ignores the random chance to start broken on round start
var/invuln = null
var/obj/item/camera_bug/bug = null
@@ -36,6 +34,7 @@
var/alarm_on = FALSE
var/busy = FALSE
var/emped = FALSE //Number of consecutive EMP's on this camera
+ var/in_use_lights = 0
// Upgrades bitflag
var/upgrades = 0
@@ -285,7 +284,7 @@
else if (stat & EMPED)
icon_state = "[initial(icon_state)]emp"
else
- icon_state = "[initial(icon_state)]"
+ icon_state = "[initial(icon_state)][in_use_lights ? "_in_use" : ""]"
/obj/machinery/camera/proc/toggle_cam(mob/user, displaymessage = 1)
status = !status
diff --git a/code/game/machinery/camera/tracking.dm b/code/game/machinery/camera/tracking.dm
index c327f4c17a..1dbfe9d055 100644
--- a/code/game/machinery/camera/tracking.dm
+++ b/code/game/machinery/camera/tracking.dm
@@ -146,10 +146,6 @@
for (var/j = 1 to i - 1)
a = L[j]
b = L[j + 1]
- if (a.c_tag_order != b.c_tag_order)
- if (a.c_tag_order > b.c_tag_order)
- L.Swap(j, j + 1)
- else
- if (sorttext(a.c_tag, b.c_tag) < 0)
- L.Swap(j, j + 1)
+ if (sorttext(a.c_tag, b.c_tag) < 0)
+ L.Swap(j, j + 1)
return L
diff --git a/code/game/machinery/cell_charger.dm b/code/game/machinery/cell_charger.dm
index e6816a3170..9a59d4aea5 100644
--- a/code/game/machinery/cell_charger.dm
+++ b/code/game/machinery/cell_charger.dm
@@ -3,7 +3,6 @@
desc = "It charges power cells."
icon = 'icons/obj/power.dmi'
icon_state = "ccharger"
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 5
active_power_usage = 60
diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm
index d1f4a4be86..f07002236d 100644
--- a/code/game/machinery/cloning.dm
+++ b/code/game/machinery/cloning.dm
@@ -9,7 +9,6 @@
#define SPEAK(message) radio.talk_into(src, message, radio_channel, get_spans(), get_default_language())
/obj/machinery/clonepod
- anchored = TRUE
name = "cloning pod"
desc = "An electronically-lockable pod for growing organic tissue."
density = TRUE
@@ -204,7 +203,8 @@
H.faction |= factions
for(var/V in quirks)
- new V(H)
+ var/datum/quirk/Q = new V(H)
+ Q.on_clone(quirks[V])
H.set_cloned_appearance()
diff --git a/code/game/machinery/computer/_computer.dm b/code/game/machinery/computer/_computer.dm
index cbb6806581..2a9a57e630 100644
--- a/code/game/machinery/computer/_computer.dm
+++ b/code/game/machinery/computer/_computer.dm
@@ -3,7 +3,6 @@
icon = 'icons/obj/computer.dmi'
icon_state = "computer"
density = TRUE
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 300
active_power_usage = 300
diff --git a/code/game/machinery/computer/apc_control.dm b/code/game/machinery/computer/apc_control.dm
index 648432c0ea..6ade93b520 100644
--- a/code/game/machinery/computer/apc_control.dm
+++ b/code/game/machinery/computer/apc_control.dm
@@ -122,12 +122,12 @@
active_apc.locked = TRUE
active_apc.update_icon()
active_apc = null
- to_chat(usr, "[icon2html(src, usr)] Connected to APC in [APC.area]. Interface request sent.")
- log_activity("remotely accessed APC in [APC.area]")
+ to_chat(usr, "[icon2html(src, usr)] Connected to APC in [get_area_name(APC.area, TRUE)]. Interface request sent.")
+ log_activity("remotely accessed APC in [get_area_name(APC.area, TRUE)]")
APC.ui_interact(usr, state = GLOB.not_incapacitated_state)
playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0)
- message_admins("[key_name_admin(usr)] remotely accessed [APC] from [src] at [get_area(src)].")
- log_game("[key_name(usr)] remotely accessed [APC] from [src] at [get_area(src)].")
+ message_admins("[ADMIN_LOOKUPFLW(usr)] remotely accessed [APC] from [src] at [AREACOORD(src)].")
+ log_game("[key_name(usr)] remotely accessed [APC] from [src] at [AREACOORD(src)].")
if(APC.locked)
APC.say("Remote access detected. Interface unlocked.")
playsound(APC, 'sound/machines/boltsup.ogg', 25, 0)
@@ -188,7 +188,7 @@
log_activity("logged in")
else if(!(obj_flags & EMAGGED))
user.visible_message("You emag [src], disabling precise logging and allowing you to clear logs.")
- log_game("[key_name(user)] emagged [src] at [get_area(src)], disabling operator tracking.")
+ log_game("[key_name(user)] emagged [src] at [AREACOORD(src)], disabling operator tracking.")
obj_flags |= EMAGGED
playsound(src, "sparks", 50, 1)
diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm
index 9dad813677..abb2f3c079 100644
--- a/code/game/machinery/computer/arcade.dm
+++ b/code/game/machinery/computer/arcade.dm
@@ -51,7 +51,9 @@
/obj/item/hot_potato/harmless/toy = 1,
/obj/item/card/emagfake = 1,
/obj/item/clothing/shoes/wheelys = 2,
- /obj/item/clothing/shoes/kindleKicks = 2)
+ /obj/item/clothing/shoes/kindleKicks = 2,
+ /obj/item/storage/belt/military/snack = 2
+ )
light_color = LIGHT_COLOR_GREEN
@@ -233,7 +235,7 @@
if(obj_flags & EMAGGED)
new /obj/effect/spawner/newbomb/timer/syndicate(loc)
new /obj/item/clothing/head/collectable/petehat(loc)
- message_admins("[key_name_admin(usr)] has outbombed Cuban Pete and been awarded a bomb.")
+ message_admins("[ADMIN_LOOKUPFLW(usr)] has outbombed Cuban Pete and been awarded a bomb.")
log_game("[key_name(usr)] has outbombed Cuban Pete and been awarded a bomb.")
Reset()
obj_flags &= ~EMAGGED
@@ -1028,7 +1030,7 @@
say("Congratulations, you made it to Orion!")
if(obj_flags & EMAGGED)
new /obj/item/orion_ship(loc)
- message_admins("[key_name_admin(usr)] made it to Orion on an emagged machine and got an explosive toy ship.")
+ message_admins("[ADMIN_LOOKUPFLW(usr)] made it to Orion on an emagged machine and got an explosive toy ship.")
log_game("[key_name(usr)] made it to Orion on an emagged machine and got an explosive toy ship.")
else
prizevend(user)
@@ -1073,8 +1075,8 @@
if(active)
return
- message_admins("[key_name_admin(usr)] primed an explosive Orion ship for detonation.")
- log_game("[key_name(usr)] primed an explosive Orion ship for detonation.")
+ message_admins("[ADMIN_LOOKUPFLW(usr)] primed an explosive Orion ship for detonation at [AREACOORD(usr)].")
+ log_game("[key_name(usr)] primed an explosive Orion ship for detonation at [AREACOORD(usr)].")
to_chat(user, "You flip the switch on the underside of [src].")
active = 1
diff --git a/code/game/machinery/computer/atmos_control.dm b/code/game/machinery/computer/atmos_control.dm
index 6e4507c465..7eb8e206b5 100644
--- a/code/game/machinery/computer/atmos_control.dm
+++ b/code/game/machinery/computer/atmos_control.dm
@@ -6,7 +6,6 @@
name = "gas sensor"
icon = 'icons/obj/stationobjs.dmi'
icon_state = "gsensor1"
- anchored = TRUE
var/on = TRUE
diff --git a/code/game/machinery/computer/camera.dm b/code/game/machinery/computer/camera.dm
index 4ccf9d588c..7e901667ab 100644
--- a/code/game/machinery/computer/camera.dm
+++ b/code/game/machinery/computer/camera.dm
@@ -196,7 +196,7 @@
icon_keyboard = "mining_key"
network = list("mine")
circuit = /obj/item/circuitboard/computer/mining
-
+
/obj/machinery/computer/security/research
name = "research camera console"
desc = "Used to access the various cameras in science."
diff --git a/code/game/machinery/computer/camera_advanced.dm b/code/game/machinery/computer/camera_advanced.dm
index 6112a5d760..26a8ac940e 100644
--- a/code/game/machinery/computer/camera_advanced.dm
+++ b/code/game/machinery/computer/camera_advanced.dm
@@ -190,7 +190,7 @@
else
moveToNullspace()
if(use_static)
- GLOB.cameranet.visibility(src)
+ GLOB.cameranet.visibility(src, GetViewerClient())
if(visible_icon)
if(eye_user.client)
eye_user.client.images -= user_image
diff --git a/code/game/machinery/computer/cloning.dm b/code/game/machinery/computer/cloning.dm
index 95b4ea9f80..4846610671 100644
--- a/code/game/machinery/computer/cloning.dm
+++ b/code/game/machinery/computer/cloning.dm
@@ -1,3 +1,5 @@
+#define AUTOCLONING_MINIMAL_LEVEL 3
+
/obj/machinery/computer/cloning
name = "cloning console"
desc = "Used to clone people and manage DNA."
@@ -79,6 +81,10 @@
src.scanner = findscanner()
if(findfirstcloner && !LAZYLEN(pods))
findcloner()
+ if(!autoprocess)
+ STOP_PROCESSING(SSmachines, src)
+ else
+ START_PROCESSING(SSmachines, src)
/obj/machinery/computer/cloning/proc/findscanner()
var/obj/machinery/dna_scannernew/scannerf = null
@@ -151,7 +157,7 @@
var/dat = ""
dat += "Refresh"
- if(scanner && HasEfficientPod() && scanner.scan_level > 2)
+ if(scanner && HasEfficientPod() && scanner.scan_level >= AUTOCLONING_MINIMAL_LEVEL)
if(!autoprocess)
dat += "Autoprocess"
else
@@ -276,10 +282,13 @@
if(href_list["task"])
switch(href_list["task"])
if("autoprocess")
- autoprocess = 1
- playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0)
+ if(scanner && HasEfficientPod() && scanner.scan_level >= AUTOCLONING_MINIMAL_LEVEL)
+ autoprocess = TRUE
+ START_PROCESSING(SSmachines, src)
+ playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0)
if("stopautoprocess")
- autoprocess = 0
+ autoprocess = FALSE
+ STOP_PROCESSING(SSmachines, src)
playsound(src, 'sound/machines/terminal_prompt_deny.ogg', 50, 0)
else if ((href_list["scan"]) && !isnull(scanner) && scanner.is_operational())
@@ -476,7 +485,7 @@
R.fields["quirks"] = list()
for(var/V in mob_occupant.roundstart_quirks)
var/datum/quirk/T = V
- R.fields["quirks"] += T.type
+ R.fields["quirks"][T.type] = T.clone_data()
if (!isnull(mob_occupant.mind)) //Save that mind so traitors can continue traitoring after cloning.
R.fields["mind"] = "[REF(mob_occupant.mind)]"
diff --git a/code/game/machinery/computer/communications.dm b/code/game/machinery/computer/communications.dm
index 14d02e9752..61dc3ad919 100755
--- a/code/game/machinery/computer/communications.dm
+++ b/code/game/machinery/computer/communications.dm
@@ -51,13 +51,11 @@
/obj/machinery/computer/communications/Topic(href, href_list)
if(..())
return
- if(!is_station_level(z) && !is_centcom_level(z)) //Can only use on centcom and SS13
+ if(!is_station_level(z) && !is_transit_level(z)) //Can only use in transit and on SS13
to_chat(usr, "Unable to establish a connection: \black You're too far away from the station!")
return
usr.set_machine(src)
- var/area/A = get_area(usr)
- var/area_name = A.name
if(!href_list["operation"])
return
@@ -115,9 +113,9 @@
playsound(src, 'sound/machines/terminal_prompt_confirm.ogg', 50, 0)
//Only notify people if an actual change happened
var/security_level = get_security_level()
- log_game("[key_name(usr)] has changed the security level to [security_level].")
- message_admins("[key_name_admin(usr)] has changed the security level to [security_level].")
- deadchat_broadcast("[usr.real_name] has changed the security level to [security_level] at [area_name].", usr)
+ log_game("[key_name(usr)] has changed the security level to [security_level] with [src] at [AREACOORD(usr)].")
+ message_admins("[ADMIN_LOOKUPFLW(usr)] has changed the security level to [security_level] with [src] at [AREACOORD(usr)].")
+ deadchat_broadcast("[usr.real_name] has changed the security level to [security_level] with [src] at [get_area_name(usr, TRUE)].", usr)
tmp_alertlevel = 0
else
to_chat(usr, "You are not authorized to do this!")
@@ -146,7 +144,7 @@
send2otherserver("[station_name()]", input,"Comms_Console")
minor_announce(input, title = "Outgoing message to allied station")
log_talk(usr,"[key_name(usr)] has sent a message to the other server: [input]",LOGSAY)
- message_admins("[key_name_admin(usr)] has sent a message to the other server.")
+ message_admins("[ADMIN_LOOKUPFLW(usr)] has sent a message to the other server.")
deadchat_broadcast("[usr.real_name] has sent an outgoing message to the other station(s).", usr)
CM.lastTimeUsed = world.time
@@ -176,7 +174,7 @@
M.action_load(S)
SSshuttle.points -= S.credit_cost
minor_announce("[usr.real_name] has purchased [S.name] for [S.credit_cost] credits." , "Shuttle Purchase")
- message_admins("[key_name_admin(usr)] purchased [S.name].")
+ message_admins("[ADMIN_LOOKUPFLW(usr)] purchased [S.name].")
SSblackbox.record_feedback("text", "shuttle_purchase", 1, "[S.name]")
else
to_chat(usr, "Something went wrong! The shuttle exchange system seems to be down.")
@@ -249,14 +247,14 @@
if("enableemergency")
make_maint_all_access()
log_game("[key_name(usr)] enabled emergency maintenance access.")
- message_admins("[key_name_admin(usr)] enabled emergency maintenance access.")
- deadchat_broadcast("[usr.real_name] enabled emergency maintenance access at [area_name].", usr)
+ message_admins("[ADMIN_LOOKUPFLW(usr)] enabled emergency maintenance access.")
+ deadchat_broadcast("[usr.real_name] enabled emergency maintenance access at [get_area_name(usr, TRUE)].", usr)
state = STATE_DEFAULT
if("disableemergency")
revoke_maint_all_access()
log_game("[key_name(usr)] disabled emergency maintenance access.")
- message_admins("[key_name_admin(usr)] disabled emergency maintenance access.")
- deadchat_broadcast("[usr.real_name] disabled emergency maintenance access at [area_name].", usr)
+ message_admins("[ADMIN_LOOKUPFLW(usr)] disabled emergency maintenance access.")
+ deadchat_broadcast("[usr.real_name] disabled emergency maintenance access at [get_area_name(usr, TRUE)].", usr)
state = STATE_DEFAULT
// Status display stuff
@@ -290,7 +288,7 @@
CentCom_announce(input, usr)
to_chat(usr, "Message transmitted to Central Command.")
log_talk(usr,"[key_name(usr)] has made a CentCom announcement: [input]",LOGSAY)
- deadchat_broadcast("[usr.real_name] has messaged CentCom, \"[input]\" at [area_name].", usr)
+ deadchat_broadcast("[usr.real_name] has messaged CentCom, \"[input]\" at [get_area_name(usr, TRUE)].", usr)
CM.lastTimeUsed = world.time
// OMG SYNDICATE ...LETTERHEAD
@@ -307,7 +305,7 @@
Syndicate_announce(input, usr)
to_chat(usr, "SYSERR @l(19833)of(transmit.dm): !@$ MESSAGE TRANSMITTED TO SYNDICATE COMMAND.")
log_talk(usr,"[key_name(usr)] has made a Syndicate announcement: [input]",LOGSAY)
- deadchat_broadcast("[usr.real_name] has messaged the Syndicate, \"[input]\" at [area_name].", usr)
+ deadchat_broadcast("[usr.real_name] has messaged the Syndicate, \"[input]\" at [get_area_name(usr, TRUE)].", usr)
CM.lastTimeUsed = world.time
if("RestoreBackup")
@@ -388,9 +386,9 @@
if(GLOB.security_level != old_level)
//Only notify people if an actual change happened
var/security_level = get_security_level()
- log_game("[key_name(usr)] has changed the security level to [security_level].")
- message_admins("[key_name_admin(usr)] has changed the security level to [security_level].")
- deadchat_broadcast("[usr.real_name] has changed the security level to [security_level].", usr)
+ log_game("[key_name(usr)] has changed the security level to [security_level] from [src] at [AREACOORD(usr)].")
+ message_admins("[ADMIN_LOOKUPFLW(usr)] has changed the security level to [security_level] from [src] at [AREACOORD(usr)].")
+ deadchat_broadcast("[usr.real_name] has changed the security level to [security_level] from [src] at [get_area_name(usr, TRUE)].", usr)
tmp_alertlevel = 0
aistate = STATE_DEFAULT
if("ai-changeseclevel")
@@ -400,13 +398,13 @@
if("ai-enableemergency")
make_maint_all_access()
log_game("[key_name(usr)] enabled emergency maintenance access.")
- message_admins("[key_name_admin(usr)] enabled emergency maintenance access.")
+ message_admins("[ADMIN_LOOKUPFLW(usr)] enabled emergency maintenance access.")
deadchat_broadcast("[usr.real_name] enabled emergency maintenance access.", usr)
aistate = STATE_DEFAULT
if("ai-disableemergency")
revoke_maint_all_access()
log_game("[key_name(usr)] disabled emergency maintenance access.")
- message_admins("[key_name_admin(usr)] disabled emergency maintenance access.")
+ message_admins("[ADMIN_LOOKUPFLW(usr)] disabled emergency maintenance access.")
deadchat_broadcast("[usr.real_name] disabled emergency maintenance access.", usr)
aistate = STATE_DEFAULT
@@ -556,6 +554,9 @@
if(STATE_PURCHASE)
dat += "Budget: [SSshuttle.points] Credits.
"
+ dat += "
"
+ dat += "Caution: Purchasing dangerous shuttles may lead to mutiny and/or death.
"
+ dat += "
"
for(var/shuttle_id in SSmapping.shuttle_templates)
var/datum/map_template/shuttle/S = SSmapping.shuttle_templates[shuttle_id]
if(S.can_be_bought && S.credit_cost < INFINITY)
@@ -700,8 +701,7 @@
if(!input || !user.canUseTopic(src))
return
SScommunications.make_announcement(user, is_silicon, input)
- var/area/A = get_area(user)
- deadchat_broadcast("[user.real_name] made an priority announcement at [A.name].", user)
+ deadchat_broadcast("[user.real_name] made an priority announcement from [get_area_name(usr, TRUE)].", user)
/obj/machinery/computer/communications/proc/post_status(command, data1, data2)
diff --git a/code/game/machinery/computer/dna_console.dm b/code/game/machinery/computer/dna_console.dm
index 0b90f1df14..72e17679f5 100644
--- a/code/game/machinery/computer/dna_console.dm
+++ b/code/game/machinery/computer/dna_console.dm
@@ -33,7 +33,6 @@
var/obj/machinery/dna_scannernew/connected = null
var/obj/item/disk/data/diskette = null
var/list/delayed_action = null
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 10
active_power_usage = 400
diff --git a/code/game/machinery/computer/gulag_teleporter.dm b/code/game/machinery/computer/gulag_teleporter.dm
index 4e80883a31..98c398a2c2 100644
--- a/code/game/machinery/computer/gulag_teleporter.dm
+++ b/code/game/machinery/computer/gulag_teleporter.dm
@@ -148,7 +148,7 @@
id_goal_not_set = TRUE
id.goal = default_goal
say("[id]'s ID card goal defaulting to [id.goal] points.")
- log_game("[user]([user.ckey] teleported [prisoner]([prisoner.ckey]) to the Labor Camp ([beacon.x], [beacon.y], [beacon.z]) for [id_goal_not_set ? "default goal of ":""][id.goal] points.")
+ log_game("[user]([user.ckey] teleported [prisoner]([prisoner.ckey]) to the Labor Camp [COORD(beacon)] for [id_goal_not_set ? "default goal of ":""][id.goal] points.")
teleporter.handle_prisoner(id, temporary_record)
playsound(src, 'sound/weapons/emitter.ogg', 50, 1)
prisoner.forceMove(get_turf(beacon))
diff --git a/code/game/machinery/computer/robot.dm b/code/game/machinery/computer/robot.dm
index c0d514f9a5..41aaac85db 100644
--- a/code/game/machinery/computer/robot.dm
+++ b/code/game/machinery/computer/robot.dm
@@ -104,7 +104,7 @@
var/choice = input("Are you certain you wish to detonate [R.name]?") in list("Confirm", "Abort")
if(choice == "Confirm" && can_control(usr, R) && !..())
var/turf/T = get_turf(R)
- message_admins("[ADMIN_LOOKUPFLW(usr)] detonated [key_name(R, R.client)][ADMIN_JMP(T)]!")
+ message_admins("[ADMIN_LOOKUPFLW(usr)] detonated [key_name_admin(R, R.client)] at [ADMIN_VERBOSEJMP(T)]!")
log_game("\[key_name(usr)] detonated [key_name(R)]!")
if(R.connected_ai)
to_chat(R.connected_ai, "
ALERT - Cyborg detonation detected: [R.name]
")
@@ -134,7 +134,7 @@
var/mob/living/silicon/robot/R = locate(href_list["magbot"]) in GLOB.silicon_mobs
if(istype(R) && !R.emagged && (R.connected_ai == usr || IsAdminGhost(usr)) && !R.scrambledcodes && can_control(usr, R))
log_game("[key_name(usr)] emagged [R.name] using robotic console!")
- message_admins("[key_name_admin(usr)] emagged cyborg [key_name_admin(R)] using robotic console!")
+ message_admins("[ADMIN_LOOKUPFLW(usr)] emagged cyborg [key_name_admin(R)] using robotic console!")
R.SetEmagged(1)
else if(href_list["convert"])
@@ -142,7 +142,7 @@
var/mob/living/silicon/robot/R = locate(href_list["convert"]) in GLOB.silicon_mobs
if(istype(R) && !is_servant_of_ratvar(R) && R.connected_ai == usr)
log_game("[key_name(usr)] converted [R.name] using robotic console!")
- message_admins("[key_name_admin(usr)] converted cyborg [key_name_admin(R)] using robotic console!")
+ message_admins("[ADMIN_LOOKUPFLW(usr)] converted cyborg [key_name_admin(R)] using robotic console!")
add_servant_of_ratvar(R)
else if (href_list["killdrone"])
@@ -152,7 +152,7 @@
to_chat(usr, "ERROR: [D] is not responding to external commands.")
else
var/turf/T = get_turf(D)
- message_admins("[ADMIN_LOOKUPFLW(usr)] detonated [key_name_admin(D)][ADMIN_JMP(T)]!")
+ message_admins("[ADMIN_LOOKUPFLW(usr)] detonated [key_name_admin(D)] at [ADMIN_VERBOSEJMP(T)]!")
log_game("[key_name(usr)] detonated [key_name(D)]!")
var/datum/effect_system/spark_spread/s = new /datum/effect_system/spark_spread
s.set_up(3, 1, D)
diff --git a/code/game/machinery/dance_machine.dm b/code/game/machinery/dance_machine.dm
index 750d83eecc..5fd40a401e 100644
--- a/code/game/machinery/dance_machine.dm
+++ b/code/game/machinery/dance_machine.dm
@@ -3,7 +3,6 @@
desc = "A classic music player."
icon = 'icons/obj/stationobjs.dmi'
icon_state = "jukebox"
- anchored = TRUE
verb_say = "states"
density = TRUE
req_access = list(ACCESS_BAR)
diff --git a/code/game/machinery/defibrillator_mount.dm b/code/game/machinery/defibrillator_mount.dm
index c1c755251d..1c72e79363 100644
--- a/code/game/machinery/defibrillator_mount.dm
+++ b/code/game/machinery/defibrillator_mount.dm
@@ -7,7 +7,6 @@
icon = 'icons/obj/machines/defib_mount.dmi'
icon_state = "defibrillator_mount"
density = FALSE
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 1
power_channel = EQUIP
diff --git a/code/game/machinery/dish_drive.dm b/code/game/machinery/dish_drive.dm
index 2254500afe..7e960d4ebc 100644
--- a/code/game/machinery/dish_drive.dm
+++ b/code/game/machinery/dish_drive.dm
@@ -7,7 +7,6 @@
icon_state = "synthesizer"
idle_power_usage = 8 //5 with default parts
active_power_usage = 13 //10 with default parts
- anchored = TRUE
density = FALSE
circuit = /obj/item/circuitboard/machine/dish_drive
var/static/list/item_types = list(/obj/item/trash/waffles,
diff --git a/code/game/machinery/dna_scanner.dm b/code/game/machinery/dna_scanner.dm
index 2a8868cb4f..507d6c6f43 100644
--- a/code/game/machinery/dna_scanner.dm
+++ b/code/game/machinery/dna_scanner.dm
@@ -4,7 +4,6 @@
icon = 'icons/obj/machines/cloning.dmi'
icon_state = "scanner"
density = TRUE
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 50
active_power_usage = 300
diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm
index 00c683af85..65d1264030 100644
--- a/code/game/machinery/doors/airlock.dm
+++ b/code/game/machinery/doors/airlock.dm
@@ -178,7 +178,7 @@
limit--
while(!FoundDoor && limit)
if (!FoundDoor)
- log_world("### MAP WARNING, [src] at [get_area_name(src, TRUE)] [COORD(src)] failed to find a valid airlock to cyclelink with!")
+ log_world("### MAP WARNING, [src] at [AREACOORD(src)] failed to find a valid airlock to cyclelink with!")
return
FoundDoor.cyclelinkedairlock = src
cyclelinkedairlock = FoundDoor
diff --git a/code/game/machinery/doors/airlock_types.dm b/code/game/machinery/doors/airlock_types.dm
index 69621adc84..8704a4c749 100644
--- a/code/game/machinery/doors/airlock_types.dm
+++ b/code/game/machinery/doors/airlock_types.dm
@@ -79,6 +79,20 @@
opacity = 0
glass = TRUE
+/obj/machinery/door/airlock/glass/incinerator
+ autoclose = FALSE
+ frequency = FREQ_AIRLOCK_CONTROL
+ heat_proof = TRUE
+ req_access = list(ACCESS_SYNDICATE)
+
+/obj/machinery/door/airlock/glass/incinerator/syndicatelava_interior
+ name = "Turbine Interior Airlock"
+ id_tag = INCINERATOR_SYNDICATELAVA_AIRLOCK_INTERIOR
+
+/obj/machinery/door/airlock/glass/incinerator/syndicatelava_exterior
+ name = "Turbine Exterior Airlock"
+ id_tag = INCINERATOR_SYNDICATELAVA_AIRLOCK_EXTERIOR
+
/obj/machinery/door/airlock/command/glass
opacity = 0
glass = TRUE
@@ -107,6 +121,20 @@
opacity = 0
glass = TRUE
+/obj/machinery/door/airlock/research/glass/incinerator
+ autoclose = FALSE
+ frequency = FREQ_AIRLOCK_CONTROL
+ heat_proof = TRUE
+ req_access = list(ACCESS_TOX)
+
+/obj/machinery/door/airlock/research/glass/incinerator/toxmix_interior
+ name = "Mixing Room Interior Airlock"
+ id_tag = INCINERATOR_TOXMIX_AIRLOCK_INTERIOR
+
+/obj/machinery/door/airlock/research/glass/incinerator/toxmix_exterior
+ name = "Mixing Room Exterior Airlock"
+ id_tag = INCINERATOR_TOXMIX_AIRLOCK_EXTERIOR
+
/obj/machinery/door/airlock/mining/glass
opacity = 0
glass = TRUE
@@ -222,8 +250,8 @@
/obj/machinery/door/airlock/plasma/attackby(obj/item/C, mob/user, params)
if(C.is_hot() > 300)//If the temperature of the object is over 300, then ignite
- message_admins("Plasma airlock ignited by [ADMIN_LOOKUPFLW(user)] in [ADMIN_COORDJMP(src)]")
- log_game("Plasma airlock ignited by [key_name(user)] in [COORD(src)]")
+ message_admins("Plasma airlock ignited by [ADMIN_LOOKUPFLW(user)] in [ADMIN_VERBOSEJMP(src)]")
+ log_game("Plasma airlock ignited by [key_name(user)] in [AREACOORD(src)]")
ignite(C.is_hot())
else
return ..()
@@ -287,6 +315,20 @@
opacity = 0
glass = TRUE
+/obj/machinery/door/airlock/public/glass/incinerator
+ autoclose = FALSE
+ frequency = FREQ_AIRLOCK_CONTROL
+ heat_proof = TRUE
+ req_one_access = list(ACCESS_ATMOSPHERICS, ACCESS_MAINT_TUNNELS)
+
+/obj/machinery/door/airlock/public/glass/incinerator/atmos_interior
+ name = "Turbine Interior Airlock"
+ id_tag = INCINERATOR_ATMOS_AIRLOCK_INTERIOR
+
+/obj/machinery/door/airlock/public/glass/incinerator/atmos_exterior
+ name = "Turbine Exterior Airlock"
+ id_tag = INCINERATOR_ATMOS_AIRLOCK_EXTERIOR
+
//////////////////////////////////
/*
External Airlocks
diff --git a/code/game/machinery/doors/brigdoors.dm b/code/game/machinery/doors/brigdoors.dm
index 3ab819f275..3542b4e8bd 100644
--- a/code/game/machinery/doors/brigdoors.dm
+++ b/code/game/machinery/doors/brigdoors.dm
@@ -24,7 +24,6 @@
icon_state = "frame"
desc = "A remote control for a door."
req_access = list(ACCESS_SECURITY)
- anchored = TRUE
density = FALSE
var/id = null // id of linked machinery/lockers
diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm
index 70268584d1..8b94648ec9 100644
--- a/code/game/machinery/doors/door.dm
+++ b/code/game/machinery/doors/door.dm
@@ -3,7 +3,6 @@
desc = "It opens and closes."
icon = 'icons/obj/doors/Doorint.dmi'
icon_state = "door1"
- anchored = TRUE
opacity = 1
density = TRUE
layer = OPEN_DOOR_LAYER
diff --git a/code/game/machinery/doors/poddoor.dm b/code/game/machinery/doors/poddoor.dm
index 9e467e8926..a581b20f52 100644
--- a/code/game/machinery/doors/poddoor.dm
+++ b/code/game/machinery/doors/poddoor.dm
@@ -36,6 +36,26 @@
else
INVOKE_ASYNC(src, .proc/close)
+/obj/machinery/door/poddoor/incinerator_toxmix
+ name = "combustion chamber vent"
+ id = INCINERATOR_TOXMIX_VENT
+
+/obj/machinery/door/poddoor/incinerator_atmos_main
+ name = "turbine vent"
+ id = INCINERATOR_ATMOS_MAINVENT
+
+/obj/machinery/door/poddoor/incinerator_atmos_aux
+ name = "combustion chamber vent"
+ id = INCINERATOR_ATMOS_AUXVENT
+
+/obj/machinery/door/poddoor/incinerator_syndicatelava_main
+ name = "turbine vent"
+ id = INCINERATOR_SYNDICATELAVA_MAINVENT
+
+/obj/machinery/door/poddoor/incinerator_syndicatelava_aux
+ name = "combustion chamber vent"
+ id = INCINERATOR_SYNDICATELAVA_AUXVENT
+
/obj/machinery/door/poddoor/CollidedWith(atom/movable/AM)
if(density)
return 0
diff --git a/code/game/machinery/doppler_array.dm b/code/game/machinery/doppler_array.dm
index 0abc3e8cea..1131c55eb3 100644
--- a/code/game/machinery/doppler_array.dm
+++ b/code/game/machinery/doppler_array.dm
@@ -6,7 +6,6 @@ GLOBAL_LIST_EMPTY(doppler_arrays)
icon = 'icons/obj/machines/research.dmi'
icon_state = "tdoppler"
density = TRUE
- anchored = TRUE
var/integrated = FALSE
var/max_dist = 150
verb_say = "states coldly"
diff --git a/code/game/machinery/droneDispenser.dm b/code/game/machinery/droneDispenser.dm
index ffed5c7661..ffe7961534 100644
--- a/code/game/machinery/droneDispenser.dm
+++ b/code/game/machinery/droneDispenser.dm
@@ -8,7 +8,6 @@
icon = 'icons/obj/machines/droneDispenser.dmi'
icon_state = "on"
- anchored = TRUE
density = TRUE
max_integrity = 250
diff --git a/code/game/machinery/embedded_controller/access_controller.dm b/code/game/machinery/embedded_controller/access_controller.dm
index 63b7f2caeb..70ce3d36ae 100644
--- a/code/game/machinery/embedded_controller/access_controller.dm
+++ b/code/game/machinery/embedded_controller/access_controller.dm
@@ -6,7 +6,6 @@
/obj/machinery/doorButtons
power_channel = ENVIRON
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 2
active_power_usage = 4
diff --git a/code/game/machinery/embedded_controller/airlock_controller.dm b/code/game/machinery/embedded_controller/airlock_controller.dm
index e2402177e2..8b9255b5ac 100644
--- a/code/game/machinery/embedded_controller/airlock_controller.dm
+++ b/code/game/machinery/embedded_controller/airlock_controller.dm
@@ -7,11 +7,11 @@
/datum/computer/file/embedded_program/airlock_controller
var/id_tag
- var/exterior_door_tag
- var/interior_door_tag
- var/airpump_tag
- var/sensor_tag
- var/sanitize_external
+ var/exterior_door_tag //Burn chamber facing door
+ var/interior_door_tag //Station facing door
+ var/airpump_tag //See: dp_vent_pump.dm
+ var/sensor_tag //See: /obj/machinery/airlock_sensor
+ var/sanitize_external //Before the interior airlock opens, do we first drain all gases inside the chamber and then repressurize?
state = AIRLOCK_STATE_CLOSED
var/target_state = AIRLOCK_STATE_CLOSED
@@ -211,6 +211,33 @@
var/sensor_tag
var/sanitize_external
+/obj/machinery/embedded_controller/radio/airlock_controller/incinerator_toxmix
+ name = "Incinerator Access Console"
+ airpump_tag = INCINERATOR_TOXMIX_DP_VENTPUMP
+ exterior_door_tag = INCINERATOR_TOXMIX_AIRLOCK_EXTERIOR
+ id_tag = INCINERATOR_TOXMIX_AIRLOCK_CONTROLLER
+ interior_door_tag = INCINERATOR_TOXMIX_AIRLOCK_INTERIOR
+ sanitize_external = TRUE
+ sensor_tag = INCINERATOR_TOXMIX_AIRLOCK_SENSOR
+
+/obj/machinery/embedded_controller/radio/airlock_controller/incinerator_atmos
+ name = "Incinerator Access Console"
+ airpump_tag = INCINERATOR_ATMOS_DP_VENTPUMP
+ exterior_door_tag = INCINERATOR_ATMOS_AIRLOCK_EXTERIOR
+ id_tag = INCINERATOR_ATMOS_AIRLOCK_CONTROLLER
+ interior_door_tag = INCINERATOR_ATMOS_AIRLOCK_INTERIOR
+ sanitize_external = TRUE
+ sensor_tag = INCINERATOR_ATMOS_AIRLOCK_SENSOR
+
+/obj/machinery/embedded_controller/radio/airlock_controller/incinerator_syndicatelava
+ name = "Incinerator Access Console"
+ airpump_tag = INCINERATOR_SYNDICATELAVA_DP_VENTPUMP
+ exterior_door_tag = INCINERATOR_SYNDICATELAVA_AIRLOCK_EXTERIOR
+ id_tag = INCINERATOR_SYNDICATELAVA_AIRLOCK_CONTROLLER
+ interior_door_tag = INCINERATOR_SYNDICATELAVA_AIRLOCK_INTERIOR
+ sanitize_external = TRUE
+ sensor_tag = INCINERATOR_SYNDICATELAVA_AIRLOCK_SENSOR
+
/obj/machinery/embedded_controller/radio/airlock_controller/Initialize(mapload)
. = ..()
if(!mapload)
diff --git a/code/game/machinery/embedded_controller/embedded_controller_base.dm b/code/game/machinery/embedded_controller/embedded_controller_base.dm
index 39cf149850..063cfa6805 100644
--- a/code/game/machinery/embedded_controller/embedded_controller_base.dm
+++ b/code/game/machinery/embedded_controller/embedded_controller_base.dm
@@ -1,88 +1,87 @@
-/datum/computer/file/embedded_program
- var/list/memory = list()
- var/state
- var/obj/machinery/embedded_controller/master
-
-/datum/computer/file/embedded_program/proc/post_signal(datum/signal/signal, comm_line)
- if(master)
- master.post_signal(signal, comm_line)
- else
- qdel(signal)
-
-/datum/computer/file/embedded_program/proc/receive_user_command(command)
-
-/datum/computer/file/embedded_program/proc/receive_signal(datum/signal/signal)
- return null
-
-/datum/computer/file/embedded_program/process()
- return 0
-
-/obj/machinery/embedded_controller
- var/datum/computer/file/embedded_program/program
-
- name = "embedded controller"
- density = FALSE
- anchored = TRUE
-
- var/on = TRUE
-
-/obj/machinery/embedded_controller/ui_interact(mob/user)
- . = ..()
- user.set_machine(src)
- var/datum/browser/popup = new(user, "computer", name) // Set up the popup browser window
- popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state))
- popup.set_content(return_text())
- popup.open()
-
-/obj/machinery/embedded_controller/update_icon()
-
-/obj/machinery/embedded_controller/proc/return_text()
-
-/obj/machinery/embedded_controller/proc/post_signal(datum/signal/signal, comm_line)
- return 0
-
-/obj/machinery/embedded_controller/receive_signal(datum/signal/signal)
- if(istype(signal) && program)
- program.receive_signal(signal)
-
-/obj/machinery/embedded_controller/Topic(href, href_list)
- if(..())
- return 0
-
- if(program)
- program.receive_user_command(href_list["command"])
- addtimer(CALLBACK(program, /datum/computer/file/embedded_program.proc/process), 5)
-
- usr.set_machine(src)
- addtimer(CALLBACK(src, .proc/updateDialog), 5)
-
-/obj/machinery/embedded_controller/process()
- if(program)
- program.process()
-
- update_icon()
- src.updateDialog()
-
-/obj/machinery/embedded_controller/radio
- var/frequency
- var/datum/radio_frequency/radio_connection
-
-/obj/machinery/embedded_controller/radio/Destroy()
- SSradio.remove_object(src,frequency)
- return ..()
-
-/obj/machinery/embedded_controller/radio/Initialize()
- . = ..()
- set_frequency(frequency)
-
-/obj/machinery/embedded_controller/radio/post_signal(datum/signal/signal)
- signal.transmission_method = TRANSMISSION_RADIO
- if(radio_connection)
- return radio_connection.post_signal(src, signal)
- else
- signal = null
-
-/obj/machinery/embedded_controller/radio/proc/set_frequency(new_frequency)
- SSradio.remove_object(src, frequency)
- frequency = new_frequency
- radio_connection = SSradio.add_object(src, frequency)
+/datum/computer/file/embedded_program
+ var/list/memory = list()
+ var/state
+ var/obj/machinery/embedded_controller/master
+
+/datum/computer/file/embedded_program/proc/post_signal(datum/signal/signal, comm_line)
+ if(master)
+ master.post_signal(signal, comm_line)
+ else
+ qdel(signal)
+
+/datum/computer/file/embedded_program/proc/receive_user_command(command)
+
+/datum/computer/file/embedded_program/proc/receive_signal(datum/signal/signal)
+ return null
+
+/datum/computer/file/embedded_program/process()
+ return 0
+
+/obj/machinery/embedded_controller
+ var/datum/computer/file/embedded_program/program
+
+ name = "embedded controller"
+ density = FALSE
+
+ var/on = TRUE
+
+/obj/machinery/embedded_controller/ui_interact(mob/user)
+ . = ..()
+ user.set_machine(src)
+ var/datum/browser/popup = new(user, "computer", name) // Set up the popup browser window
+ popup.set_title_image(user.browse_rsc_icon(src.icon, src.icon_state))
+ popup.set_content(return_text())
+ popup.open()
+
+/obj/machinery/embedded_controller/update_icon()
+
+/obj/machinery/embedded_controller/proc/return_text()
+
+/obj/machinery/embedded_controller/proc/post_signal(datum/signal/signal, comm_line)
+ return 0
+
+/obj/machinery/embedded_controller/receive_signal(datum/signal/signal)
+ if(istype(signal) && program)
+ program.receive_signal(signal)
+
+/obj/machinery/embedded_controller/Topic(href, href_list)
+ if(..())
+ return 0
+
+ if(program)
+ program.receive_user_command(href_list["command"])
+ addtimer(CALLBACK(program, /datum/computer/file/embedded_program.proc/process), 5)
+
+ usr.set_machine(src)
+ addtimer(CALLBACK(src, .proc/updateDialog), 5)
+
+/obj/machinery/embedded_controller/process()
+ if(program)
+ program.process()
+
+ update_icon()
+ src.updateDialog()
+
+/obj/machinery/embedded_controller/radio
+ var/frequency
+ var/datum/radio_frequency/radio_connection
+
+/obj/machinery/embedded_controller/radio/Destroy()
+ SSradio.remove_object(src,frequency)
+ return ..()
+
+/obj/machinery/embedded_controller/radio/Initialize()
+ . = ..()
+ set_frequency(frequency)
+
+/obj/machinery/embedded_controller/radio/post_signal(datum/signal/signal)
+ signal.transmission_method = TRANSMISSION_RADIO
+ if(radio_connection)
+ return radio_connection.post_signal(src, signal)
+ else
+ signal = null
+
+/obj/machinery/embedded_controller/radio/proc/set_frequency(new_frequency)
+ SSradio.remove_object(src, frequency)
+ frequency = new_frequency
+ radio_connection = SSradio.add_object(src, frequency)
diff --git a/code/game/machinery/firealarm.dm b/code/game/machinery/firealarm.dm
index b2e1ad7e5b..973f96b09d 100644
--- a/code/game/machinery/firealarm.dm
+++ b/code/game/machinery/firealarm.dm
@@ -16,7 +16,6 @@
desc = "\"Pull this in case of emergency\". Thus, keep pulling it forever."
icon = 'icons/obj/monitors.dmi'
icon_state = "fire0"
- anchored = TRUE
max_integrity = 250
integrity_failure = 100
armor = list("melee" = 0, "bullet" = 0, "laser" = 0, "energy" = 0, "bomb" = 0, "bio" = 100, "rad" = 100, "fire" = 90, "acid" = 30)
diff --git a/code/game/machinery/flasher.dm b/code/game/machinery/flasher.dm
index 701c637a56..56c9544a1a 100644
--- a/code/game/machinery/flasher.dm
+++ b/code/game/machinery/flasher.dm
@@ -7,7 +7,6 @@
icon_state = "mflash1"
max_integrity = 250
integrity_failure = 100
- anchored = TRUE
var/obj/item/assembly/flash/handheld/bulb
var/id = null
var/range = 2 //this is roughly the size of brig cell
diff --git a/code/game/machinery/gulag_item_reclaimer.dm b/code/game/machinery/gulag_item_reclaimer.dm
index 628071bd21..c955edbcd0 100644
--- a/code/game/machinery/gulag_item_reclaimer.dm
+++ b/code/game/machinery/gulag_item_reclaimer.dm
@@ -5,7 +5,6 @@
icon_state = "dorm_taken"
req_access = list(ACCESS_SECURITY) //REQACCESS TO ACCESS ALL STORED ITEMS
density = FALSE
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 100
active_power_usage = 2500
diff --git a/code/game/machinery/gulag_teleporter.dm b/code/game/machinery/gulag_teleporter.dm
index 08db7b41e2..4e993cf8c8 100644
--- a/code/game/machinery/gulag_teleporter.dm
+++ b/code/game/machinery/gulag_teleporter.dm
@@ -13,7 +13,6 @@ The console is located at computer/gulag_teleporter.dm
icon_state = "implantchair"
state_open = FALSE
density = TRUE
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 200
active_power_usage = 5000
diff --git a/code/game/machinery/hologram.dm b/code/game/machinery/hologram.dm
index 61ee4eb178..e5aef868fc 100644
--- a/code/game/machinery/hologram.dm
+++ b/code/game/machinery/hologram.dm
@@ -34,7 +34,6 @@ Possible to do for anyone motivated enough:
layer = LOW_OBJ_LAYER
plane = FLOOR_PLANE
flags_1 = HEAR_1
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 5
active_power_usage = 100
@@ -667,7 +666,7 @@ For the other part of the code, check silicon say.dm. Particularly robot talk.*/
/obj/effect/overlay/holo_pad_hologram/Destroy()
Impersonation = null
- if(HC)
+ if(!QDELETED(HC))
HC.Disconnect(HC.calling_holopad)
return ..()
diff --git a/code/game/machinery/igniter.dm b/code/game/machinery/igniter.dm
index d5bb8db0e3..d20a1059f9 100644
--- a/code/game/machinery/igniter.dm
+++ b/code/game/machinery/igniter.dm
@@ -4,15 +4,23 @@
icon = 'icons/obj/stationobjs.dmi'
icon_state = "igniter0"
plane = FLOOR_PLANE
- var/id = null
- var/on = FALSE
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 2
active_power_usage = 4
max_integrity = 300
armor = list("melee" = 50, "bullet" = 30, "laser" = 70, "energy" = 50, "bomb" = 20, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 70)
resistance_flags = FIRE_PROOF
+ var/id = null
+ var/on = FALSE
+
+/obj/machinery/igniter/incinerator_toxmix
+ id = INCINERATOR_TOXMIX_IGNITER
+
+/obj/machinery/igniter/incinerator_atmos
+ id = INCINERATOR_ATMOS_IGNITER
+
+/obj/machinery/igniter/incinerator_syndicatelava
+ id = INCINERATOR_SYNDICATELAVA_IGNITER
/obj/machinery/igniter/on
on = TRUE
@@ -52,13 +60,15 @@
desc = "A wall-mounted ignition device."
icon = 'icons/obj/stationobjs.dmi'
icon_state = "migniter"
+ resistance_flags = FIRE_PROOF
var/id = null
var/disable = 0
var/last_spark = 0
var/base_state = "migniter"
var/datum/effect_system/spark_spread/spark_system
- anchored = TRUE
- resistance_flags = FIRE_PROOF
+
+/obj/machinery/sparker/toxmix
+ id = INCINERATOR_TOXMIX_IGNITER
/obj/machinery/sparker/Initialize()
. = ..()
diff --git a/code/game/machinery/launch_pad.dm b/code/game/machinery/launch_pad.dm
index 95bf10bc6c..54bf0cf36e 100644
--- a/code/game/machinery/launch_pad.dm
+++ b/code/game/machinery/launch_pad.dm
@@ -3,12 +3,11 @@
desc = "A bluespace pad able to thrust matter through bluespace, teleporting it to or from nearby locations."
icon = 'icons/obj/telescience.dmi'
icon_state = "lpad-idle"
- var/icon_teleport = "lpad-beam"
- anchored = TRUE
use_power = TRUE
idle_power_usage = 200
active_power_usage = 2500
circuit = /obj/item/circuitboard/machine/launchpad
+ var/icon_teleport = "lpad-beam"
var/stationary = TRUE //to prevent briefcase pad deconstruction and such
var/display_name = "Launchpad"
var/teleport_speed = 35
@@ -53,7 +52,7 @@
if(teleporting)
to_chat(user, "ERROR: Launchpad busy.")
return
-
+
var/turf/dest = get_turf(src)
if(dest && is_centcom_level(dest.z))
diff --git a/code/game/machinery/lightswitch.dm b/code/game/machinery/lightswitch.dm
index 8c0e65fa82..cbb9b4f253 100644
--- a/code/game/machinery/lightswitch.dm
+++ b/code/game/machinery/lightswitch.dm
@@ -5,7 +5,6 @@
name = "light switch"
icon = 'icons/obj/power.dmi'
icon_state = "light1"
- anchored = TRUE
desc = "Make dark."
var/on = TRUE
var/area/area = null
diff --git a/code/game/machinery/limbgrower.dm b/code/game/machinery/limbgrower.dm
index 8347e5f548..8a0658fd0f 100644
--- a/code/game/machinery/limbgrower.dm
+++ b/code/game/machinery/limbgrower.dm
@@ -11,7 +11,6 @@
icon_state = "limbgrower_idleoff"
density = TRUE
container_type = OPENCONTAINER
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 10
active_power_usage = 100
diff --git a/code/game/machinery/magnet.dm b/code/game/machinery/magnet.dm
index 03455d5dd5..094db5a676 100644
--- a/code/game/machinery/magnet.dm
+++ b/code/game/machinery/magnet.dm
@@ -11,7 +11,6 @@
desc = "A device that uses station power to create points of magnetic energy."
level = 1 // underfloor
layer = LOW_OBJ_LAYER
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 50
@@ -195,7 +194,6 @@
icon = 'icons/obj/airlock_machines.dmi' // uses an airlock machine icon, THINK GREEN HELP THE ENVIRONMENT - RECYCLING!
icon_state = "airlock_control_standby"
density = FALSE
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 45
var/frequency = FREQ_MAGNETS
diff --git a/code/game/machinery/mass_driver.dm b/code/game/machinery/mass_driver.dm
index c3162d640d..7ebed0ab0c 100644
--- a/code/game/machinery/mass_driver.dm
+++ b/code/game/machinery/mass_driver.dm
@@ -3,7 +3,6 @@
desc = "The finest in spring-loaded piston toy technology, now on a space station near you."
icon = 'icons/obj/stationobjs.dmi'
icon_state = "mass_driver"
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 2
active_power_usage = 50
diff --git a/code/game/machinery/navbeacon.dm b/code/game/machinery/navbeacon.dm
index 1426625c92..139769e269 100644
--- a/code/game/machinery/navbeacon.dm
+++ b/code/game/machinery/navbeacon.dm
@@ -9,7 +9,6 @@
desc = "A radio beacon used for bot navigation."
level = 1 // underfloor
layer = LOW_OBJ_LAYER
- anchored = TRUE
max_integrity = 500
armor = list("melee" = 70, "bullet" = 70, "laser" = 70, "energy" = 70, "bomb" = 0, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 80)
diff --git a/code/game/machinery/newscaster.dm b/code/game/machinery/newscaster.dm
index e2b06b333c..f9dbcc85d5 100644
--- a/code/game/machinery/newscaster.dm
+++ b/code/game/machinery/newscaster.dm
@@ -202,7 +202,6 @@ GLOBAL_LIST_EMPTY(allCasters)
var/c_locked=0
var/datum/newscaster/feed_channel/viewing_channel = null
var/allow_comments = 1
- anchored = TRUE
/obj/machinery/newscaster/security_unit
name = "security newscaster"
diff --git a/code/game/machinery/pipe/pipe_dispenser.dm b/code/game/machinery/pipe/pipe_dispenser.dm
index 555f4eee1b..11d9ee8df5 100644
--- a/code/game/machinery/pipe/pipe_dispenser.dm
+++ b/code/game/machinery/pipe/pipe_dispenser.dm
@@ -4,7 +4,6 @@
icon_state = "pipe_d"
desc = "Dispenses countless types of pipes. Very useful if you need pipes."
density = TRUE
- anchored = TRUE
interaction_flags_machine = INTERACT_MACHINE_ALLOW_SILICON | INTERACT_MACHINE_OPEN_SILICON | INTERACT_MACHINE_OFFLINE
var/wait = 0
var/piping_layer = PIPING_LAYER_DEFAULT
@@ -80,7 +79,6 @@
icon_state = "pipe_d"
desc = "Dispenses pipes that will ultimately be used to move trash around."
density = TRUE
- anchored = TRUE
//Allow you to drag-drop disposal pipes and transit tubes into it
@@ -147,7 +145,6 @@
icon_state = "pipe_d"
density = TRUE
desc = "Dispenses pipes that will move beings around."
- anchored = TRUE
/obj/machinery/pipedispenser/disposal/transit_tube/interact(mob/user)
diff --git a/code/game/machinery/porta_turret/portable_turret.dm b/code/game/machinery/porta_turret/portable_turret.dm
index 399ea38754..2bd20ce667 100644
--- a/code/game/machinery/porta_turret/portable_turret.dm
+++ b/code/game/machinery/porta_turret/portable_turret.dm
@@ -8,7 +8,6 @@
name = "turret"
icon = 'icons/obj/turrets.dmi'
icon_state = "turretCover"
- anchored = TRUE
layer = OBJ_LAYER
invisibility = INVISIBILITY_OBSERVER //the turret is invisible if it's inside its cover
density = TRUE
@@ -754,7 +753,6 @@
desc = "Used to control a room's automated defenses."
icon = 'icons/obj/machines/turret_control.dmi'
icon_state = "control_standby"
- anchored = TRUE
density = FALSE
var/enabled = 1
var/lethal = 0
diff --git a/code/game/machinery/porta_turret/portable_turret_construct.dm b/code/game/machinery/porta_turret/portable_turret_construct.dm
index 4bc5db4d5e..db3a1fad60 100644
--- a/code/game/machinery/porta_turret/portable_turret_construct.dm
+++ b/code/game/machinery/porta_turret/portable_turret_construct.dm
@@ -13,6 +13,7 @@
icon = 'icons/obj/turrets.dmi'
icon_state = "turret_frame"
desc = "An unfinished covered turret frame."
+ anchored = FALSE
density = TRUE
var/build_step = PTURRET_UNSECURED //the current step in the building process
var/finish_name = "turret" //the name applied to the product turret
diff --git a/code/game/machinery/porta_turret/portable_turret_cover.dm b/code/game/machinery/porta_turret/portable_turret_cover.dm
index 8abb5c3fb7..74acdd41e8 100644
--- a/code/game/machinery/porta_turret/portable_turret_cover.dm
+++ b/code/game/machinery/porta_turret/portable_turret_cover.dm
@@ -7,7 +7,6 @@
name = "turret"
icon = 'icons/obj/turrets.dmi'
icon_state = "turretCover"
- anchored = TRUE
layer = HIGH_OBJ_LAYER
density = FALSE
max_integrity = 80
diff --git a/code/game/machinery/quantum_pad.dm b/code/game/machinery/quantum_pad.dm
index 7236e683a5..8962ab60a5 100644
--- a/code/game/machinery/quantum_pad.dm
+++ b/code/game/machinery/quantum_pad.dm
@@ -3,7 +3,6 @@
desc = "A bluespace quantum-linked telepad used for teleporting objects to other quantum pads."
icon = 'icons/obj/telescience.dmi'
icon_state = "qpad-idle"
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 200
active_power_usage = 5000
diff --git a/code/game/machinery/recharger.dm b/code/game/machinery/recharger.dm
index ece35564bf..1cc5d7c835 100755
--- a/code/game/machinery/recharger.dm
+++ b/code/game/machinery/recharger.dm
@@ -3,7 +3,6 @@
icon = 'icons/obj/stationobjs.dmi'
icon_state = "recharger0"
desc = "A charging dock for energy based weaponry."
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 4
active_power_usage = 250
diff --git a/code/game/machinery/rechargestation.dm b/code/game/machinery/rechargestation.dm
index 8cdae470cf..4ed541ef10 100644
--- a/code/game/machinery/rechargestation.dm
+++ b/code/game/machinery/rechargestation.dm
@@ -4,7 +4,6 @@
icon = 'icons/obj/objects.dmi'
icon_state = "borgcharger0"
density = FALSE
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 5
active_power_usage = 1000
diff --git a/code/game/machinery/recycler.dm b/code/game/machinery/recycler.dm
index 08fcb1baa8..8cd31e75c6 100644
--- a/code/game/machinery/recycler.dm
+++ b/code/game/machinery/recycler.dm
@@ -6,7 +6,6 @@
icon = 'icons/obj/recycling.dmi'
icon_state = "grinder-o0"
layer = ABOVE_ALL_MOB_LAYER // Overhead
- anchored = TRUE
density = TRUE
circuit = /obj/item/circuitboard/machine/recycler
var/safety_mode = FALSE // Temporarily stops machine if it detects a mob
@@ -181,7 +180,7 @@
// Remove and recycle the equipped items
if(eat_victim_items)
- for(var/obj/item/I in L.get_equipped_items())
+ for(var/obj/item/I in L.get_equipped_items(TRUE))
if(L.dropItemToGround(I))
eat(I, sound=FALSE)
diff --git a/code/game/machinery/requests_console.dm b/code/game/machinery/requests_console.dm
index 36793900bf..2cbf29642f 100644
--- a/code/game/machinery/requests_console.dm
+++ b/code/game/machinery/requests_console.dm
@@ -14,7 +14,6 @@ GLOBAL_LIST_EMPTY(allConsoles)
/obj/machinery/requests_console
name = "requests console"
desc = "A console intended to send requests to different departments on the station."
- anchored = TRUE
icon = 'icons/obj/terminals.dmi'
icon_state = "req_comp0"
var/department = "Unknown" //The list of all departments on the station (Determined from this variable on each unit) Set this to the same thing if you want several consoles in one department
@@ -303,8 +302,8 @@ GLOBAL_LIST_EMPTY(allConsoles)
message = L.treat_message(message)
minor_announce(message, "[department] Announcement:")
GLOB.news_network.SubmitArticle(message, department, "Station Announcements", null)
- log_talk(usr,"[key_name(usr)] has made a station announcement: [message]",LOGSAY)
- message_admins("[key_name_admin(usr)] has made a station announcement.")
+ log_talk(usr,"[key_name(usr)] has made a station announcement from [src] at [AREACOORD(usr)]: [message]",LOGSAY)
+ message_admins("[ADMIN_LOOKUPFLW(usr)] has made a station announcement from [src] at [AREACOORD(usr)].")
announceAuth = FALSE
message = ""
screen = 0
diff --git a/code/game/machinery/shieldgen.dm b/code/game/machinery/shieldgen.dm
index 302d1352e7..4447c9d00b 100644
--- a/code/game/machinery/shieldgen.dm
+++ b/code/game/machinery/shieldgen.dm
@@ -406,7 +406,6 @@
desc = "An energy shield."
icon = 'icons/effects/effects.dmi'
icon_state = "shieldwall"
- anchored = TRUE
density = TRUE
resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | UNACIDABLE | ACID_PROOF
light_range = 3
diff --git a/code/game/machinery/slotmachine.dm b/code/game/machinery/slotmachine.dm
index 994e74d6eb..298587cdea 100644
--- a/code/game/machinery/slotmachine.dm
+++ b/code/game/machinery/slotmachine.dm
@@ -17,7 +17,6 @@
desc = "Gambling for the antisocial."
icon = 'icons/obj/economy.dmi'
icon_state = "slots1"
- anchored = TRUE
density = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 50
diff --git a/code/game/machinery/status_display.dm b/code/game/machinery/status_display.dm
index e7d6bf0491..105d47a719 100644
--- a/code/game/machinery/status_display.dm
+++ b/code/game/machinery/status_display.dm
@@ -15,7 +15,6 @@
icon = 'icons/obj/status_display.dmi'
icon_state = "frame"
name = "status display"
- anchored = TRUE
density = FALSE
use_power = IDLE_POWER_USE
idle_power_usage = 10
@@ -227,7 +226,6 @@
desc = "A small screen which the AI can use to present itself."
icon_state = "frame"
name = "\improper AI display"
- anchored = TRUE
density = FALSE
var/mode = 0 // 0 = Blank
diff --git a/code/game/machinery/suit_storage_unit.dm b/code/game/machinery/suit_storage_unit.dm
index e17c543154..2ff0a6758d 100644
--- a/code/game/machinery/suit_storage_unit.dm
+++ b/code/game/machinery/suit_storage_unit.dm
@@ -4,7 +4,6 @@
desc = "An industrial unit made to hold space suits. It comes with a built-in UV cauterization mechanism. A small warning label advises that organic matter should not be placed into the unit."
icon = 'icons/obj/machines/suit_storage.dmi'
icon_state = "close"
- anchored = TRUE
density = TRUE
max_integrity = 250
diff --git a/code/game/machinery/syndicatebomb.dm b/code/game/machinery/syndicatebomb.dm
index 605676fc27..fb45d6029f 100644
--- a/code/game/machinery/syndicatebomb.dm
+++ b/code/game/machinery/syndicatebomb.dm
@@ -209,10 +209,9 @@
add_fingerprint(user)
var/turf/bombturf = get_turf(src)
- var/area/A = get_area(bombturf)
if(payload && !istype(payload, /obj/item/bombcore/training))
- message_admins("[ADMIN_LOOKUPFLW(user)] has primed a [name] ([payload]) for detonation at [A.name] [ADMIN_JMP(bombturf)].")
- log_game("[key_name(user)] has primed a [name] ([payload]) for detonation at [A.name][COORD(bombturf)]")
+ message_admins("[ADMIN_LOOKUPFLW(user)] has primed a [name] ([payload]) for detonation at [ADMIN_VERBOSEJMP(bombturf)].")
+ log_game("[key_name(user)] has primed a [name] ([payload]) for detonation at [AREACOORD(bombturf)]")
payload.adminlog = "The [name] that [key_name(user)] had primed detonated!"
///Bomb Subtypes///
@@ -523,12 +522,11 @@
to_chat(user, "[existant] found, [detonated] triggered.")
if(detonated)
var/turf/T = get_turf(src)
- var/area/A = get_area(T)
detonated--
- var/log_str = "[ADMIN_LOOKUPFLW(user)] has remotely detonated [detonated ? "syndicate bombs" : "a syndicate bomb"] using a [name] at [A.name] [ADMIN_JMP(T)]."
+ var/log_str = "[ADMIN_LOOKUPFLW(user)] has remotely detonated [detonated ? "syndicate bombs" : "a syndicate bomb"] using a [name] at [ADMIN_VERBOSEJMP(T)]."
GLOB.bombers += log_str
message_admins(log_str)
- log_game("[key_name(user)] has remotely detonated [detonated ? "syndicate bombs" : "a syndicate bomb"] using a [name] at [A.name][COORD(T)]")
+ log_game("[key_name(user)] has remotely detonated [detonated ? "syndicate bombs" : "a syndicate bomb"] using a [name] at [AREACOORD(T)]")
detonated = 0
existant = 0
timer = world.time + BUTTON_COOLDOWN
diff --git a/code/game/machinery/telecomms/machines/allinone.dm b/code/game/machinery/telecomms/machines/allinone.dm
index 98f4bd9e2c..7a04869b93 100644
--- a/code/game/machinery/telecomms/machines/allinone.dm
+++ b/code/game/machinery/telecomms/machines/allinone.dm
@@ -8,7 +8,6 @@
icon_state = "comm_server"
desc = "A compact machine used for portable subspace telecommuniations processing."
density = TRUE
- anchored = TRUE
use_power = NO_POWER_USE
idle_power_usage = 0
var/intercept = FALSE // If true, only works on the Syndicate frequency.
diff --git a/code/game/machinery/telecomms/machines/broadcaster.dm b/code/game/machinery/telecomms/machines/broadcaster.dm
index 89e2d38de1..0abe97c72e 100644
--- a/code/game/machinery/telecomms/machines/broadcaster.dm
+++ b/code/game/machinery/telecomms/machines/broadcaster.dm
@@ -13,7 +13,6 @@ GLOBAL_VAR_INIT(message_delay, 0) // To make sure restarting the recentmessages
icon_state = "broadcaster"
desc = "A dish-shaped machine used to broadcast processed subspace signals."
density = TRUE
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 25
circuit = /obj/item/circuitboard/machine/telecomms/broadcaster
diff --git a/code/game/machinery/telecomms/machines/bus.dm b/code/game/machinery/telecomms/machines/bus.dm
index 6f9757eb45..b92ebc0d7d 100644
--- a/code/game/machinery/telecomms/machines/bus.dm
+++ b/code/game/machinery/telecomms/machines/bus.dm
@@ -13,7 +13,6 @@
icon_state = "bus"
desc = "A mighty piece of hardware used to send massive amounts of data quickly."
density = TRUE
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 50
netspeed = 40
diff --git a/code/game/machinery/telecomms/machines/hub.dm b/code/game/machinery/telecomms/machines/hub.dm
index 7a481b2069..b23c443678 100644
--- a/code/game/machinery/telecomms/machines/hub.dm
+++ b/code/game/machinery/telecomms/machines/hub.dm
@@ -13,7 +13,6 @@
icon_state = "hub"
desc = "A mighty piece of hardware used to send/receive massive amounts of data."
density = TRUE
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 80
long_range_link = TRUE
diff --git a/code/game/machinery/telecomms/machines/message_server.dm b/code/game/machinery/telecomms/machines/message_server.dm
index d3d4b871b0..45661add0d 100644
--- a/code/game/machinery/telecomms/machines/message_server.dm
+++ b/code/game/machinery/telecomms/machines/message_server.dm
@@ -11,7 +11,6 @@
icon_state = "blackbox"
name = "Blackbox Recorder"
density = TRUE
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 10
active_power_usage = 100
@@ -25,7 +24,6 @@
name = "Messaging Server"
desc = "A machine that attempts to gather the secret knowledge of the universe."
density = TRUE
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 10
active_power_usage = 100
diff --git a/code/game/machinery/telecomms/machines/processor.dm b/code/game/machinery/telecomms/machines/processor.dm
index 8b7e0f8672..2362273469 100644
--- a/code/game/machinery/telecomms/machines/processor.dm
+++ b/code/game/machinery/telecomms/machines/processor.dm
@@ -11,7 +11,6 @@
icon_state = "processor"
desc = "This machine is used to process large quantities of information."
density = TRUE
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 30
circuit = /obj/item/circuitboard/machine/telecomms/processor
diff --git a/code/game/machinery/telecomms/machines/receiver.dm b/code/game/machinery/telecomms/machines/receiver.dm
index 527c0e6d8f..0fd3aec012 100644
--- a/code/game/machinery/telecomms/machines/receiver.dm
+++ b/code/game/machinery/telecomms/machines/receiver.dm
@@ -11,7 +11,6 @@
icon_state = "broadcast receiver"
desc = "This machine has a dish-like shape and green lights. It is designed to detect and process subspace radio activity."
density = TRUE
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 30
circuit = /obj/item/circuitboard/machine/telecomms/receiver
diff --git a/code/game/machinery/telecomms/machines/relay.dm b/code/game/machinery/telecomms/machines/relay.dm
index 1a436e56d5..9e6716278b 100644
--- a/code/game/machinery/telecomms/machines/relay.dm
+++ b/code/game/machinery/telecomms/machines/relay.dm
@@ -11,7 +11,6 @@
icon_state = "relay"
desc = "A mighty piece of hardware used to send massive amounts of data far away."
density = TRUE
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 30
netspeed = 5
diff --git a/code/game/machinery/telecomms/machines/server.dm b/code/game/machinery/telecomms/machines/server.dm
index 18a498efe6..6bbd8cfd38 100644
--- a/code/game/machinery/telecomms/machines/server.dm
+++ b/code/game/machinery/telecomms/machines/server.dm
@@ -10,7 +10,6 @@
icon_state = "comm_server"
desc = "A machine used to store data and network statistics."
density = TRUE
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 15
circuit = /obj/item/circuitboard/machine/telecomms/server
diff --git a/code/game/machinery/teleporter.dm b/code/game/machinery/teleporter.dm
index cef200173c..3d217e52c5 100644
--- a/code/game/machinery/teleporter.dm
+++ b/code/game/machinery/teleporter.dm
@@ -2,7 +2,6 @@
name = "teleport"
icon = 'icons/obj/machines/teleporter.dmi'
density = TRUE
- anchored = TRUE
/obj/machinery/teleport/hub
name = "teleporter hub"
diff --git a/code/game/machinery/transformer.dm b/code/game/machinery/transformer.dm
index 7624312f84..4fa40910a8 100644
--- a/code/game/machinery/transformer.dm
+++ b/code/game/machinery/transformer.dm
@@ -6,7 +6,6 @@
icon = 'icons/obj/recycling.dmi'
icon_state = "separator-AO1"
layer = ABOVE_ALL_MOB_LAYER // Overhead
- anchored = TRUE
density = FALSE
var/transform_dead = 0
var/transform_standing = 0
diff --git a/code/game/machinery/washing_machine.dm b/code/game/machinery/washing_machine.dm
index ab906f1bfa..8575a6f2dc 100644
--- a/code/game/machinery/washing_machine.dm
+++ b/code/game/machinery/washing_machine.dm
@@ -4,7 +4,6 @@
icon = 'icons/obj/machines/washing_machine.dmi'
icon_state = "wm_1_0"
density = TRUE
- anchored = TRUE
state_open = TRUE
var/busy = FALSE
var/bloody_mess = 0
diff --git a/code/game/machinery/wishgranter.dm b/code/game/machinery/wishgranter.dm
index aa238f9341..bec51d1d30 100644
--- a/code/game/machinery/wishgranter.dm
+++ b/code/game/machinery/wishgranter.dm
@@ -5,7 +5,6 @@
icon_state = "syndbeacon"
use_power = NO_POWER_USE
- anchored = TRUE
density = TRUE
var/charges = 1
diff --git a/code/game/mecha/combat/combat.dm b/code/game/mecha/combat/combat.dm
index c516571e2a..ea51693135 100644
--- a/code/game/mecha/combat/combat.dm
+++ b/code/game/mecha/combat/combat.dm
@@ -2,27 +2,4 @@
force = 30
internal_damage_threshold = 50
armor = list("melee" = 30, "bullet" = 30, "laser" = 15, "energy" = 20, "bomb" = 20, "bio" = 0, "rad" = 0, "fire" = 100, "acid" = 100)
-
-/obj/mecha/combat/moved_inside(mob/living/carbon/human/H)
- if(..())
- if(H.client && H.client.mouse_pointer_icon == initial(H.client.mouse_pointer_icon))
- H.client.mouse_pointer_icon = 'icons/mecha/mecha_mouse.dmi'
- return 1
- else
- return 0
-
-/obj/mecha/combat/mmi_moved_inside(obj/item/mmi/mmi_as_oc,mob/user)
- if(..())
- if(occupant.client && occupant.client.mouse_pointer_icon == initial(occupant.client.mouse_pointer_icon))
- occupant.client.mouse_pointer_icon = 'icons/mecha/mecha_mouse.dmi'
- return 1
- else
- return 0
-
-
-/obj/mecha/combat/go_out()
- if(occupant && occupant.client && occupant.client.mouse_pointer_icon == 'icons/mecha/mecha_mouse.dmi')
- occupant.client.mouse_pointer_icon = initial(occupant.client.mouse_pointer_icon)
- ..()
-
-
+ mouse_pointer = 'icons/mecha/mecha_mouse.dmi'
diff --git a/code/game/mecha/equipment/tools/other_tools.dm b/code/game/mecha/equipment/tools/other_tools.dm
index 0d1651c491..b7796849f1 100644
--- a/code/game/mecha/equipment/tools/other_tools.dm
+++ b/code/game/mecha/equipment/tools/other_tools.dm
@@ -58,8 +58,8 @@
return
var/list/obj/effect/portal/created = create_portal_pair(get_turf(src), target_turf, src, 300, 1, /obj/effect/portal/anom)
var/turf/T = get_turf(target)
- message_admins("[ADMIN_LOOKUPFLW(chassis.occupant)] used a Wormhole Generator in [ADMIN_COORDJMP(T)]",0,1)
- log_game("[key_name(chassis.occupant)] used a Wormhole Generator in [COORD(T)]")
+ message_admins("[ADMIN_LOOKUPFLW(chassis.occupant)] used a Wormhole Generator in [ADMIN_VERBOSEJMP(T)]")
+ log_game("[key_name(chassis.occupant)] used a Wormhole Generator in [AREACOORD(T)]")
src = null
QDEL_LIST_IN(created, rand(150,300))
return 1
@@ -97,7 +97,7 @@
locked.throw_at(target, 14, 1.5)
locked = null
send_byjax(chassis.occupant,"exosuit.browser","[REF(src)]",src.get_equip_info())
- log_game("[key_name(chassis.occupant)] used a Gravitational Catapult to throw [locked]([COORD(orig)]) at [target]([COORD(targ)]).")
+ log_game("[key_name(chassis.occupant)] used a Gravitational Catapult to throw [locked] (From [AREACOORD(orig)]) at [target] ([AREACOORD(targ)]).")
return TRUE
else
locked = null
@@ -118,7 +118,7 @@
step_away(A,target)
sleep(2)
var/turf/T = get_turf(target)
- log_game("[key_name(chassis.occupant)] used a Gravitational Catapult repulse wave on ([COORD(T)])")
+ log_game("[key_name(chassis.occupant)] used a Gravitational Catapult repulse wave on [AREACOORD(T)]")
return TRUE
diff --git a/code/game/mecha/equipment/weapons/weapons.dm b/code/game/mecha/equipment/weapons/weapons.dm
index 50d1f0be0d..fe10bf510b 100644
--- a/code/game/mecha/equipment/weapons/weapons.dm
+++ b/code/game/mecha/equipment/weapons/weapons.dm
@@ -186,8 +186,8 @@
log_message("Honked from [src.name]. HONK!")
var/turf/T = get_turf(src)
- message_admins("[ADMIN_LOOKUPFLW(chassis.occupant)] used a Mecha Honker in [ADMIN_COORDJMP(T)]",0,1)
- log_game("[chassis.occupant.ckey]([chassis.occupant]) used a Mecha Honker in [COORD(T)]")
+ message_admins("[ADMIN_LOOKUPFLW(chassis.occupant)] used a Mecha Honker in [ADMIN_VERBOSEJMP(T)]")
+ log_game("[chassis.occupant.ckey]([chassis.occupant]) used a Mecha Honker in [AREACOORD(T)]")
return 1
@@ -336,8 +336,8 @@
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/flashbang/proj_init(var/obj/item/grenade/flashbang/F)
var/turf/T = get_turf(src)
- message_admins("[ADMIN_LOOKUPFLW(chassis.occupant)] fired a [src] in [ADMIN_COORDJMP(T)]",0,1)
- log_game("[key_name(chassis.occupant)] fired a [src] [COORD(T)]")
+ message_admins("[ADMIN_LOOKUPFLW(chassis.occupant)] fired a [src] in [ADMIN_VERBOSEJMP(T)]")
+ log_game("[key_name(chassis.occupant)] fired a [src] in [AREACOORD(T)]")
addtimer(CALLBACK(F, /obj/item/grenade/flashbang.proc/prime), det_time)
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/flashbang/clusterbang //Because I am a heartless bastard -Sieve //Heartless? for making the poor man's honkblast? - Kaze
diff --git a/code/game/mecha/mech_bay.dm b/code/game/mecha/mech_bay.dm
index d2d9ac5e57..f198bfbd87 100644
--- a/code/game/mecha/mech_bay.dm
+++ b/code/game/mecha/mech_bay.dm
@@ -15,7 +15,6 @@
name = "mech bay power port"
desc = "This port recharges a mech's internal power cell."
density = TRUE
- anchored = TRUE
dir = EAST
icon = 'icons/mecha/mech_bay.dmi'
icon_state = "recharge_port"
diff --git a/code/game/mecha/mech_fabricator.dm b/code/game/mecha/mech_fabricator.dm
index 526c808809..77b26c4ec0 100644
--- a/code/game/mecha/mech_fabricator.dm
+++ b/code/game/mecha/mech_fabricator.dm
@@ -4,7 +4,6 @@
name = "exosuit fabricator"
desc = "Nothing is being built."
density = TRUE
- anchored = TRUE
use_power = IDLE_POWER_USE
idle_power_usage = 20
active_power_usage = 5000
diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm
index 438c5fdb39..c6f070c23a 100644
--- a/code/game/mecha/mecha.dm
+++ b/code/game/mecha/mecha.dm
@@ -115,6 +115,7 @@
var/smashcooldown = 3 //deciseconds
var/occupant_sight_flags = 0 //sight flags to give to the occupant (e.g. mech mining scanner gives meson-like vision)
+ var/mouse_pointer
hud_possible = list (DIAG_STAT_HUD, DIAG_BATT_HUD, DIAG_MECH_HUD, DIAG_TRACK_HUD)
@@ -855,6 +856,7 @@
if(H && H.client && H in range(1))
occupant = H
H.forceMove(src)
+ H.update_mouse_pointer()
add_fingerprint(H)
GrantActions(H, human_occupant=1)
forceMove(loc)
@@ -912,6 +914,7 @@
brainmob.reset_perspective(src)
brainmob.remote_control = src
brainmob.update_canmove()
+ brainmob.update_mouse_pointer()
icon_state = initial(icon_state)
update_icon()
setDir(dir_in)
@@ -981,6 +984,7 @@
setDir(dir_in)
if(L && L.client)
+ L.update_mouse_pointer()
L.client.change_view(CONFIG_GET(string/default_view))
zoom_mode = 0
diff --git a/code/game/objects/effects/effect_system/effects_smoke.dm b/code/game/objects/effects/effect_system/effects_smoke.dm
index 80e5877fe7..5618ca9a91 100644
--- a/code/game/objects/effects/effect_system/effects_smoke.dm
+++ b/code/game/objects/effects/effect_system/effects_smoke.dm
@@ -279,20 +279,19 @@
contained += " [reagent] "
if(contained)
contained = "\[[contained]\]"
- var/area/A = get_area(location)
- var/where = "[A.name] | [location.x], [location.y]"
+ var/where = "[AREACOORD(location)]"
var/whereLink = "[where]"
if(carry.my_atom.fingerprintslast)
var/mob/M = get_mob_by_key(carry.my_atom.fingerprintslast)
var/more = ""
if(M)
- more = "(?) (FLW) "
- message_admins("Smoke: ([whereLink])[contained]. Key: [carry.my_atom.fingerprintslast][more].", 0, 1)
+ more = "[ADMIN_LOOKUPFLW(M)] "
+ message_admins("Smoke: ([whereLink])[contained]. Key: [more ? more : carry.my_atom.fingerprintslast].")
log_game("A chemical smoke reaction has taken place in ([where])[contained]. Last associated key is [carry.my_atom.fingerprintslast].")
else
- message_admins("Smoke: ([whereLink])[contained]. No associated key.", 0, 1)
+ message_admins("Smoke: ([whereLink])[contained]. No associated key.")
log_game("A chemical smoke reaction has taken place in ([where])[contained]. No associated key.")
diff --git a/code/game/objects/effects/portals.dm b/code/game/objects/effects/portals.dm
index 65e216fd4c..e3a5c85719 100644
--- a/code/game/objects/effects/portals.dm
+++ b/code/game/objects/effects/portals.dm
@@ -153,7 +153,7 @@
if(!force && (!ismecha(M) && !istype(M, /obj/item/projectile) && M.anchored && !allow_anchored))
return
if(ismegafauna(M))
- message_admins("[M] has used a portal at [ADMIN_COORDJMP(src)] made by [usr].")
+ message_admins("[M] has used a portal at [ADMIN_VERBOSEJMP(src)] made by [usr].")
if(do_teleport(M, real_target, innate_accuracy_penalty))
if(istype(M, /obj/item/projectile))
var/obj/item/projectile/P = M
diff --git a/code/game/objects/effects/spawners/xeno_egg_delivery.dm b/code/game/objects/effects/spawners/xeno_egg_delivery.dm
index 593c953adf..a41f4b4c9b 100644
--- a/code/game/objects/effects/spawners/xeno_egg_delivery.dm
+++ b/code/game/objects/effects/spawners/xeno_egg_delivery.dm
@@ -7,14 +7,13 @@
/obj/effect/spawner/xeno_egg_delivery/Initialize(mapload)
..()
var/turf/T = get_turf(src)
- var/area/A = get_area(T)
new /obj/structure/alien/egg(T)
new /obj/effect/temp_visual/gravpush(T)
playsound(T, 'sound/items/party_horn.ogg', 50, 1, -1)
- message_admins("An alien egg has been delivered to [A] at [ADMIN_COORDJMP(T)].")
- log_game("An alien egg has been delivered to [A] at [COORD(T)]")
- var/message = "Attention [station_name()], we have entrusted you with a research specimen in [A]. Remember to follow all safety precautions when dealing with the specimen."
+ message_admins("An alien egg has been delivered to [ADMIN_VERBOSEJMP(T)].")
+ log_game("An alien egg has been delivered to [AREACOORD(T)]")
+ var/message = "Attention [station_name()], we have entrusted you with a research specimen in [get_area_name(T, TRUE)]. Remember to follow all safety precautions when dealing with the specimen."
SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC, /proc/addtimer, CALLBACK(GLOBAL_PROC, /.proc/print_command_report, message), announcement_time))
return INITIALIZE_HINT_QDEL
diff --git a/code/game/objects/effects/temporary_visuals/cult.dm b/code/game/objects/effects/temporary_visuals/cult.dm
index 3a17494871..0f9d7321af 100644
--- a/code/game/objects/effects/temporary_visuals/cult.dm
+++ b/code/game/objects/effects/temporary_visuals/cult.dm
@@ -47,6 +47,7 @@
/obj/effect/temp_visual/cult/turf/floor
icon_state = "floorglow"
duration = 5
+ plane = FLOOR_PLANE
/obj/effect/temp_visual/cult/portal
icon_state = "space"
diff --git a/code/game/objects/items/AI_modules.dm b/code/game/objects/items/AI_modules.dm
index 5d83f3ac1e..5d41b90dc0 100644
--- a/code/game/objects/items/AI_modules.dm
+++ b/code/game/objects/items/AI_modules.dm
@@ -55,7 +55,7 @@ AI MODULES
tot_laws++
if(tot_laws > CONFIG_GET(number/silicon_max_law_amount) && !bypass_law_amt_check)//allows certain boards to avoid this check, eg: reset
to_chat(user, "Not enough memory allocated to [law_datum.owner ? law_datum.owner : "the AI core"]'s law processor to handle this amount of laws.")
- message_admins("[key_name_admin(user)] tried to upload laws to [law_datum.owner ? key_name_admin(law_datum.owner) : "an AI core"] that would exceed the law cap.")
+ message_admins("[ADMIN_LOOKUPFLW(user)] tried to upload laws to [law_datum.owner ? ADMIN_LOOKUPFLW(law_datum.owner) : "an AI core"] that would exceed the law cap.")
overflow = TRUE
var/law2log = transmitInstructions(law_datum, user, overflow) //Freeforms return something extra we need to log
@@ -69,8 +69,8 @@ AI MODULES
var/ainame = law_datum.owner ? law_datum.owner.name : "empty AI core"
var/aikey = law_datum.owner ? law_datum.owner.ckey : "null"
GLOB.lawchanges.Add("[time] : [user.name]([user.key]) used [src.name] on [ainame]([aikey]).[law2log ? " The law specified [law2log]" : ""]")
- log_law("[user.key]/[user.name] used [src.name] on [aikey]/([ainame]).[law2log ? " The law specified [law2log]" : ""]")
- message_admins("[key_name_admin(user)] used [src.name] on [key_name_admin(law_datum.owner)].[law2log ? " The law specified [law2log]" : ""]")
+ log_law("[user.key]/[user.name] used [src.name] on [aikey]/([ainame]) from [AREACOORD(user)].[law2log ? " The law specified [law2log]" : ""]")
+ message_admins("[ADMIN_LOOKUPFLW(user)] used [src.name] on [ADMIN_LOOKUPFLW(law_datum.owner)] from [AREACOORD(user)].[law2log ? " The law specified [law2log]" : ""]")
//The proc that actually changes the silicon's laws.
/obj/item/aiModule/proc/transmitInstructions(datum/ai_laws/law_datum, mob/sender, overflow = FALSE)
diff --git a/code/game/objects/items/cigs_lighters.dm b/code/game/objects/items/cigs_lighters.dm
index ed8db43bfa..8daf0f5202 100644
--- a/code/game/objects/items/cigs_lighters.dm
+++ b/code/game/objects/items/cigs_lighters.dm
@@ -72,8 +72,8 @@ CIGARETTE PACKETS ARE IN FANCY.DM
if(!isliving(M))
return
if(lit && M.IgniteMob())
- message_admins("[key_name_admin(user)] set [key_name_admin(M)] on fire")
- log_game("[key_name(user)] set [key_name(M)] on fire")
+ message_admins("[ADMIN_LOOKUPFLW(user)] set [key_name_admin(M)] on fire with [src] at [AREACOORD(user)]")
+ log_game("[key_name(user)] set [key_name(M)] on fire with [src] at [AREACOORD(user)]")
var/obj/item/clothing/mask/cigarette/cig = help_light_cig(M)
if(lit && cig && user.a_intent == INTENT_HELP)
if(cig.lit)
@@ -340,7 +340,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
desc = "A brown roll of tobacco and... well, you're not quite sure. This thing's huge!"
icon_state = "cigaroff"
icon_on = "cigaron"
- icon_off = "cigaroff"
+ icon_off = "cigaroff" //make sure to add positional sprites in icons/obj/cigarettes.dmi if you add more.
type_butt = /obj/item/cigbutt/cigarbutt
throw_speed = 0.5
item_state = "cigaroff"
@@ -492,11 +492,24 @@ CIGARETTE PACKETS ARE IN FANCY.DM
slot_flags = ITEM_SLOT_BELT
var/lit = 0
var/fancy = TRUE
+ var/overlay_state
+ var/overlay_list = list(
+ "plain",
+ "dame",
+ "thirteen",
+ "snake"
+ )
heat = 1500
resistance_flags = FIRE_PROOF
light_color = LIGHT_COLOR_FIRE
grind_results = list("iron" = 1, "welding_fuel" = 5, "oil" = 5)
+/obj/item/lighter/Initialize()
+ . = ..()
+ if(!overlay_state)
+ overlay_state = pick(overlay_list)
+ update_icon()
+
/obj/item/lighter/suicide_act(mob/living/carbon/user)
if (lit)
user.visible_message("[user] begins holding \the [src]'s flame up to [user.p_their()] face! It looks like [user.p_theyre()] trying to commit suicide!")
@@ -507,10 +520,10 @@ CIGARETTE PACKETS ARE IN FANCY.DM
return BRUTELOSS
/obj/item/lighter/update_icon()
- if(lit)
- icon_state = "[initial(icon_state)]_on"
- else
- icon_state = "[initial(icon_state)]"
+ cut_overlays()
+ var/mutable_appearance/lighter_overlay = mutable_appearance(icon,"lighter_overlay_[overlay_state][lit ? "-on" : ""]")
+ icon_state = "[initial(icon_state)][lit ? "-on" : ""]"
+ add_overlay(lighter_overlay)
/obj/item/lighter/ignition_effect(atom/A, mob/user)
if(is_hot())
@@ -569,8 +582,8 @@ CIGARETTE PACKETS ARE IN FANCY.DM
/obj/item/lighter/attack(mob/living/carbon/M, mob/living/carbon/user)
if(lit && M.IgniteMob())
- message_admins("[key_name_admin(user)] set [key_name_admin(M)] on fire")
- log_game("[key_name(user)] set [key_name(M)] on fire")
+ message_admins("[ADMIN_LOOKUPFLW(user)] set [key_name_admin(M)] on fire with [src] at [AREACOORD(user)]")
+ log_game("[key_name(user)] set [key_name(M)] on fire with [src] at [AREACOORD(user)]")
var/obj/item/clothing/mask/cigarette/cig = help_light_cig(M)
if(lit && cig && user.a_intent == INTENT_HELP)
if(cig.lit)
@@ -597,19 +610,44 @@ CIGARETTE PACKETS ARE IN FANCY.DM
desc = "A cheap-as-free lighter."
icon_state = "lighter"
fancy = FALSE
+ overlay_list = list(
+ "transp",
+ "tall",
+ "matte",
+ "zoppo" //u cant stoppo th zoppo
+ )
+ var/lighter_color
+ var/list/color_list = list( //Same 16 color selection as electronic assemblies
+ COLOR_ASSEMBLY_BLACK,
+ COLOR_FLOORTILE_GRAY,
+ COLOR_ASSEMBLY_BGRAY,
+ COLOR_ASSEMBLY_WHITE,
+ COLOR_ASSEMBLY_RED,
+ COLOR_ASSEMBLY_ORANGE,
+ COLOR_ASSEMBLY_BEIGE,
+ COLOR_ASSEMBLY_BROWN,
+ COLOR_ASSEMBLY_GOLD,
+ COLOR_ASSEMBLY_YELLOW,
+ COLOR_ASSEMBLY_GURKHA,
+ COLOR_ASSEMBLY_LGREEN,
+ COLOR_ASSEMBLY_GREEN,
+ COLOR_ASSEMBLY_LBLUE,
+ COLOR_ASSEMBLY_BLUE,
+ COLOR_ASSEMBLY_PURPLE
+ )
/obj/item/lighter/greyscale/Initialize()
. = ..()
- add_atom_colour(color2hex(randomColor(1)), FIXED_COLOUR_PRIORITY)
+ if(!lighter_color)
+ lighter_color = pick(color_list)
update_icon()
/obj/item/lighter/greyscale/update_icon()
cut_overlays()
- var/mutable_appearance/base_overlay = mutable_appearance(icon,"[initial(icon_state)]_base")
- base_overlay.appearance_flags = RESET_COLOR //the edging doesn't change color
- if(lit)
- base_overlay.icon_state = "[initial(icon_state)]_on"
- add_overlay(base_overlay)
+ var/mutable_appearance/lighter_overlay = mutable_appearance(icon,"lighter_overlay_[overlay_state][lit ? "-on" : ""]")
+ icon_state = "[initial(icon_state)][lit ? "-on" : ""]"
+ lighter_overlay.color = lighter_color
+ add_overlay(lighter_overlay)
/obj/item/lighter/greyscale/ignition_effect(atom/A, mob/user)
if(is_hot())
@@ -619,9 +657,10 @@ CIGARETTE PACKETS ARE IN FANCY.DM
/obj/item/lighter/slime
name = "slime zippo"
desc = "A specialty zippo made from slimes and industry. Has a much hotter flame than normal."
- icon_state = "slimezippo"
+ icon_state = "slighter"
heat = 3000 //Blue flame!
light_color = LIGHT_COLOR_CYAN
+ overlay_state = "slime"
grind_results = list("iron" = 1, "welding_fuel" = 5, "pyroxadone" = 5)
diff --git a/code/game/objects/items/devices/PDA/virus_cart.dm b/code/game/objects/items/devices/PDA/virus_cart.dm
index dfbf6db88c..2544cc0154 100644
--- a/code/game/objects/items/devices/PDA/virus_cart.dm
+++ b/code/game/objects/items/devices/PDA/virus_cart.dm
@@ -75,10 +75,8 @@
if(!target.detonatable || prob(difficulty * 15) || (hidden_uplink))
U.show_message("An error flashes on your [src].", 1)
else
- var/turf/T = get_turf(target)
- var/area/A = get_area(T)
- message_admins("[!is_special_character(U) ? "Non-antag " : ""][key_name_admin(U)][ADMIN_FLW(U)] triggered a PDA explosion on [target.name] at [A] [ADMIN_COORDJMP(T)].")
- var/message_log = "triggered a PDA explosion on [target.name] at at [A] [COORD(T)]."
+ message_admins("[!is_special_character(U) ? "Non-antag " : ""][ADMIN_LOOKUPFLW(U)] triggered a PDA explosion on [target.name] at [ADMIN_VERBOSEJMP(target)].")
+ var/message_log = "triggered a PDA explosion on [target.name] at at [AREACOORD(target)]."
U.log_message(message_log, INDIVIDUAL_ATTACK_LOG)
log_game("[key_name(U)] [message_log]")
log_attack("[key_name(U)] [message_log]")
diff --git a/code/game/objects/items/devices/multitool.dm b/code/game/objects/items/devices/multitool.dm
index 063676ea62..a059c06284 100644
--- a/code/game/objects/items/devices/multitool.dm
+++ b/code/game/objects/items/devices/multitool.dm
@@ -142,20 +142,6 @@
detect_state = PROXIMITY_NEAR
break
-/obj/item/multitool/ai_detect/admin
- desc = "Used for pulsing wires to test which to cut. Not recommended by doctors. Has a strange tag that says 'Grief in Safety'." //What else should I say for a meme item?
- track_delay = 5
-
-/obj/item/multitool/ai_detect/admin/multitool_detect()
- var/turf/our_turf = get_turf(src)
- for(var/mob/J in urange(rangewarning,our_turf))
- if(GLOB.admin_datums[J.ckey])
- detect_state = PROXIMITY_NEAR
- var/turf/detect_turf = get_turf(J)
- if(get_dist(our_turf, detect_turf) < rangealert)
- detect_state = PROXIMITY_ON_SCREEN
- break
-
/obj/item/multitool/cyborg
name = "multitool"
desc = "Optimised and stripped-down version of a regular multitool."
diff --git a/code/game/objects/items/devices/paicard.dm b/code/game/objects/items/devices/paicard.dm
index bc24e4bf83..737f71a978 100644
--- a/code/game/objects/items/devices/paicard.dm
+++ b/code/game/objects/items/devices/paicard.dm
@@ -22,7 +22,8 @@
/obj/item/paicard/Destroy()
//Will stop people throwing friend pAIs into the singularity so they can respawn
SSpai.pai_card_list -= src
- QDEL_NULL(pai)
+ if (!QDELETED(pai))
+ QDEL_NULL(pai)
return ..()
/obj/item/paicard/attack_self(mob/user)
@@ -90,7 +91,7 @@
to_chat(pai, "Byte by byte you lose your sense of self.")
to_chat(pai, "Your mental faculties leave you.")
to_chat(pai, "oblivion... ")
- removePersonality()
+ qdel(pai)
if(href_list["wires"])
var/wire = text2num(href_list["wires"])
if(pai.radio)
@@ -122,11 +123,6 @@
playsound(loc, 'sound/effects/pai_boot.ogg', 50, 1, -1)
audible_message("\The [src] plays a cheerful startup noise!")
-/obj/item/paicard/proc/removePersonality()
- QDEL_NULL(pai)
- cut_overlays()
- add_overlay("pai-off")
-
/obj/item/paicard/proc/setEmotion(emotion)
if(pai)
src.cut_overlays()
diff --git a/code/game/objects/items/devices/powersink.dm b/code/game/objects/items/devices/powersink.dm
index 8d36fd9986..1a5c7a9b43 100644
--- a/code/game/objects/items/devices/powersink.dm
+++ b/code/game/objects/items/devices/powersink.dm
@@ -100,8 +100,8 @@
"[user] activates \the [src]!", \
"You activate \the [src].",
"You hear a click.")
- message_admins("Power sink activated by [ADMIN_LOOKUPFLW(user)] at [ADMIN_COORDJMP(src)]")
- log_game("Power sink activated by [key_name(user)] at [COORD(src)]")
+ message_admins("Power sink activated by [ADMIN_LOOKUPFLW(user)] at [ADMIN_VERBOSEJMP(src)]")
+ log_game("Power sink activated by [key_name(user)] at [AREACOORD(src)]")
set_mode(OPERATING)
if(OPERATING)
diff --git a/code/game/objects/items/devices/transfer_valve.dm b/code/game/objects/items/devices/transfer_valve.dm
index c6028b1193..0ef20dea19 100644
--- a/code/game/objects/items/devices/transfer_valve.dm
+++ b/code/game/objects/items/devices/transfer_valve.dm
@@ -52,7 +52,7 @@
A.toggle_secure() //this calls update_icon(), which calls update_icon() on the holder (i.e. the bomb).
GLOB.bombers += "[key_name(user)] attached a [item] to a transfer valve."
- message_admins("[key_name_admin(user)] attached a [item] to a transfer valve.")
+ message_admins("[ADMIN_LOOKUPFLW(user)] attached a [item] to a transfer valve.")
log_game("[key_name(user)] attached a [item] to a transfer valve.")
attacher = user
return
@@ -184,41 +184,33 @@
if(!valve_open && tank_one && tank_two)
valve_open = TRUE
var/turf/bombturf = get_turf(src)
- var/area/A = get_area(bombturf)
- var/attachment = "no device"
+ var/attachment
if(attached_device)
if(istype(attached_device, /obj/item/assembly/signaler))
attachment = "[attached_device]"
else
attachment = attached_device
- var/attacher_name = ""
- if(!attacher)
- attacher_name = "Unknown"
- else
- attacher_name = "[key_name_admin(attacher)]"
+ var/admin_attachment_message
+ var/attachment_message
+ if(attachment)
+ admin_attachment_message = " with [attachment] attached by [attacher ? ADMIN_LOOKUPFLW(attacher) : "Unknown"]"
+ attachment_message = " with [attachment] attached by [attacher ? key_name_admin(attacher) : "Unknown"]"
- var/log_str1 = "Bomb valve opened in "
- var/log_str2 = "with [attachment] attacher: [attacher_name]"
+ var/mob/bomber = get_mob_by_key(fingerprintslast)
+ var/admin_bomber_message
+ var/bomber_message
+ if(bomber)
+ admin_bomber_message = " - Last touched by: [ADMIN_LOOKUPFLW(bomber)]"
+ bomber_message = " - Last touched by: [key_name_admin(bomber)]"
- var/log_attacher = ""
- if(attacher)
- log_attacher = "[ADMIN_QUE(attacher)] [ADMIN_FLW(attacher)]"
- var/mob/mob = get_mob_by_key(src.fingerprintslast)
- var/last_touch_info = ""
- if(mob)
- last_touch_info = "[ADMIN_QUE(mob)] [ADMIN_FLW(mob)]"
+ var/admin_bomb_message = "Bomb valve opened in [ADMIN_VERBOSEJMP(bombturf)][admin_attachment_message][admin_bomber_message]"
+ GLOB.bombers += admin_bomb_message
+ message_admins(admin_bomb_message, 0, 1)
+ log_game("Bomb valve opened in [AREACOORD(bombturf)][attachment_message][bomber_message]")
- var/log_str3 = " Last touched by: [key_name_admin(mob)]"
-
- var/bomb_message = "[log_str1] [A.name][ADMIN_JMP(bombturf)] [log_str2][log_attacher] [log_str3][last_touch_info]"
-
- GLOB.bombers += bomb_message
-
- message_admins(bomb_message, 0, 1)
- log_game("[log_str1] [A.name][COORD(bombturf)] [log_str2] [log_str3]")
merge_gases()
for(var/i in 1 to 6)
addtimer(CALLBACK(src, .proc/update_icon), 20 + (i - 1) * 10)
diff --git a/code/game/objects/items/dna_injector.dm b/code/game/objects/items/dna_injector.dm
index 0e8c82d963..a4b9cf708b 100644
--- a/code/game/objects/items/dna_injector.dm
+++ b/code/game/objects/items/dna_injector.dm
@@ -38,7 +38,7 @@
HM.force_lose(M)
for(var/datum/mutation/human/HM in add_mutations)
if(HM.name == RACEMUT)
- message_admins("[key_name_admin(user)] injected [key_name_admin(M)] with the [name] (MONKEY)")
+ message_admins("[ADMIN_LOOKUPFLW(user)] injected [key_name_admin(M)] with the [name] (MONKEY)")
log_msg += " (MONKEY)"
HM.force_give(M)
if(fields)
@@ -328,7 +328,7 @@
if((HM in M.dna.mutations) && !(M.dna.temporary_mutations[HM.name]))
continue //Skip permanent mutations we already have.
if(HM.name == RACEMUT && ishuman(M))
- message_admins("[key_name_admin(user)] injected [key_name_admin(M)] with the [name] (MONKEY)")
+ message_admins("[ADMIN_LOOKUPFLW(user)] injected [key_name_admin(M)] with the [name] (MONKEY)")
log_msg += " (MONKEY)"
M = HM.force_give(M)
else
diff --git a/code/game/objects/items/grenades/chem_grenade.dm b/code/game/objects/items/grenades/chem_grenade.dm
index 8bc1665a3f..bed7ba24e4 100644
--- a/code/game/objects/items/grenades/chem_grenade.dm
+++ b/code/game/objects/items/grenades/chem_grenade.dm
@@ -174,15 +174,13 @@
stage_change(EMPTY)
return
- var/areas_name = get_area_name(src, TRUE)
-
if(nadeassembly)
var/mob/M = get_mob_by_ckey(assemblyattacher)
var/mob/last = get_mob_by_ckey(nadeassembly.fingerprintslast)
- message_admins("grenade primed by an assembly, attached by [ADMIN_LOOKUPFLW(M)] and last touched by [ADMIN_LOOKUPFLW(last)] ([nadeassembly.a_left.name] and [nadeassembly.a_right.name]) at [areas_name] [ADMIN_JMP(detonation_turf)].")
- log_game("grenade primed by an assembly, attached by [key_name(M)] and last touched by [key_name(last)] ([nadeassembly.a_left.name] and [nadeassembly.a_right.name]) at [areas_name] [COORD(detonation_turf)]")
+ message_admins("grenade primed by an assembly, attached by [ADMIN_LOOKUPFLW(M)] and last touched by [ADMIN_LOOKUPFLW(last)] ([nadeassembly.a_left.name] and [nadeassembly.a_right.name]) at [ADMIN_VERBOSEJMP(detonation_turf)].")
+ log_game("grenade primed by an assembly, attached by [key_name(M)] and last touched by [key_name(last)] ([nadeassembly.a_left.name] and [nadeassembly.a_right.name]) at [AREACOORD(detonation_turf)]")
- log_game("A grenade detonated at [areas_name] [COORD(detonation_turf)]")
+ log_game("A grenade detonated at [AREACOORD(detonation_turf)]")
update_mob()
@@ -284,18 +282,15 @@
RC.reagents.trans_to(reactants, RC.reagents.total_volume*fraction, threatscale, 1, 1)
chem_splash(get_turf(src), affected_area, list(reactants), ignition_temp, threatscale)
+ var/turf/DT = get_turf(src)
if(nadeassembly)
var/mob/M = get_mob_by_ckey(assemblyattacher)
var/mob/last = get_mob_by_ckey(nadeassembly.fingerprintslast)
- var/turf/T = get_turf(src)
- var/area/A = get_area(T)
- message_admins("grenade primed by an assembly, attached by [key_name_admin(M)](?) (FLW) and last touched by [key_name_admin(last)](?) (FLW) ([nadeassembly.a_left.name] and [nadeassembly.a_right.name]) at [A.name] (JMP).")
- log_game("grenade primed by an assembly, attached by [key_name(M)] and last touched by [key_name(last)] ([nadeassembly.a_left.name] and [nadeassembly.a_right.name]) at [A.name] ([T.x], [T.y], [T.z])")
+ message_admins("grenade primed by an assembly at [AREACOORD(DT)], attached by [ADMIN_LOOKUPFLW(M)] and last touched by [ADMIN_LOOKUPFLW(last)] ([nadeassembly.a_left.name] and [nadeassembly.a_right.name]).")
+ log_game("grenade primed by an assembly at [AREACOORD(DT)], attached by [key_name(M)] and last touched by [key_name(last)] ([nadeassembly.a_left.name] and [nadeassembly.a_right.name])")
else
addtimer(CALLBACK(src, .proc/prime), det_time)
- var/turf/DT = get_turf(src)
- var/area/DA = get_area(DT)
- log_game("A grenade detonated at [DA.name] ([DT.x], [DT.y], [DT.z])")
+ log_game("A grenade detonated at [AREACOORD(DT)]")
diff --git a/code/game/objects/items/grenades/grenade.dm b/code/game/objects/items/grenades/grenade.dm
index 6a08777e61..b627d42ab2 100644
--- a/code/game/objects/items/grenades/grenade.dm
+++ b/code/game/objects/items/grenades/grenade.dm
@@ -61,10 +61,10 @@
preprime(user)
/obj/item/grenade/proc/log_grenade(mob/user, turf/T)
- var/message = "[ADMIN_LOOKUPFLW(user)]) has primed \a [src] for detonation at [ADMIN_COORDJMP(T)]"
+ var/message = "[ADMIN_LOOKUPFLW(user)]) has primed \a [src] for detonation at [ADMIN_VERBOSEJMP(T)]"
GLOB.bombers += message
message_admins(message)
- log_game("[key_name(user)] has primed \a [src] for detonation at [get_area_name(T, TRUE)] [COORD(T)].")
+ log_game("[key_name(user)] has primed \a [src] for detonation at [AREACOORD(T)].")
/obj/item/grenade/proc/preprime(mob/user, delayoverride, msg = TRUE, volume = 60)
var/turf/T = get_turf(src)
diff --git a/code/game/objects/items/grenades/plastic.dm b/code/game/objects/items/grenades/plastic.dm
index 28be94afb4..8e96e97389 100644
--- a/code/game/objects/items/grenades/plastic.dm
+++ b/code/game/objects/items/grenades/plastic.dm
@@ -111,8 +111,8 @@
return
target = AM
- message_admins("[ADMIN_LOOKUPFLW(user)] planted [name] on [target.name] at [ADMIN_COORDJMP(target)] with [det_time] second fuse",0,1)
- log_game("[key_name(user)] planted [name] on [target.name] at [COORD(src)] with [det_time] second fuse")
+ message_admins("[ADMIN_LOOKUPFLW(user)] planted [name] on [target.name] at [ADMIN_VERBOSEJMP(target)] with [det_time] second fuse")
+ log_game("[key_name(user)] planted [name] on [target.name] at [AREACOORD(user)] with [det_time] second fuse")
moveToNullspace() //Yep
@@ -148,8 +148,8 @@
M.say(message_say)
/obj/item/grenade/plastic/suicide_act(mob/user)
- message_admins("[ADMIN_LOOKUPFLW(user)] suicided with [src] at [ADMIN_COORDJMP(user)]",0,1)
- log_game("[key_name(user)] suicided with [src] at [COORD(user)]")
+ message_admins("[ADMIN_LOOKUPFLW(user)] suicided with [src] at [ADMIN_VERBOSEJMP(user)]")
+ log_game("[key_name(user)] suicided with [src] at [AREACOORD(user)]")
user.visible_message("[user] activates [src] and holds it above [user.p_their()] head! It looks like [user.p_theyre()] going out with a bang!")
shout_syndicate_crap(user)
explosion(user,0,2,0) //Cheap explosion imitation because putting prime() here causes runtimes
@@ -188,8 +188,8 @@
user.visible_message("[user] activates the [src.name] and holds it above [user.p_their()] head! It looks like [user.p_theyre()] going out with a bang!")
shout_syndicate_crap(user)
target = user
- message_admins("[ADMIN_LOOKUPFLW(user)] suicided with [name] at [ADMIN_COORDJMP(src)]",0,1)
- message_admins("[key_name(user)] suicided with [name] at ([x],[y],[z])")
+ message_admins("[ADMIN_LOOKUPFLW(user)] suicided with [name] at [ADMIN_VERBOSEJMP(src)]")
+ log_game("[key_name(user)] suicided with [name] at [AREACOORD(user)]")
sleep(10)
explode(get_turf(user))
user.gib(1, 1)
@@ -228,10 +228,10 @@
src.target = AM
moveToNullspace()
- var/message = "[ADMIN_LOOKUPFLW(user)] planted [name] on [target.name] at [ADMIN_COORDJMP(target)] with [timer] second fuse"
+ var/message = "[ADMIN_LOOKUPFLW(user)] planted [name] on [target.name] at [ADMIN_VERBOSEJMP(target)] with [timer] second fuse"
GLOB.bombers += message
message_admins(message,0,1)
- log_game("[key_name(user)] planted [name] on [target.name] at [COORD(target)] with [timer] second fuse")
+ log_game("[key_name(user)] planted [name] on [target.name] at [AREACOORD(target)] with [timer] second fuse")
target.add_overlay(plastic_overlay, TRUE)
to_chat(user, "You plant the bomb. Timer counting down from [timer].")
diff --git a/code/game/objects/items/hot_potato.dm b/code/game/objects/items/hot_potato.dm
index 9777deaf6d..c374ab94fd 100644
--- a/code/game/objects/items/hot_potato.dm
+++ b/code/game/objects/items/hot_potato.dm
@@ -139,8 +139,8 @@
detonation_timerid = addtimer(CALLBACK(src, .proc/detonate), delay, TIMER_STOPPABLE)
START_PROCESSING(SSfastprocess, src)
var/turf/T = get_turf(src)
- message_admins("[user? "[ADMIN_LOOKUPFLW(user)] has primed [src]" : "A [src] has been primed"] (Timer:[delay],Explosive:[detonate_explosion],Range:[detonate_dev_range]/[detonate_heavy_range]/[detonate_light_range]/[detonate_fire_range]) for detonation at [COORD(T)]([T.loc])")
- log_game("[user? "[user] has primed [src]" : "A [src] has been primed"] ([detonate_dev_range]/[detonate_heavy_range]/[detonate_light_range]/[detonate_fire_range]) for detonation at [COORD(T)]([T.loc])")
+ message_admins("[user? "[ADMIN_LOOKUPFLW(user)] has primed [src]" : "A [src] has been primed"] (Timer:[delay],Explosive:[detonate_explosion],Range:[detonate_dev_range]/[detonate_heavy_range]/[detonate_light_range]/[detonate_fire_range]) for detonation at [ADMIN_VERBOSEJMP(T)]")
+ log_game("[user? "[user] has primed [src]" : "A [src] has been primed"] ([detonate_dev_range]/[detonate_heavy_range]/[detonate_light_range]/[detonate_fire_range]) for detonation at [AREACOORD(T)]")
active = TRUE
/obj/item/hot_potato/proc/deactivate()
diff --git a/code/game/objects/items/implants/implant_explosive.dm b/code/game/objects/items/implants/implant_explosive.dm
index 0dc22c3d83..5aa0e31d08 100644
--- a/code/game/objects/items/implants/implant_explosive.dm
+++ b/code/game/objects/items/implants/implant_explosive.dm
@@ -41,8 +41,7 @@
to_chat(imp_in, "You activate your [name].")
active = TRUE
var/turf/boomturf = get_turf(imp_in)
- var/area/A = get_area(boomturf)
- message_admins("[ADMIN_LOOKUPFLW(imp_in)] has activated their [name] at [A.name] [ADMIN_JMP(boomturf)], with cause of [cause].")
+ message_admins("[ADMIN_LOOKUPFLW(imp_in)] has activated their [name] at [ADMIN_VERBOSEJMP(boomturf)], with cause of [cause].")
//If the delay is short, just blow up already jeez
if(delay <= 7)
explosion(src,heavy,medium,weak,weak, flame_range = weak)
diff --git a/code/game/objects/items/implants/implantchair.dm b/code/game/objects/items/implants/implantchair.dm
index e8933b7151..a135cc3af4 100644
--- a/code/game/objects/items/implants/implantchair.dm
+++ b/code/game/objects/items/implants/implantchair.dm
@@ -5,7 +5,6 @@
icon_state = "implantchair"
density = TRUE
opacity = 0
- anchored = TRUE
var/ready = TRUE
var/replenishing = FALSE
@@ -184,11 +183,11 @@
if(!user || !user.Adjacent(src))
return FALSE
objective = stripped_input(usr,"What order do you want to imprint on [C]?","Enter the order","",120)
- message_admins("[key_name_admin(user)] set brainwash machine objective to '[objective]'.")
+ message_admins("[ADMIN_LOOKUPFLW(user)] set brainwash machine objective to '[objective]'.")
log_game("[key_name(user)] set brainwash machine objective to '[objective]'.")
if(C.isloyal())
return FALSE
brainwash(C, objective)
- message_admins("[key_name_admin(user)] brainwashed [key_name_admin(C)] with objective '[objective]'.")
+ message_admins("[ADMIN_LOOKUPFLW(user)] brainwashed [key_name_admin(C)] with objective '[objective]'.")
log_game("[key_name(user)] brainwashed [key_name(C)] with objective '[objective]'.")
return TRUE
\ No newline at end of file
diff --git a/code/game/objects/items/plushes.dm b/code/game/objects/items/plushes.dm
index ae73692cd4..0d993da41b 100644
--- a/code/game/objects/items/plushes.dm
+++ b/code/game/objects/items/plushes.dm
@@ -141,8 +141,8 @@
user.visible_message("[user] slides [grenade] into [src].", \
"You slide [I] into [src].")
grenade = I
- var/turf/T = get_turf(user)
- log_game("[key_name(user)] added a grenade ([I.name]) to [src] at [COORD(T)].")
+ var/turf/grenade_turf = get_turf(src)
+ log_game("[key_name(user)] added a grenade ([I.name]) to [src] at [AREACOORD(grenade_turf)].")
return
if(istype(I, /obj/item/toy/plush))
love(I, user)
diff --git a/code/game/objects/items/stacks/sheets/mineral.dm b/code/game/objects/items/stacks/sheets/mineral.dm
index be7507e3d2..300f18cbeb 100644
--- a/code/game/objects/items/stacks/sheets/mineral.dm
+++ b/code/game/objects/items/stacks/sheets/mineral.dm
@@ -172,8 +172,8 @@ GLOBAL_LIST_INIT(plasma_recipes, list ( \
/obj/item/stack/sheet/mineral/plasma/attackby(obj/item/W as obj, mob/user as mob, params)
if(W.is_hot() > 300)//If the temperature of the object is over 300, then ignite
var/turf/T = get_turf(src)
- message_admins("Plasma sheets ignited by [ADMIN_LOOKUPFLW(user)] in [ADMIN_COORDJMP(T)]",0,1)
- log_game("Plasma sheets ignited by [key_name(user)] in [COORD(T)]")
+ message_admins("Plasma sheets ignited by [ADMIN_LOOKUPFLW(user)] in [ADMIN_VERBOSEJMP(T)]")
+ log_game("Plasma sheets ignited by [key_name(user)] in [AREACOORD(T)]")
fire_act(W.is_hot())
else
return ..()
diff --git a/code/game/objects/items/storage/bags.dm b/code/game/objects/items/storage/bags.dm
index a44e61f16a..a3e4bc112e 100644
--- a/code/game/objects/items/storage/bags.dm
+++ b/code/game/objects/items/storage/bags.dm
@@ -310,7 +310,7 @@
/obj/item/storage/bag/tray/update_icon()
cut_overlays()
for(var/obj/item/I in contents)
- add_overlay(mutable_appearance(I.icon, I.icon_state))
+ add_overlay(new /mutable_appearance(I))
/obj/item/storage/bag/tray/Entered()
. = ..()
diff --git a/code/game/objects/items/storage/belt.dm b/code/game/objects/items/storage/belt.dm
index 1c4ad03b01..249eb67c05 100755
--- a/code/game/objects/items/storage/belt.dm
+++ b/code/game/objects/items/storage/belt.dm
@@ -326,6 +326,53 @@
GET_COMPONENT(STR, /datum/component/storage)
STR.max_w_class = WEIGHT_CLASS_SMALL
+/obj/item/storage/belt/military/snack
+ name = "tactical snack rig"
+
+/obj/item/storage/belt/military/snack/Initialize()
+ . = ..()
+ var/sponsor = pick("DonkCo", "Waffle Co.", "Roffle Co.", "Gorlax Marauders", "Tiger Cooperative")
+ desc = "A set of snack-tical webbing worn by athletes of the [sponsor] VR sports division."
+
+/obj/item/storage/belt/military/snack/ComponentInitialize()
+ . = ..()
+ GET_COMPONENT(STR, /datum/component/storage)
+ STR.max_items = 6
+ STR.max_w_class = WEIGHT_CLASS_SMALL
+ STR.can_hold = typecacheof(list(
+ /obj/item/reagent_containers/food/snacks,
+ /obj/item/reagent_containers/food/drinks
+ ))
+
+ var/amount = 5
+ var/rig_snacks
+ while(contents.len <= amount)
+ rig_snacks = pick(list(
+ /obj/item/reagent_containers/food/snacks/candy,
+ /obj/item/reagent_containers/food/drinks/dry_ramen,
+ /obj/item/reagent_containers/food/snacks/chips,
+ /obj/item/reagent_containers/food/snacks/sosjerky,
+ /obj/item/reagent_containers/food/snacks/syndicake,
+ /obj/item/reagent_containers/food/snacks/spacetwinkie,
+ /obj/item/reagent_containers/food/snacks/cheesiehonkers,
+ /obj/item/reagent_containers/food/snacks/nachos,
+ /obj/item/reagent_containers/food/snacks/cheesynachos,
+ /obj/item/reagent_containers/food/snacks/cubannachos,
+ /obj/item/reagent_containers/food/snacks/nugget,
+ /obj/item/reagent_containers/food/snacks/pastatomato,
+ /obj/item/reagent_containers/food/snacks/rofflewaffles,
+ /obj/item/reagent_containers/food/snacks/donkpocket,
+ /obj/item/reagent_containers/food/drinks/soda_cans/cola,
+ /obj/item/reagent_containers/food/drinks/soda_cans/space_mountain_wind,
+ /obj/item/reagent_containers/food/drinks/soda_cans/dr_gibb,
+ /obj/item/reagent_containers/food/drinks/soda_cans/starkist,
+ /obj/item/reagent_containers/food/drinks/soda_cans/space_up,
+ /obj/item/reagent_containers/food/drinks/soda_cans/pwr_game,
+ /obj/item/reagent_containers/food/drinks/soda_cans/lemon_lime,
+ /obj/item/reagent_containers/food/drinks/drinkingglass/filled/nuka_cola
+ ))
+ new rig_snacks(src)
+
/obj/item/storage/belt/military/abductor
name = "agent belt"
desc = "A belt used by abductor agents."
diff --git a/code/game/objects/items/storage/fancy.dm b/code/game/objects/items/storage/fancy.dm
index f86188984f..5fc5af6779 100644
--- a/code/game/objects/items/storage/fancy.dm
+++ b/code/game/objects/items/storage/fancy.dm
@@ -154,7 +154,7 @@
SendSignal(COMSIG_TRY_STORAGE_TAKE, W, user)
user.put_in_hands(W)
contents -= W
- to_chat(user, "You take a [icon_type] out of the pack.")
+ to_chat(user, "You take \a [W] out of the pack.")
else
to_chat(user, "There are no [icon_type]s left in the pack.")
@@ -166,18 +166,20 @@
else
icon_state = initial(icon_state)
add_overlay("[icon_state]_open")
- var/i = contents.len
+ var/cig_position = 1
for(var/C in contents)
var/mutable_appearance/inserted_overlay = mutable_appearance(icon)
- inserted_overlay.pixel_x = 1 * (i - 1)
+
if(istype(C, /obj/item/lighter/greyscale))
inserted_overlay.icon_state = "lighter_in"
else if(istype(C, /obj/item/lighter))
inserted_overlay.icon_state = "zippo_in"
else
inserted_overlay.icon_state = "cigarette"
+
+ inserted_overlay.icon_state = "[inserted_overlay.icon_state]_[cig_position]"
add_overlay(inserted_overlay)
- i--
+ cig_position++
else
cut_overlays()
@@ -191,7 +193,7 @@
SendSignal(COMSIG_TRY_STORAGE_TAKE, W, M)
M.equip_to_slot_if_possible(W, SLOT_WEAR_MASK)
contents -= W
- to_chat(user, "You take a [icon_type] out of the pack.")
+ to_chat(user, "You take \a [W] out of the pack.")
else
..()
else
@@ -293,22 +295,27 @@
/obj/item/storage/fancy/cigarettes/cigars/update_icon()
cut_overlays()
if(fancy_open)
- add_overlay("[icon_state]_open")
- var/mutable_appearance/cigar_overlay = mutable_appearance(icon, icon_type)
- for(var/c = contents.len, c >= 1, c--)
- cigar_overlay.pixel_x = 4 * (c - 1)
+ icon_state = "[initial(icon_state)]_open"
+
+ var/cigar_position = 1 //generate sprites for cigars in the box
+ for(var/obj/item/clothing/mask/cigarette/cigar/smokes in contents)
+ var/mutable_appearance/cigar_overlay = mutable_appearance(icon, "[smokes.icon_off]_[cigar_position]")
add_overlay(cigar_overlay)
+ cigar_position++
+
else
- icon_state = "cigarcase"
+ icon_state = "[initial(icon_state)]"
/obj/item/storage/fancy/cigarettes/cigars/cohiba
name = "\improper cohiba robusto cigar case"
desc = "A case of imported Cohiba cigars, renowned for their strong flavor."
+ icon_state = "cohibacase"
spawn_type = /obj/item/clothing/mask/cigarette/cigar/cohiba
/obj/item/storage/fancy/cigarettes/cigars/havana
name = "\improper premium havanian cigar case"
desc = "A case of classy Havanian cigars."
+ icon_state = "cohibacase"
spawn_type = /obj/item/clothing/mask/cigarette/cigar/havana
/*
diff --git a/code/game/objects/items/tanks/watertank.dm b/code/game/objects/items/tanks/watertank.dm
index b8eb2dcc00..70ec8243b2 100644
--- a/code/game/objects/items/tanks/watertank.dm
+++ b/code/game/objects/items/tanks/watertank.dm
@@ -291,7 +291,7 @@
resin_cooldown = TRUE
R.remove_any(100)
var/obj/effect/resin_container/A = new (get_turf(src))
- log_game("[key_name(user)] used Resin Launcher at [get_area(user)] [COORD(user)].")
+ log_game("[key_name(user)] used Resin Launcher at [AREACOORD(user)].")
playsound(src,'sound/items/syringeproj.ogg',40,1)
for(var/a=0, a<5, a++)
step_towards(A, target)
diff --git a/code/game/objects/items/teleportation.dm b/code/game/objects/items/teleportation.dm
index dc6fbfe25b..a16e3faa81 100644
--- a/code/game/objects/items/teleportation.dm
+++ b/code/game/objects/items/teleportation.dm
@@ -204,7 +204,7 @@
active_portal_pairs[created[1]] = created[2]
var/obj/effect/portal/c1 = created[1]
var/obj/effect/portal/c2 = created[2]
- investigate_log("was used by [key_name(user)] at [COORD(user)] to create a portal pair with destinations [COORD(c1)] and [COORD(c2)].", INVESTIGATE_PORTAL)
+ investigate_log("was used by [key_name(user)] at [AREACOORD(user)] to create a portal pair with destinations [AREACOORD(c1)] and [AREACOORD(c2)].", INVESTIGATE_PORTAL)
add_fingerprint(user)
/obj/item/hand_tele/proc/on_portal_destroy(obj/effect/portal/P)
diff --git a/code/game/objects/items/theft_tools.dm b/code/game/objects/items/theft_tools.dm
index 4875ef324c..c343abaa68 100644
--- a/code/game/objects/items/theft_tools.dm
+++ b/code/game/objects/items/theft_tools.dm
@@ -34,7 +34,7 @@
cooldown = world.time
flick(pulseicon, src)
radiation_pulse(src, 400, 2)
-
+
/obj/item/nuke_core/suicide_act(mob/user)
user.visible_message("[user] is rubbing [src] against [user.p_them()]self! It looks like [user.p_theyre()] trying to commit suicide!")
return (TOXLOSS)
diff --git a/code/game/objects/items/tools/weldingtool.dm b/code/game/objects/items/tools/weldingtool.dm
index 229aa70ee0..08d0b8bd30 100644
--- a/code/game/objects/items/tools/weldingtool.dm
+++ b/code/game/objects/items/tools/weldingtool.dm
@@ -136,13 +136,13 @@
if(isliving(O))
var/mob/living/L = O
if(L.IgniteMob())
- message_admins("[key_name_admin(user)] set [key_name_admin(L)] on fire")
- log_game("[key_name(user)] set [key_name(L)] on fire")
+ message_admins("[ADMIN_LOOKUPFLW(user)] set [key_name_admin(L)] on fire with [src] at [AREACOORD(user)]")
+ log_game("[key_name(user)] set [key_name(L)] on fire with [src] at [AREACOORD(user)]")
/obj/item/weldingtool/attack_self(mob/user)
if(src.reagents.has_reagent("plasma"))
- message_admins("[key_name_admin(user)] activated a rigged welder.")
+ message_admins("[ADMIN_LOOKUPFLW(user)] activated a rigged welder at [AREACOORD(user)].")
explode()
switched_on(user)
if(welding)
diff --git a/code/game/objects/structures/beds_chairs/chair.dm b/code/game/objects/structures/beds_chairs/chair.dm
index 93b8635dc5..498416f73f 100644
--- a/code/game/objects/structures/beds_chairs/chair.dm
+++ b/code/game/objects/structures/beds_chairs/chair.dm
@@ -385,7 +385,7 @@
turns = 0
if(!istype(user) || !user.canUseTopic(src, BE_CLOSE, ismonkey(user)))
return
- if(!isprocessing)
+ if(!(datum_flags & DF_ISPROCESSING))
user.visible_message("[user] spins [src] around, and Ratvarian technology keeps it spinning FOREVER.", \
"Automated spinny chairs. The pinnacle of Ratvarian technology.")
START_PROCESSING(SSfastprocess, src)
diff --git a/code/game/objects/structures/crates_lockers/closets/secure/supplypod.dm b/code/game/objects/structures/crates_lockers/closets/secure/supplypod.dm
index ca64b7c537..995f858fb0 100644
--- a/code/game/objects/structures/crates_lockers/closets/secure/supplypod.dm
+++ b/code/game/objects/structures/crates_lockers/closets/secure/supplypod.dm
@@ -1,6 +1,7 @@
//The "BDPtarget" temp visual is created by the expressconsole, which in turn makes two things: a falling droppod animation, and the droppod itself.
#define POD_STANDARD 0
#define POD_BLUESPACE 1
+#define POD_CENTCOM 2
//------------------------------------SUPPLY POD-------------------------------------//
/obj/structure/closet/supplypod
@@ -18,17 +19,25 @@
armor = list("melee" = 30, "bullet" = 50, "laser" = 50, "energy" = 100, "bomb" = 90, "bio" = 0, "rad" = 0, "fire" = 80, "acid" = 80)
anchored = TRUE
anchorable = FALSE
- var/generated = FALSE
var/datum/supply_order/SupplyOrder
+ var/atom/other_delivery
/obj/structure/closet/supplypod/bluespacepod
name = "Bluespace Drop Pod"
desc = "A Nanotrasen Bluespace drop pod. Teleports back to CentCom after delivery."
icon_state = "bluespacepod"
-/obj/structure/closet/supplypod/Initialize(mapload, datum/supply_order/so)
+/obj/structure/closet/supplypod/bluespacepod/centcompod
+ name = "CentCom Drop Pod"
+ desc = "A Nanotrasen Bluespace drop pod, this one has been marked with Central Command's designations. Teleports back to Centcom after delivery."
+ icon_state = "centcompod"
+
+/obj/structure/closet/supplypod/Initialize(mapload, var/SO)
. = ..()
- SupplyOrder = so//uses Supply Order passed from expressconsole into BDPtarget
+ if(istype(SO, /datum/supply_order))
+ SupplyOrder = SO//uses Supply Order passed from expressconsole into BDPtarget
+ else
+ other_delivery = SO//if the object is not a supply order, we force the object in the pod
addtimer(CALLBACK(src, .proc/open), 30)//open 3seconds after appearing
/obj/structure/closet/supplypod/update_icon()
@@ -47,9 +56,10 @@
/obj/structure/closet/supplypod/open()
var/turf/T = get_turf(src)
opened = TRUE
- if(!generated)
- generated = TRUE
+ if(SupplyOrder)
SupplyOrder.generate(T)//not called during populateContents as supplyorder generation requires a turf
+ if(other_delivery)
+ new other_delivery(T)
update_icon()
playsound(src, open_sound, 15, 1, -3)
if(istype(src,/obj/structure/closet/supplypod/bluespacepod))
@@ -66,21 +76,24 @@
//------------------------------------FALLING SUPPLY POD-------------------------------------//
/obj/effect/temp_visual/DPfall
icon = 'icons/obj/2x2.dmi'
- icon_state = "supplypod_falling"
pixel_x = -16
pixel_y = -5
pixel_z = 200
desc = "Get out of the way!"
layer = FLY_LAYER//that wasnt flying, that was falling with style!
randomdir = FALSE
+ icon_state = "supplypod_falling"
/obj/effect/temp_visual/DPfall/Initialize(var/dropLocation, var/podID)
- if (podID == POD_BLUESPACE)
+ if (podID == POD_STANDARD)
+ icon_state = "supplypod_falling"
+ name = "Supply Drop Pod"
+ else if (podID == POD_BLUESPACE)
icon_state = "bluespacepod_falling"
name = "Bluespace Drop Pod"
else
- icon_state = "supplypod_falling"
- name = "Supply Drop Pod"
+ icon_state = "centcompod_falling"
+ name = "CentCom Drop Pod"
. = ..()
//------------------------------------TEMPORARY_VISUAL-------------------------------------//
@@ -91,22 +104,35 @@
light_range = 2
var/obj/effect/temp_visual/fallingPod
-/obj/effect/DPtarget/Initialize(mapload, datum/supply_order/SO, var/podID)
+/obj/effect/DPtarget/Initialize(mapload, var/SO, var/podID, var/target)
. = ..()
- addtimer(CALLBACK(src, .proc/beginLaunch, SO, podID), podID == POD_BLUESPACE ? 15 : 30)//standard pods take 3 seconds to come in, bluespace pods take 1.5
+ var/delayTime = 30//default time is 30 seconds
+ switch(podID)
+ if(POD_BLUESPACE)
+ delayTime = 15
+ if(POD_CENTCOM)
+ delayTime = 5//speedy delivery
-/obj/effect/DPtarget/proc/beginLaunch(datum/supply_order/SO, var/podID)
+ addtimer(CALLBACK(src, .proc/beginLaunch, SO, podID), delayTime)//standard pods take 3 seconds to come in, bluespace pods take 1.5
+
+/obj/effect/DPtarget/proc/beginLaunch(var/SO, var/podID)
fallingPod = new /obj/effect/temp_visual/DPfall(drop_location(), podID)
animate(fallingPod, pixel_z = 0, time = 3, easing = LINEAR_EASING)//make and animate a falling pod
addtimer(CALLBACK(src, .proc/endLaunch, SO, podID), 3, TIMER_CLIENT_TIME)//fall 0.3seconds
-/obj/effect/DPtarget/proc/endLaunch(datum/supply_order/SO, var/podID)
- if (podID == POD_BLUESPACE)
+/obj/effect/DPtarget/proc/endLaunch(var/SO, var/podID)
+ if (podID == POD_STANDARD)
+ new /obj/structure/closet/supplypod(drop_location(), SO)//pod is created
+ explosion(src,0,0,2, flame_range = 3) //less advanced equipment than bluespace pod, so larger explosion when landing
+ else if (podID == POD_BLUESPACE)
new /obj/structure/closet/supplypod/bluespacepod(drop_location(), SO)//pod is created
explosion(src,0,0,2, flame_range = 1) //explosion and camshake (shoutout to @cyberboss)
else
- new /obj/structure/closet/supplypod(drop_location(), SO)//pod is created
- explosion(src,0,0,2, flame_range = 3) //less advanced equipment than bluespace pod, so larger explosion when landing
+ new /obj/structure/closet/supplypod/bluespacepod/centcompod(drop_location(), SO)//CentCom supplypods dont create explosions; instead they directly deal 40 fire damage to people on the turf
+ var/turf/T = get_turf(src)
+ T.hotspot_expose(700, 50, 1)//same as fireball
+ for(var/mob/living/M in T.contents)
+ M.adjustFireLoss(40)
qdel(src)
/obj/effect/DPtarget/Destroy()
@@ -120,4 +146,4 @@
icon = 'icons/obj/module.dmi'
icon_state = "cargodisk"
item_state = "card-id"
- w_class = WEIGHT_CLASS_SMALL
+ w_class = WEIGHT_CLASS_SMALL
\ No newline at end of file
diff --git a/code/game/objects/structures/crates_lockers/closets/syndicate.dm b/code/game/objects/structures/crates_lockers/closets/syndicate.dm
index 3edbde93b7..f2d32b773e 100644
--- a/code/game/objects/structures/crates_lockers/closets/syndicate.dm
+++ b/code/game/objects/structures/crates_lockers/closets/syndicate.dm
@@ -106,7 +106,11 @@
/obj/item/stack/sheet/plasteel,
/obj/item/stack/sheet/mineral/titanium,
/obj/item/stack/sheet/mineral/plastitanium,
- /obj/item/stack/rods
+ /obj/item/stack/rods,
+ /obj/item/stack/sheet/bluespace_crystal,
+ /obj/item/stack/sheet/mineral/abductor,
+ /obj/item/stack/sheet/plastic,
+ /obj/item/stack/sheet/mineral/wood
)
for(var/i = 0, i<2, i++)
diff --git a/code/game/objects/structures/divine.dm b/code/game/objects/structures/divine.dm
index 4ffc2fe060..a98b800e09 100644
--- a/code/game/objects/structures/divine.dm
+++ b/code/game/objects/structures/divine.dm
@@ -18,7 +18,7 @@
return
to_chat(user, "You attempt to sacrifice [L] by invoking the sacrificial ritual.")
L.gib()
- message_admins("[key_name_admin(user)] has sacrificed [key_name_admin(L)] on the sacrifical altar.")
+ message_admins("[ADMIN_LOOKUPFLW(user)] has sacrificed [key_name_admin(L)] on the sacrifical altar at [AREACOORD(src)].")
/obj/structure/healingfountain
name = "healing fountain"
diff --git a/code/game/objects/structures/false_walls.dm b/code/game/objects/structures/false_walls.dm
index 842e540551..c877488601 100644
--- a/code/game/objects/structures/false_walls.dm
+++ b/code/game/objects/structures/false_walls.dm
@@ -245,8 +245,8 @@
/obj/structure/falsewall/plasma/attackby(obj/item/W, mob/user, params)
if(W.is_hot() > 300)
var/turf/T = get_turf(src)
- message_admins("Plasma falsewall ignited by [ADMIN_LOOKUPFLW(user)] in [ADMIN_COORDJMP(T)]",0,1)
- log_game("Plasma falsewall ignited by [key_name(user)] in [COORD(T)]")
+ message_admins("Plasma falsewall ignited by [ADMIN_LOOKUPFLW(user)] in [ADMIN_VERBOSEJMP(T)]")
+ log_game("Plasma falsewall ignited by [key_name(user)] in [AREACOORD(T)]")
burnbabyburn()
else
return ..()
diff --git a/code/game/objects/structures/manned_turret.dm b/code/game/objects/structures/manned_turret.dm
index d21379cb44..169132a158 100644
--- a/code/game/objects/structures/manned_turret.dm
+++ b/code/game/objects/structures/manned_turret.dm
@@ -6,6 +6,7 @@
icon = 'icons/obj/turrets.dmi'
icon_state = "machinegun"
can_buckle = TRUE
+ anchored = FALSE
density = TRUE
max_integrity = 100
buckle_lying = FALSE
diff --git a/code/game/objects/structures/mineral_doors.dm b/code/game/objects/structures/mineral_doors.dm
index f2635770c6..561cc8ef8c 100644
--- a/code/game/objects/structures/mineral_doors.dm
+++ b/code/game/objects/structures/mineral_doors.dm
@@ -204,8 +204,8 @@
/obj/structure/mineral_door/transparent/plasma/attackby(obj/item/W, mob/user, params)
if(W.is_hot())
var/turf/T = get_turf(src)
- message_admins("Plasma mineral door ignited by [ADMIN_LOOKUPFLW(user)] in [ADMIN_COORDJMP(T)]",0,1)
- log_game("Plasma mineral door ignited by [key_name(user)] in [COORD(T)]")
+ message_admins("Plasma mineral door ignited by [ADMIN_LOOKUPFLW(user)] in [ADMIN_VERBOSEJMP(T)]")
+ log_game("Plasma mineral door ignited by [key_name(user)] in [AREACOORD(T)]")
TemperatureAct()
else
return ..()
diff --git a/code/game/objects/structures/statues.dm b/code/game/objects/structures/statues.dm
index 1f7991e374..d22dbddd52 100644
--- a/code/game/objects/structures/statues.dm
+++ b/code/game/objects/structures/statues.dm
@@ -123,18 +123,18 @@
if(burn)
var/turf/T = get_turf(src)
if(Proj.firer)
- message_admins("Plasma statue ignited by [ADMIN_LOOKUPFLW(Proj.firer)] in [ADMIN_COORDJMP(T)]",0,1)
- log_game("Plasma statue ignited by [key_name(Proj.firer)] in [COORD(T)]")
+ message_admins("Plasma statue ignited by [ADMIN_LOOKUPFLW(Proj.firer)] in [ADMIN_VERBOSEJMP(T)]")
+ log_game("Plasma statue ignited by [key_name(Proj.firer)] in [AREACOORD(T)]")
else
- message_admins("Plasma statue ignited by [Proj]. No known firer, in [ADMIN_COORDJMP(T)]",0,1)
- log_game("Plasma statue ignited by [Proj] in [COORD(T)]. No known firer.")
+ message_admins("Plasma statue ignited by [Proj]. No known firer, in [ADMIN_VERBOSEJMP(T)]")
+ log_game("Plasma statue ignited by [Proj] in [AREACOORD(T)]. No known firer.")
..()
/obj/structure/statue/plasma/attackby(obj/item/W, mob/user, params)
if(W.is_hot() > 300)//If the temperature of the object is over 300, then ignite
var/turf/T = get_turf(src)
- message_admins("Plasma statue ignited by [ADMIN_LOOKUPFLW(user)] in [ADMIN_COORDJMP(T)]",0,1)
- log_game("Plasma statue ignited by [key_name(user)] in [COORD(T)]")
+ message_admins("Plasma statue ignited by [ADMIN_LOOKUPFLW(user)] in [ADMIN_VERBOSEJMP(T)]")
+ log_game("Plasma statue ignited by [key_name(user)] in [AREACOORD(T)]")
ignite(W.is_hot())
else
return ..()
diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm
index 95c1cafd5d..0d7500ebf2 100644
--- a/code/game/objects/structures/tables_racks.dm
+++ b/code/game/objects/structures/tables_racks.dm
@@ -381,7 +381,7 @@
obj_integrity = max_integrity
/obj/structure/table/bronze
- name = "brass table"
+ name = "bronze table"
desc = "A solid table made out of bronze."
icon = 'icons/obj/smooth_structures/brass_table.dmi'
icon_state = "brass_table"
diff --git a/code/game/objects/structures/watercloset.dm b/code/game/objects/structures/watercloset.dm
index 929e6e1520..4798aae883 100644
--- a/code/game/objects/structures/watercloset.dm
+++ b/code/game/objects/structures/watercloset.dm
@@ -210,7 +210,6 @@
icon = 'icons/obj/watercloset.dmi'
icon_state = "shower"
density = FALSE
- anchored = TRUE
use_power = NO_POWER_USE
var/on = FALSE
var/obj/effect/mist/mymist = null
diff --git a/code/game/shuttle_engines.dm b/code/game/shuttle_engines.dm
index 396358ae47..0f68e68b7b 100644
--- a/code/game/shuttle_engines.dm
+++ b/code/game/shuttle_engines.dm
@@ -42,7 +42,7 @@
switch(state)
if(ENGINE_UNWRENCHED)
to_chat(user, "The [src.name] needs to be wrenched to the floor!")
- if(EM_SECURED)
+ if(ENGINE_WRENCHED)
if(!I.tool_start_check(user, amount=0))
return TRUE
@@ -55,7 +55,7 @@
to_chat(user, "You weld \the [src] to the floor.")
alter_engine_power(engine_power)
- if(EM_WELDED)
+ if(ENGINE_WELDED)
if(!I.tool_start_check(user, amount=0))
return TRUE
@@ -149,3 +149,8 @@
bound_width = 96
bound_height = 96
appearance_flags = 0
+
+#undef ENGINE_UNWRENCHED
+#undef ENGINE_WRENCHED
+#undef ENGINE_WELDED
+#undef ENGINE_WELDTIME
diff --git a/code/game/turfs/closed.dm b/code/game/turfs/closed.dm
index 657bf89a34..db1dba66cf 100644
--- a/code/game/turfs/closed.dm
+++ b/code/game/turfs/closed.dm
@@ -36,6 +36,14 @@
icon = 'icons/turf/shuttleold.dmi'
icon_state = "block"
+/turf/closed/indestructible/sandstone
+ name = "sandstone wall"
+ desc = "A wall with sandstone plating. Rough."
+ icon = 'icons/turf/walls/sandstone_wall.dmi'
+ icon_state = "sandstone"
+ baseturfs = /turf/closed/indestructible/sandstone
+ smooth = SMOOTH_TRUE
+
/turf/closed/indestructible/oldshuttle/corner
icon_state = "corner"
@@ -152,4 +160,4 @@
name = "wall"
desc = "A wall made out of a strange metal. The squares on it pulse in a predictable pattern."
icon = 'icons/turf/walls/hierophant_wall.dmi'
- icon_state = "wall"
\ No newline at end of file
+ icon_state = "wall"
diff --git a/code/game/turfs/simulated/floor/mineral_floor.dm b/code/game/turfs/simulated/floor/mineral_floor.dm
index e2e3356684..0ac7154592 100644
--- a/code/game/turfs/simulated/floor/mineral_floor.dm
+++ b/code/game/turfs/simulated/floor/mineral_floor.dm
@@ -44,8 +44,8 @@
/turf/open/floor/mineral/plasma/attackby(obj/item/W, mob/user, params)
if(W.is_hot() > 300)//If the temperature of the object is over 300, then ignite
- message_admins("Plasma flooring was ignited by [ADMIN_LOOKUPFLW(user)] in [ADMIN_COORDJMP(src)]",0,1)
- log_game("Plasma flooring was ignited by [key_name(user)] in [COORD(src)]")
+ message_admins("Plasma flooring was ignited by [ADMIN_LOOKUPFLW(user)] in [ADMIN_VERBOSEJMP(src)]")
+ log_game("Plasma flooring was ignited by [key_name(user)] in [AREACOORD(src)]")
ignite(W.is_hot())
return
..()
diff --git a/code/game/turfs/simulated/floor/misc_floor.dm b/code/game/turfs/simulated/floor/misc_floor.dm
index 650a66adf1..f7cea96a3f 100644
--- a/code/game/turfs/simulated/floor/misc_floor.dm
+++ b/code/game/turfs/simulated/floor/misc_floor.dm
@@ -243,7 +243,7 @@
/turf/open/floor/bronze
- name = "clockwork floor"
+ name = "bronze floor"
desc = "Some heavy bronze tiles."
icon = 'icons/obj/clockwork_objects.dmi'
icon_state = "clockwork_floor"
diff --git a/code/game/turfs/simulated/floor/plating/misc_plating.dm b/code/game/turfs/simulated/floor/plating/misc_plating.dm
index b21e361639..a04bd818ad 100644
--- a/code/game/turfs/simulated/floor/plating/misc_plating.dm
+++ b/code/game/turfs/simulated/floor/plating/misc_plating.dm
@@ -119,6 +119,9 @@
icon_state = "water"
baseturfs = /turf/open/floor/plating/beach/water
+/turf/open/floor/plating/beach/coastline_t/sandwater_inner
+ icon_state = "sandwater_inner"
+ baseturfs = /turf/open/floor/plating/beach/coastline_t/sandwater_inner
/turf/open/floor/plating/ironsand
name = "iron sand"
diff --git a/code/game/turfs/simulated/minerals.dm b/code/game/turfs/simulated/minerals.dm
index 9928f9cdc5..5393df669b 100644
--- a/code/game/turfs/simulated/minerals.dm
+++ b/code/game/turfs/simulated/minerals.dm
@@ -451,20 +451,19 @@
stage = GIBTONITE_ACTIVE
visible_message("There was gibtonite inside! It's going to explode!")
var/turf/bombturf = get_turf(src)
- var/area/A = get_area(bombturf)
var/notify_admins = 0
if(z != 5)
notify_admins = 1
if(!triggered_by_explosion)
- message_admins("[ADMIN_LOOKUPFLW(user)] has triggered a gibtonite deposit reaction at [A.name] [ADMIN_JMP(bombturf)].")
+ message_admins("[ADMIN_LOOKUPFLW(user)] has triggered a gibtonite deposit reaction at [ADMIN_VERBOSEJMP(bombturf)].")
else
- message_admins("An explosion has triggered a gibtonite deposit reaction at [A.name] [ADMIN_JMP(bombturf)].")
+ message_admins("An explosion has triggered a gibtonite deposit reaction at [ADMIN_VERBOSEJMP(bombturf)].")
if(!triggered_by_explosion)
- log_game("[key_name(user)] has triggered a gibtonite deposit reaction at [A.name] [COORD(bombturf)].")
+ log_game("[key_name(user)] has triggered a gibtonite deposit reaction at [AREACOORD(bombturf)].")
else
- log_game("An explosion has triggered a gibtonite deposit reaction at [A.name] [COORD(bombturf)]")
+ log_game("An explosion has triggered a gibtonite deposit reaction at [AREACOORD(bombturf)]")
countdown(notify_admins)
diff --git a/code/game/turfs/simulated/wall/mineral_walls.dm b/code/game/turfs/simulated/wall/mineral_walls.dm
index c8ec3a5c5f..94e5a0a063 100644
--- a/code/game/turfs/simulated/wall/mineral_walls.dm
+++ b/code/game/turfs/simulated/wall/mineral_walls.dm
@@ -94,8 +94,8 @@
/turf/closed/wall/mineral/plasma/attackby(obj/item/W, mob/user, params)
if(W.is_hot() > 300)//If the temperature of the object is over 300, then ignite
- message_admins("Plasma wall ignited by [ADMIN_LOOKUPFLW(user)] in [ADMIN_COORDJMP(src)]",0,1)
- log_game("Plasma wall ignited by [key_name(user)] in [COORD(src)]")
+ message_admins("Plasma wall ignited by [ADMIN_LOOKUPFLW(user)] in [ADMIN_VERBOSEJMP(src)]")
+ log_game("Plasma wall ignited by [key_name(user)] in [AREACOORD(src)]")
ignite(W.is_hot())
return
..()
diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm
index 00ac813a11..9cc2d67020 100755
--- a/code/game/turfs/turf.dm
+++ b/code/game/turfs/turf.dm
@@ -438,3 +438,22 @@
/turf/AllowDrop()
return TRUE
+
+/turf/proc/add_vomit_floor(mob/living/carbon/M, toxvomit = 0)
+ var/obj/effect/decal/cleanable/vomit/V = new /obj/effect/decal/cleanable/vomit(src, M.get_static_viruses())
+ // If the vomit combined, apply toxicity and reagents to the old vomit
+ if (QDELETED(V))
+ V = locate() in src
+ // Make toxins vomit look different
+ if(toxvomit)
+ V.icon_state = "vomittox_[pick(1,4)]"
+ if(M.reagents)
+ clear_reagents_to_vomit_pool(M,V)
+
+/proc/clear_reagents_to_vomit_pool(mob/living/carbon/M, obj/effect/decal/cleanable/vomit/V)
+ M.reagents.trans_to(V, M.reagents.total_volume / 10)
+ for(var/datum/reagent/R in M.reagents.reagent_list) //clears the stomach of anything that might be digested as food
+ if(istype(R, /datum/reagent/consumable))
+ var/datum/reagent/consumable/nutri_check = R
+ if(nutri_check.nutriment_factor >0)
+ M.reagents.remove_reagent(R.id,R.volume)
diff --git a/code/modules/NTNet/relays.dm b/code/modules/NTNet/relays.dm
index ab482f1f16..eaf2aa466b 100644
--- a/code/modules/NTNet/relays.dm
+++ b/code/modules/NTNet/relays.dm
@@ -7,7 +7,6 @@
idle_power_usage = 100
icon = 'icons/obj/machines/telecomms.dmi'
icon_state = "bus"
- anchored = TRUE
density = TRUE
circuit = /obj/item/circuitboard/machine/ntnet_relay
var/datum/ntnet/NTNet = null // This is mostly for backwards reference and to allow varedit modifications from ingame.
diff --git a/code/modules/VR/vr_sleeper.dm b/code/modules/VR/vr_sleeper.dm
index 21db27ce19..dd89a08c9e 100644
--- a/code/modules/VR/vr_sleeper.dm
+++ b/code/modules/VR/vr_sleeper.dm
@@ -8,7 +8,6 @@
icon = 'icons/obj/machines/sleeper.dmi'
icon_state = "sleeper"
state_open = TRUE
- anchored = TRUE
occupant_typecache = list(/mob/living/carbon/human) // turned into typecache in Initialize
circuit = /obj/item/circuitboard/machine/vr_sleeper
var/you_die_in_the_game_you_die_for_real = FALSE
@@ -179,7 +178,7 @@
vr_human.vr_sleeper = null // Prevents race condition where a new human could get created out of order and set to null.
QDEL_NULL(vr_human)
-/obj/machinery/vr_sleeper/proc/emagNotify()
+/obj/machinery/vr_sleeper/proc/emagNotify()
if(vr_human)
vr_human.Dizzy(10)
@@ -199,10 +198,10 @@
vr_category = "team_1"
/obj/effect/landmark/vr_spawn/team_2
- vr_category = "team_2"
+ vr_category = "team_2"
/obj/effect/landmark/vr_spawn/admin
- vr_category = "event"
+ vr_category = "event"
/obj/effect/landmark/vr_spawn/syndicate // Multiple missions will use syndicate gear
vr_outfit = /datum/outfit/vr/syndicate
diff --git a/code/modules/admin/DB_ban/functions.dm b/code/modules/admin/DB_ban/functions.dm
index 90eac62b16..09d0d5d2e2 100644
--- a/code/modules/admin/DB_ban/functions.dm
+++ b/code/modules/admin/DB_ban/functions.dm
@@ -266,7 +266,7 @@
var/datum/DBQuery/query_edit_ban_reason = SSdbcore.NewQuery("UPDATE [format_table_name("ban")] SET reason = '[value]', edits = CONCAT(edits,'- [eckey] changed ban reason from \\\"[reason]\\\" to \\\"[value]\\\"
') WHERE id = [banid]")
if(!query_edit_ban_reason.warn_execute())
return
- message_admins("[key_name_admin(usr)] has edited a ban for [pckey]'s reason from [reason] to [value]",1)
+ message_admins("[key_name_admin(usr)] has edited a ban for [pckey]'s reason from [reason] to [value]")
if("duration")
if(!value)
value = input("Insert the new duration (in minutes) for [pckey]'s ban", "New Duration", "[duration]", null) as null|num
@@ -277,7 +277,7 @@
var/datum/DBQuery/query_edit_ban_duration = SSdbcore.NewQuery("UPDATE [format_table_name("ban")] SET duration = [value], edits = CONCAT(edits,'- [eckey] changed ban duration from [duration] to [value]
'), expiration_time = DATE_ADD(bantime, INTERVAL [value] MINUTE) WHERE id = [banid]")
if(!query_edit_ban_duration.warn_execute())
return
- message_admins("[key_name_admin(usr)] has edited a ban for [pckey]'s duration from [duration] to [value]",1)
+ message_admins("[key_name_admin(usr)] has edited a ban for [pckey]'s duration from [duration] to [value]")
if("unban")
if(alert("Unban [pckey]?", "Unban?", "Yes", "No") == "Yes")
DB_ban_unban_by_id(banid)
@@ -328,7 +328,7 @@
var/datum/DBQuery/query_unban = SSdbcore.NewQuery(sql_update)
if(!query_unban.warn_execute())
return
- message_admins("[key_name_admin(usr)] has lifted [pckey]'s ban.",1)
+ message_admins("[key_name_admin(usr)] has lifted [pckey]'s ban.")
/client/proc/DB_ban_panel()
set category = "Admin"
diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm
index a37e7217af..7958e8e943 100644
--- a/code/modules/admin/admin.dm
+++ b/code/modules/admin/admin.dm
@@ -29,7 +29,7 @@
body += "
Client
No client attached to mob
" + + dat += "Mob