diff --git a/_maps/map_files/BirdStation/BirdStation.dmm b/_maps/map_files/BirdStation/BirdStation.dmm
index 0625de04704..02cee02205b 100644
--- a/_maps/map_files/BirdStation/BirdStation.dmm
+++ b/_maps/map_files/BirdStation/BirdStation.dmm
@@ -1435,7 +1435,7 @@
/area/space)
"adL" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"adM" = (
@@ -1550,12 +1550,12 @@
dir = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"aec" = (
/turf/open/floor/bluegrid,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"aed" = (
@@ -1564,7 +1564,7 @@
dir = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"aee" = (
@@ -1584,7 +1584,7 @@
dir = 6
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"aeg" = (
@@ -1592,7 +1592,7 @@
dir = 8
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"aeh" = (
@@ -1681,7 +1681,7 @@
uses = 10
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"aeq" = (
@@ -1689,7 +1689,7 @@
network = "tcommsat"
},
/turf/open/floor/plasteel,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"aer" = (
@@ -1785,7 +1785,7 @@
/area/engine/engineering)
"aeB" = (
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"aeC" = (
@@ -1840,7 +1840,7 @@
"aeI" = (
/obj/machinery/hologram/holopad,
/turf/open/floor/plasteel,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"aeJ" = (
@@ -1926,7 +1926,7 @@
/area/space)
"aeU" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"aeV" = (
@@ -1935,7 +1935,7 @@
dir = 5
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"aeW" = (
@@ -1953,7 +1953,7 @@
dir = 9
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"aeY" = (
@@ -2052,13 +2052,13 @@
layer = 4.1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"afm" = (
/obj/machinery/camera/autoname,
/turf/open/floor/plasteel/black,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"afn" = (
@@ -2067,12 +2067,12 @@
},
/obj/machinery/ntnet_relay,
/turf/open/floor/plasteel/black,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"afo" = (
/turf/open/floor/plasteel/black,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"afp" = (
@@ -2080,7 +2080,7 @@
icon_state = "2-4"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"afq" = (
@@ -2171,19 +2171,19 @@
"afC" = (
/obj/machinery/telecomms/bus/preset_one/birdstation,
/turf/open/floor/bluegrid,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"afD" = (
/obj/machinery/blackbox_recorder,
/turf/open/floor/bluegrid,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"afE" = (
/obj/machinery/telecomms/broadcaster/preset_left/birdstation,
/turf/open/floor/bluegrid,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"afF" = (
@@ -2191,7 +2191,7 @@
icon_state = "1-2"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"afG" = (
@@ -2206,7 +2206,7 @@
dir = 10
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"afI" = (
@@ -2344,24 +2344,24 @@
"afX" = (
/obj/machinery/telecomms/server/presets/common/birdstation,
/turf/open/floor/bluegrid,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"afY" = (
/turf/open/floor/bluegrid,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"afZ" = (
/obj/machinery/telecomms/hub/preset,
/turf/open/floor/bluegrid,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"aga" = (
/obj/machinery/announcement_system,
/turf/open/floor/bluegrid,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"agb" = (
@@ -2373,7 +2373,7 @@
icon_state = "1-2"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"agc" = (
@@ -2515,19 +2515,19 @@
"agv" = (
/obj/machinery/telecomms/processor/preset_one/birdstation,
/turf/open/floor/bluegrid,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"agw" = (
/obj/machinery/message_server,
/turf/open/floor/bluegrid,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"agx" = (
/obj/machinery/telecomms/receiver/preset_left/birdstation,
/turf/open/floor/bluegrid,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"agy" = (
@@ -2535,7 +2535,7 @@
dir = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior{
+/area/ai_monitored/turret_protected/aisat_interior{
name = "\improper AI Core Lobby"
})
"agz" = (
@@ -2543,7 +2543,7 @@
name = "Cyborg"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior{
+/area/ai_monitored/turret_protected/aisat_interior{
name = "\improper AI Core Lobby"
})
"agA" = (
@@ -2551,7 +2551,7 @@
icon_state = "1-2"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior{
+/area/ai_monitored/turret_protected/aisat_interior{
name = "\improper AI Core Lobby"
})
"agB" = (
@@ -2559,12 +2559,12 @@
dir = 8
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior{
+/area/ai_monitored/turret_protected/aisat_interior{
name = "\improper AI Core Lobby"
})
"agC" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/aisat_interior{
+/area/ai_monitored/turret_protected/aisat_interior{
name = "\improper AI Core Lobby"
})
"agD" = (
@@ -2700,23 +2700,23 @@
"agP" = (
/obj/structure/window/reinforced,
/turf/open/floor/plasteel/black,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"agQ" = (
/obj/machinery/door/window/southright,
/turf/open/floor/plasteel/black,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"agR" = (
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior{
+/area/ai_monitored/turret_protected/aisat_interior{
name = "\improper AI Core Lobby"
})
"agS" = (
/turf/open/floor/bluegrid,
-/area/turret_protected/aisat_interior{
+/area/ai_monitored/turret_protected/aisat_interior{
name = "\improper AI Core Lobby"
})
"agT" = (
@@ -2724,7 +2724,7 @@
icon_state = "1-2"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/aisat_interior{
+/area/ai_monitored/turret_protected/aisat_interior{
name = "\improper AI Core Lobby"
})
"agU" = (
@@ -2855,7 +2855,7 @@
"ahl" = (
/obj/effect/spawner/structure/window/reinforced,
/turf/open/floor/plating,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"ahm" = (
@@ -2863,7 +2863,7 @@
network = "tcommsat"
},
/turf/open/floor/plasteel,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"ahn" = (
@@ -2876,7 +2876,7 @@
layer = 4.1
},
/turf/open/floor/plasteel,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"aho" = (
@@ -2887,12 +2887,12 @@
},
/obj/item/weapon/pen,
/turf/open/floor/plasteel,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"ahp" = (
/turf/open/floor/plasteel/neutral,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"ahq" = (
@@ -2904,7 +2904,7 @@
dir = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior{
+/area/ai_monitored/turret_protected/aisat_interior{
name = "\improper AI Core Lobby"
})
"ahr" = (
@@ -2912,7 +2912,7 @@
icon_state = "4-8"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior{
+/area/ai_monitored/turret_protected/aisat_interior{
name = "\improper AI Core Lobby"
})
"ahs" = (
@@ -2930,7 +2930,7 @@
icon_state = "tube1"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior{
+/area/ai_monitored/turret_protected/aisat_interior{
name = "\improper AI Core Lobby"
})
"ahu" = (
@@ -3060,7 +3060,7 @@
"ahL" = (
/obj/item/device/radio/beacon,
/turf/open/floor/plasteel/neutral,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"ahM" = (
@@ -3068,7 +3068,7 @@
icon_state = "4-8"
},
/turf/open/floor/plasteel/neutral,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"ahN" = (
@@ -3076,7 +3076,7 @@
icon_state = "2-4"
},
/turf/open/floor/plasteel/neutral,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"ahO" = (
@@ -3088,7 +3088,7 @@
icon_state = "4-8"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"ahP" = (
@@ -3096,7 +3096,7 @@
icon_state = "1-8"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior{
+/area/ai_monitored/turret_protected/aisat_interior{
name = "\improper AI Core Lobby"
})
"ahQ" = (
@@ -3180,7 +3180,7 @@
"aic" = (
/obj/machinery/light,
/turf/open/floor/plasteel/neutral,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"aid" = (
@@ -3193,7 +3193,7 @@
icon_state = "0-8"
},
/turf/open/floor/plasteel/neutral,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"aie" = (
@@ -3204,7 +3204,7 @@
icon_state = "1-2"
},
/turf/open/floor/plasteel/neutral,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"aif" = (
@@ -3213,7 +3213,7 @@
layer = 4.1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior{
+/area/ai_monitored/turret_protected/aisat_interior{
name = "\improper AI Core Lobby"
})
"aig" = (
@@ -3223,7 +3223,7 @@
},
/obj/structure/cable/cyan,
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior{
+/area/ai_monitored/turret_protected/aisat_interior{
name = "\improper AI Core Lobby"
})
"aih" = (
@@ -3346,7 +3346,7 @@
req_access_txt = "61"
},
/turf/open/floor/plasteel/neutral,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"aiy" = (
@@ -3358,7 +3358,7 @@
icon_state = "1-2"
},
/turf/open/floor/plasteel/neutral,
-/area/turret_protected/tcomeast{
+/area/ai_monitored/turret_protected/tcomeast{
name = "\improper Telecommunications Chamber"
})
"aiz" = (
@@ -4116,7 +4116,7 @@
})
"akh" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aki" = (
/turf/closed/wall,
/area/gateway)
@@ -4248,11 +4248,11 @@
pixel_y = 0
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"akA" = (
/obj/machinery/porta_turret/ai,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"akB" = (
/obj/structure/table,
/obj/item/weapon/aiModule/reset,
@@ -4260,14 +4260,14 @@
dir = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"akC" = (
/obj/structure/table,
/obj/item/weapon/aiModule/core/full/asimov,
/obj/item/weapon/aiModule/core/full/asimovpp,
/obj/item/weapon/aiModule/core/full/corp,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"akD" = (
/obj/item/weapon/twohanded/required/kirbyplants{
icon_state = "plant-02";
@@ -4378,26 +4378,26 @@
icon_state = "4-8"
},
/turf/open/floor/plasteel,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"akT" = (
/obj/structure/cable/cyan{
icon_state = "2-8"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"akU" = (
/obj/machinery/door/airlock/command{
name = "command door";
req_access_txt = "19"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"akV" = (
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"akW" = (
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"akX" = (
/obj/machinery/computer/upload/borg,
/obj/structure/window/reinforced{
@@ -4412,7 +4412,7 @@
req_access_txt = "55"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"akY" = (
/obj/item/weapon/twohanded/required/kirbyplants{
anchored = 1;
@@ -4424,7 +4424,7 @@
dir = 8
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"akZ" = (
/turf/closed/wall/r_wall,
/area/maintenance/fsmaint)
@@ -4571,7 +4571,7 @@
dir = 8
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"alt" = (
/obj/machinery/computer/upload/ai,
/obj/structure/window/reinforced{
@@ -4586,7 +4586,7 @@
req_access_txt = "55"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"alu" = (
/obj/item/weapon/twohanded/required/kirbyplants{
anchored = 1;
@@ -4595,7 +4595,7 @@
name = "incredibly heavy plant"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"alv" = (
/obj/structure/cable/cyan{
icon_state = "1-2"
@@ -4732,19 +4732,19 @@
icon_state = "0-2"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"alN" = (
/obj/machinery/porta_turret/ai{
dir = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"alO" = (
/obj/structure/table,
/obj/item/weapon/aiModule/supplied/freeform,
/obj/machinery/light/small,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"alP" = (
/obj/structure/table,
/obj/item/weapon/aiModule/core/full/tyrant,
@@ -4756,7 +4756,7 @@
/obj/item/weapon/aiModule/supplied/protectStation,
/obj/item/weapon/aiModule/supplied/safeguard,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"alQ" = (
/obj/structure/cable/cyan{
icon_state = "4-8"
@@ -4934,7 +4934,7 @@
dir = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"amo" = (
/turf/closed/wall/r_wall,
/area/crew_quarters/captain{
@@ -5736,7 +5736,7 @@
pixel_y = -29
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"aok" = (
@@ -5756,7 +5756,7 @@
dir = 8
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"aom" = (
@@ -5765,7 +5765,7 @@
icon_state = "tube1"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"aon" = (
@@ -7376,7 +7376,7 @@
d2 = 2
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"asa" = (
@@ -7624,7 +7624,7 @@
pixel_y = 24
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"asG" = (
@@ -7958,13 +7958,13 @@
icon_state = "1-4"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"att" = (
/obj/machinery/light,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai{
+/area/ai_monitored/turret_protected/ai{
name = "\improper AI Core"
})
"atu" = (
@@ -8391,7 +8391,7 @@
radio_channel = "AI Private"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/aisat_interior{
+/area/ai_monitored/turret_protected/aisat_interior{
name = "\improper AI Core Lobby"
})
"auE" = (
diff --git a/_maps/map_files/DreamStation/dreamstation04.dmm b/_maps/map_files/DreamStation/dreamstation04.dmm
index 8bdef72816c..fade044207b 100644
--- a/_maps/map_files/DreamStation/dreamstation04.dmm
+++ b/_maps/map_files/DreamStation/dreamstation04.dmm
@@ -411,40 +411,40 @@
/area/aisat)
"aaP" = (
/turf/closed/wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aaQ" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aaR" = (
/obj/structure/cable/white{
tag = "icon-1-10";
icon_state = "1-10"
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aaS" = (
/obj/structure/cable/white{
tag = "icon-5-10";
icon_state = "5-10"
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aaT" = (
/obj/machinery/porta_turret_construct,
/obj/effect/decal/cleanable/cobweb,
/turf/open/floor/plasteel/vault{
dir = 4
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aaU" = (
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aaV" = (
/obj/machinery/light{
dir = 1
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aaW" = (
/obj/machinery/flasher{
id = "AI";
@@ -461,13 +461,13 @@
start_active = 1
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aaX" = (
/obj/machinery/porta_turret_construct,
/turf/open/floor/plasteel/vault{
dir = 1
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aaY" = (
/obj/machinery/firealarm{
dir = 8;
@@ -477,7 +477,7 @@
dir = 6
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aaZ" = (
/obj/structure/cable/white{
tag = "icon-2-4";
@@ -495,14 +495,14 @@
tag = "icon-darkbluecorners (NORTH)";
dir = 1
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aba" = (
/obj/structure/cable/white{
tag = "icon-4-8";
icon_state = "4-8"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abb" = (
/obj/machinery/ai_slipper{
icon_state = "motion0";
@@ -519,7 +519,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abc" = (
/obj/structure/cable/white{
tag = "icon-2-8";
@@ -533,7 +533,7 @@
tag = "icon-darkbluecorners (EAST)";
dir = 4
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abd" = (
/obj/machinery/airalarm{
dir = 8;
@@ -544,7 +544,7 @@
dir = 10
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abe" = (
/obj/machinery/light{
icon_state = "tube1";
@@ -552,7 +552,7 @@
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abf" = (
/obj/structure/cable/white{
d1 = 1;
@@ -560,7 +560,7 @@
icon_state = "1-2"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abg" = (
/obj/machinery/porta_turret/ai{
dir = 4
@@ -568,11 +568,11 @@
/turf/open/floor/plasteel/vault{
dir = 4
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abh" = (
/obj/structure/window/reinforced,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abi" = (
/obj/structure/cable/white{
d1 = 1;
@@ -585,7 +585,7 @@
},
/obj/machinery/hologram/holopad,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abj" = (
/obj/machinery/porta_turret/ai{
dir = 8
@@ -593,14 +593,14 @@
/turf/open/floor/plasteel/vault{
dir = 1
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abk" = (
/obj/machinery/light{
dir = 4
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abl" = (
/turf/closed/wall/r_wall,
/area/aisat)
@@ -610,14 +610,14 @@
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abn" = (
/obj/structure/window/reinforced{
dir = 4;
pixel_x = 0
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abo" = (
/obj/effect/landmark/start{
name = "AI"
@@ -666,13 +666,13 @@
pixel_y = -25
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abp" = (
/obj/structure/window/reinforced{
dir = 8
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abq" = (
/obj/structure/window/reinforced{
dir = 4;
@@ -680,7 +680,7 @@
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abr" = (
/obj/structure/cable/blue{
tag = "icon-1-2";
@@ -747,7 +747,7 @@
broken = 1;
icon_state = "platingdmg2"
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abv" = (
/obj/effect/landmark{
name = "tripai"
@@ -778,7 +778,7 @@
pixel_y = 23
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abw" = (
/obj/machinery/door/window{
dir = 8;
@@ -787,7 +787,7 @@
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abx" = (
/obj/machinery/ai_slipper{
icon_state = "motion0";
@@ -801,7 +801,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aby" = (
/obj/machinery/flasher{
id = "AI";
@@ -813,7 +813,7 @@
pixel_x = 0
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abz" = (
/obj/machinery/flasher{
id = "AI";
@@ -824,7 +824,7 @@
dir = 8
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abA" = (
/obj/machinery/door/window{
dir = 4;
@@ -833,7 +833,7 @@
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abB" = (
/obj/effect/landmark{
name = "tripai"
@@ -864,7 +864,7 @@
pixel_y = -27
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abC" = (
/turf/open/space,
/obj/item/weapon/dice/d8{
@@ -886,7 +886,7 @@
broken = 1;
icon_state = "platingdmg2"
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abD" = (
/obj/structure/cable/blue{
tag = "icon-1-2";
@@ -927,7 +927,7 @@
icon_state = "0-10"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abF" = (
/obj/docking_port/stationary{
dheight = 9;
@@ -951,7 +951,7 @@
/turf/open/floor/plasteel/vault{
dir = 1
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abH" = (
/obj/structure/window/reinforced{
dir = 1
@@ -967,7 +967,7 @@
icon_state = "2-5"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abI" = (
/obj/machinery/power/terminal{
icon_state = "term";
@@ -987,7 +987,7 @@
tag = "icon-0-2"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abJ" = (
/obj/structure/window/reinforced{
dir = 1
@@ -1003,7 +1003,7 @@
dir = 4
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abK" = (
/obj/machinery/porta_turret/ai{
dir = 8
@@ -1014,7 +1014,7 @@
/turf/open/floor/plasteel/vault{
dir = 4
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abL" = (
/obj/structure/cable/white{
d1 = 1;
@@ -1025,7 +1025,7 @@
dir = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abM" = (
/obj/machinery/light{
dir = 4
@@ -1035,7 +1035,7 @@
dir = 4
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abN" = (
/obj/machinery/airalarm{
dir = 4;
@@ -1044,7 +1044,7 @@
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abO" = (
/obj/structure/cable/white{
tag = "icon-1-4";
@@ -1058,7 +1058,7 @@
tag = "icon-darkbluecorners (WEST)";
dir = 8
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abP" = (
/obj/structure/cable/white{
tag = "icon-4-8";
@@ -1068,14 +1068,14 @@
dir = 9
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abQ" = (
/obj/structure/cable/white{
tag = "icon-1-8";
icon_state = "1-8"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abR" = (
/obj/machinery/ai_slipper{
icon_state = "motion0";
@@ -1092,7 +1092,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abS" = (
/obj/structure/cable/white{
tag = "icon-4-8";
@@ -1102,7 +1102,7 @@
dir = 6
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abT" = (
/obj/structure/cable/white{
tag = "icon-1-8";
@@ -1119,7 +1119,7 @@
/turf/open/floor/plasteel/darkblue/corner{
tag = "icon-darkbluecorners"
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abU" = (
/obj/machinery/firealarm{
dir = 4;
@@ -1127,7 +1127,7 @@
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abV" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 5
@@ -1136,21 +1136,21 @@
/turf/open/floor/plasteel/vault{
dir = 1
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abW" = (
/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{
tag = "icon-manifold-r-f (NORTH)";
dir = 1
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abX" = (
/obj/machinery/light,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abY" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
@@ -1160,7 +1160,7 @@
tag = "s"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abZ" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue"
@@ -1179,7 +1179,7 @@
dir = 4
},
/turf/open/floor/plasteel/warningline,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aca" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
@@ -1191,20 +1191,20 @@
start_active = 1
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acb" = (
/obj/machinery/light,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 9
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acc" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 6
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acd" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 9
@@ -1213,15 +1213,15 @@
/turf/open/floor/plasteel/vault{
dir = 4
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"ace" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acf" = (
/obj/machinery/status_display,
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acg" = (
/obj/structure/cable/white{
d1 = 1;
@@ -1236,15 +1236,15 @@
req_access_txt = "16"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"ach" = (
/obj/machinery/ai_status_display,
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aci" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acj" = (
/turf/open/space,
/obj/machinery/porta_turret/syndicate{
@@ -1291,20 +1291,20 @@
/area/aisat)
"aco" = (
/turf/closed/wall,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acp" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acq" = (
/obj/structure/table,
/obj/item/weapon/secbot_assembly,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/bluegrid,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acr" = (
/obj/machinery/porta_turret/ai,
/turf/open/floor/bluegrid,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acs" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue (NORTH)";
@@ -1314,7 +1314,7 @@
tag = "icon-warningline (NORTH)";
dir = 1
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"act" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue (NORTH)";
@@ -1325,7 +1325,7 @@
tag = "icon-warningline (NORTH)";
dir = 1
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acu" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue (NORTH)";
@@ -1341,14 +1341,14 @@
tag = "icon-warningline (NORTH)";
dir = 1
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acv" = (
/obj/structure/table,
/obj/item/robot_suit,
/obj/item/bodypart/head/robot,
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/bluegrid,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acw" = (
/obj/structure/cable/blue{
tag = "icon-1-2";
@@ -1415,7 +1415,7 @@
icon_state = "0-4"
},
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acF" = (
/obj/structure/table,
/obj/item/bodypart/l_arm/robot,
@@ -1430,17 +1430,17 @@
tag = "icon-darkbluecorners (NORTH)";
dir = 1
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acG" = (
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acH" = (
/obj/structure/cable/blue{
tag = "icon-0-2";
icon_state = "0-2"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acI" = (
/obj/structure/table,
/obj/item/bodypart/r_arm/robot,
@@ -1454,7 +1454,7 @@
tag = "icon-darkbluecorners (EAST)";
dir = 4
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acJ" = (
/obj/effect/spawner/structure/window/reinforced,
/obj/structure/cable/blue{
@@ -1462,7 +1462,7 @@
icon_state = "0-8"
},
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acK" = (
/obj/structure/table,
/obj/item/weapon/storage/box/donkpockets{
@@ -1498,7 +1498,7 @@
dir = 4
},
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acO" = (
/obj/structure/table,
/obj/structure/cable/blue{
@@ -1513,7 +1513,7 @@
/obj/item/device/assembly/flash/handheld,
/obj/item/bodypart/r_leg/robot,
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acP" = (
/obj/structure/cable/blue{
tag = "icon-4-8";
@@ -1523,7 +1523,7 @@
dir = 4
},
/turf/open/floor/bluegrid,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acQ" = (
/obj/structure/cable/blue{
tag = "icon-4-8";
@@ -1533,7 +1533,7 @@
dir = 10
},
/turf/open/floor/bluegrid,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acR" = (
/obj/structure/cable/blue{
tag = "icon-1-2";
@@ -1552,7 +1552,7 @@
tag = "icon-darkblue (NORTH)";
dir = 1
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acS" = (
/obj/structure/cable/blue{
tag = "icon-4-8";
@@ -1562,7 +1562,7 @@
dir = 6
},
/turf/open/floor/bluegrid,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acT" = (
/obj/structure/cable/blue{
tag = "icon-4-8";
@@ -1572,7 +1572,7 @@
dir = 4
},
/turf/open/floor/bluegrid,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acU" = (
/obj/structure/table,
/obj/item/bodypart/l_leg/robot,
@@ -1588,7 +1588,7 @@
/obj/machinery/atmospherics/pipe/manifold/supply/hidden,
/obj/item/device/assembly/flash/handheld,
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acV" = (
/obj/effect/spawner/structure/window/reinforced,
/obj/structure/cable/blue{
@@ -1599,7 +1599,7 @@
dir = 4
},
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"acW" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 10
@@ -1647,14 +1647,14 @@
dir = 8
},
/turf/open/floor/bluegrid,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"adc" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plasteel/darkblue/corner{
tag = "icon-darkbluecorners (NORTH)";
dir = 1
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"add" = (
/obj/machinery/ai_slipper{
icon_state = "motion0";
@@ -1667,14 +1667,14 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ade" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel/darkblue/corner{
tag = "icon-darkbluecorners (EAST)";
dir = 4
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"adf" = (
/obj/machinery/firealarm{
dir = 4;
@@ -1684,7 +1684,7 @@
dir = 4
},
/turf/open/floor/bluegrid,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"adg" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/obj/structure/lattice,
@@ -1727,14 +1727,14 @@
tag = "icon-darkblue (WEST)";
dir = 8
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"adl" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber{
dir = 1;
on = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"adm" = (
/obj/structure/cable/blue{
tag = "icon-2-4";
@@ -1745,7 +1745,7 @@
icon_state = "1-2"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"adn" = (
/obj/structure/cable/blue{
tag = "icon-4-8";
@@ -1756,7 +1756,7 @@
on = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ado" = (
/obj/structure/cable/blue{
tag = "icon-0-8";
@@ -1778,7 +1778,7 @@
tag = "icon-darkblue (EAST)";
dir = 4
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"adp" = (
/obj/structure/lattice,
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
@@ -1802,31 +1802,31 @@
/obj/effect/spawner/structure/window/reinforced,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"adt" = (
/obj/machinery/porta_turret/ai{
dir = 4
},
/turf/open/floor/bluegrid,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"adu" = (
/obj/structure/cable/blue{
tag = "icon-1-2";
icon_state = "1-2"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"adv" = (
/obj/machinery/porta_turret/ai{
dir = 8
},
/turf/open/floor/bluegrid,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"adw" = (
/obj/effect/spawner/structure/window/reinforced,
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"adx" = (
/obj/structure/shuttle/engine/propulsion,
/turf/closed/wall/mineral/titanium,
@@ -1871,14 +1871,14 @@
/area/space)
"adD" = (
/turf/open/floor/bluegrid,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"adE" = (
/obj/structure/cable/blue{
tag = "icon-1-2";
icon_state = "1-2"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"adF" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 5
@@ -1948,7 +1948,7 @@
req_one_access_txt = "65"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"adM" = (
/obj/structure/cable/blue{
tag = "icon-1-2";
@@ -37033,7 +37033,7 @@
/area/engine/gravity_generator)
"bxj" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bxk" = (
/obj/effect/spawner/structure/window/reinforced,
/obj/structure/cable/white{
@@ -37042,7 +37042,7 @@
tag = "icon-0-2"
},
/turf/open/floor/plating,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bxl" = (
/obj/structure/sign/securearea{
desc = "A warning sign which reads 'HIGH VOLTAGE'";
@@ -37050,7 +37050,7 @@
name = "HIGH VOLTAGE"
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bxm" = (
/obj/effect/spawner/structure/window/reinforced,
/turf/open/floor/plating,
@@ -37962,7 +37962,7 @@
tag = "icon-vault (WEST)";
dir = 8
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bzn" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue (EAST)";
@@ -37982,7 +37982,7 @@
tag = "icon-warningline (EAST)";
dir = 4
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bzo" = (
/obj/machinery/computer/upload/ai,
/obj/structure/window/reinforced{
@@ -38006,7 +38006,7 @@
tag = "icon-vault (WEST)";
dir = 8
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bzp" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue (WEST)";
@@ -38026,7 +38026,7 @@
tag = "icon-warningline (WEST)";
dir = 8
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bzq" = (
/obj/machinery/porta_turret/ai{
dir = 8
@@ -38039,7 +38039,7 @@
tag = "icon-vault (WEST)";
dir = 8
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bzr" = (
/obj/structure/lattice,
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
@@ -38745,14 +38745,14 @@
tag = "icon-warndark (NORTHEAST)";
dir = 5
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bAQ" = (
/obj/structure/sign/kiddieplaque{
pixel_x = -32;
pixel_y = 32
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bAR" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue (EAST)";
@@ -38762,7 +38762,7 @@
tag = "icon-warningline (EAST)";
dir = 4
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bAS" = (
/obj/structure/cable/white{
d1 = 1;
@@ -38770,7 +38770,7 @@
icon_state = "1-2"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bAT" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue (WEST)";
@@ -38780,10 +38780,10 @@
tag = "icon-warningline (WEST)";
dir = 8
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bAU" = (
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bAV" = (
/obj/machinery/airalarm{
pixel_y = 23
@@ -38807,7 +38807,7 @@
network = list("Sat")
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bAW" = (
/obj/effect/spawner/structure/window/reinforced,
/obj/structure/cable/white{
@@ -38817,14 +38817,14 @@
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plating,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bAX" = (
/turf/closed/wall,
-/area/turret_protected/ai_upload_foyer)
+/area/ai_monitored/turret_protected/ai_upload_foyer)
"bAY" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/closed/wall,
-/area/turret_protected/ai_upload_foyer)
+/area/ai_monitored/turret_protected/ai_upload_foyer)
"bAZ" = (
/obj/structure/sign/securearea{
pixel_x = -32
@@ -39892,7 +39892,7 @@
icon_state = "0-4"
},
/turf/open/floor/plating,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bCP" = (
/obj/structure/table,
/obj/item/weapon/aiModule/reset,
@@ -39901,7 +39901,7 @@
icon_state = "2-8"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bCQ" = (
/turf/open/floor/plasteel/darkblue/side{
dir = 10;
@@ -39915,7 +39915,7 @@
tag = "icon-warningline (SOUTHWEST)";
dir = 10
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bCR" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue"
@@ -39924,7 +39924,7 @@
dir = 4
},
/turf/open/floor/plasteel/warningline,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bCS" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue"
@@ -39938,7 +39938,7 @@
dir = 4
},
/turf/open/floor/plasteel/warningline,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bCT" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue"
@@ -39956,7 +39956,7 @@
dir = 4
},
/turf/open/floor/plasteel/warningline,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bCU" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue"
@@ -39972,7 +39972,7 @@
dir = 4
},
/turf/open/floor/plasteel/warningline,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bCV" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue"
@@ -39987,7 +39987,7 @@
pixel_y = 23
},
/turf/open/floor/plasteel/warningline,
-/area/turret_protected/ai_upload_foyer)
+/area/ai_monitored/turret_protected/ai_upload_foyer)
"bCW" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue"
@@ -40005,7 +40005,7 @@
start_active = 1
},
/turf/open/floor/plasteel/warningline,
-/area/turret_protected/ai_upload_foyer)
+/area/ai_monitored/turret_protected/ai_upload_foyer)
"bCX" = (
/obj/machinery/status_display{
layer = 4;
@@ -41223,14 +41223,14 @@
tag = "icon-vault (WEST)";
dir = 8
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bFg" = (
/obj/structure/cable/white{
tag = "icon-4-8";
icon_state = "4-8"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bFh" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue (EAST)";
@@ -41244,7 +41244,7 @@
tag = "icon-warningline (EAST)";
dir = 4
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bFi" = (
/obj/machinery/hologram/holopad,
/obj/structure/cable/white{
@@ -41260,14 +41260,14 @@
icon_state = "2-4"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bFj" = (
/obj/structure/cable/white{
tag = "icon-4-8";
icon_state = "4-8"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bFk" = (
/obj/structure/cable/white{
tag = "icon-1-4";
@@ -41278,7 +41278,7 @@
icon_state = "4-8"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bFl" = (
/obj/structure/cable/white{
tag = "icon-4-8";
@@ -41293,7 +41293,7 @@
icon_state = "1-4"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bFm" = (
/obj/structure/cable/white{
tag = "icon-4-8";
@@ -41310,7 +41310,7 @@
tag = "icon-warndark (WEST)";
dir = 8
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bFn" = (
/obj/structure/cable/white{
tag = "icon-4-8";
@@ -41324,14 +41324,14 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/ai_upload_foyer)
+/area/ai_monitored/turret_protected/ai_upload_foyer)
"bFo" = (
/obj/structure/cable/white{
tag = "icon-4-8";
icon_state = "4-8"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload_foyer)
+/area/ai_monitored/turret_protected/ai_upload_foyer)
"bFp" = (
/obj/structure/cable/white{
tag = "icon-4-8";
@@ -41348,7 +41348,7 @@
tag = "icon-warndark (EAST)";
dir = 4
},
-/area/turret_protected/ai_upload_foyer)
+/area/ai_monitored/turret_protected/ai_upload_foyer)
"bFq" = (
/obj/structure/cable/green{
tag = "icon-4-8";
@@ -42710,7 +42710,7 @@
icon_state = "1-8"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bHr" = (
/turf/open/floor/plasteel/darkblue/side{
dir = 9;
@@ -42724,7 +42724,7 @@
tag = "icon-warningline (NORTHWEST)";
dir = 9
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bHs" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue (NORTH)";
@@ -42737,7 +42737,7 @@
tag = "icon-warningline (NORTH)";
dir = 1
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bHt" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue (NORTH)";
@@ -42754,7 +42754,7 @@
tag = "icon-warningline (NORTH)";
dir = 1
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bHu" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue (NORTH)";
@@ -42776,7 +42776,7 @@
tag = "icon-warningline (NORTH)";
dir = 1
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bHv" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue (NORTH)";
@@ -42800,7 +42800,7 @@
tag = "icon-warningline (NORTH)";
dir = 1
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bHw" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue (NORTH)";
@@ -42822,7 +42822,7 @@
tag = "icon-warningline (NORTH)";
dir = 1
},
-/area/turret_protected/ai_upload_foyer)
+/area/ai_monitored/turret_protected/ai_upload_foyer)
"bHx" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue (NORTH)";
@@ -42839,7 +42839,7 @@
tag = "icon-warningline (NORTH)";
dir = 1
},
-/area/turret_protected/ai_upload_foyer)
+/area/ai_monitored/turret_protected/ai_upload_foyer)
"bHy" = (
/obj/machinery/ai_status_display{
pixel_x = -32
@@ -43923,7 +43923,7 @@
tag = "icon-warndark (SOUTHEAST)";
dir = 6
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bJv" = (
/obj/structure/table,
/obj/item/weapon/folder/blue,
@@ -43938,22 +43938,22 @@
start_active = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bJw" = (
/obj/effect/spawner/structure/window/reinforced,
/obj/structure/cable/white,
/turf/open/floor/plating,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bJx" = (
/obj/effect/spawner/structure/window/reinforced,
/obj/structure/cable/white,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plating,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bJy" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/closed/wall,
-/area/turret_protected/ai_upload_foyer)
+/area/ai_monitored/turret_protected/ai_upload_foyer)
"bJz" = (
/obj/structure/cable/green{
tag = "icon-0-4";
@@ -44716,7 +44716,7 @@
tag = "icon-vault (WEST)";
dir = 8
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bKR" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue (EAST)";
@@ -44736,7 +44736,7 @@
tag = "icon-warningline (EAST)";
dir = 4
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bKS" = (
/obj/machinery/computer/upload/borg,
/obj/structure/window/reinforced{
@@ -44754,7 +44754,7 @@
tag = "icon-vault (WEST)";
dir = 8
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bKT" = (
/turf/open/floor/plasteel/darkblue/side{
tag = "icon-darkblue (WEST)";
@@ -44774,7 +44774,7 @@
tag = "icon-warningline (WEST)";
dir = 8
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bKU" = (
/obj/machinery/porta_turret/ai{
dir = 8
@@ -44787,7 +44787,7 @@
tag = "icon-vault (WEST)";
dir = 8
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bKV" = (
/obj/structure/lattice,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
diff --git a/_maps/map_files/EfficiencyStation/EfficiencyStation.dmm b/_maps/map_files/EfficiencyStation/EfficiencyStation.dmm
index 65f30caf154..b442015461d 100644
--- a/_maps/map_files/EfficiencyStation/EfficiencyStation.dmm
+++ b/_maps/map_files/EfficiencyStation/EfficiencyStation.dmm
@@ -279,7 +279,7 @@
/area/shuttle/abandoned)
"aaR" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aaS" = (
/turf/closed/wall/shuttle{
icon_state = "swall7"
@@ -490,7 +490,7 @@
/area/shuttle/abandoned)
"abm" = (
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abn" = (
/obj/item/device/radio/intercom{
broadcasting = 1;
@@ -499,7 +499,7 @@
pixel_y = 25
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abo" = (
/obj/structure/table,
/obj/machinery/microwave,
@@ -652,7 +652,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abG" = (
/obj/machinery/camera{
c_tag = "AI Chamber West";
@@ -660,23 +660,23 @@
start_active = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abH" = (
/obj/machinery/ai_slipper{
icon_state = "motion0"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abI" = (
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abJ" = (
/obj/structure/table,
/obj/item/device/paicard,
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abK" = (
/obj/structure/table,
/obj/item/weapon/storage/box/donkpockets{
@@ -772,7 +772,7 @@
icon_state = "2-4"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abT" = (
/obj/structure/cable{
d1 = 4;
@@ -780,7 +780,7 @@
icon_state = "4-8"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abU" = (
/obj/structure/window/reinforced{
dir = 8
@@ -800,7 +800,7 @@
pixel_y = -24
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abV" = (
/obj/machinery/power/terminal,
/obj/machinery/door/window{
@@ -810,7 +810,7 @@
req_access_txt = "16"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abW" = (
/obj/structure/window/reinforced{
dir = 1;
@@ -826,7 +826,7 @@
},
/obj/machinery/light/small,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abX" = (
/obj/structure/cable{
d1 = 2;
@@ -835,7 +835,7 @@
tag = ""
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"abY" = (
/obj/structure/table,
/obj/item/stack/sheet/glass{
@@ -961,7 +961,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"ack" = (
/obj/structure/window/reinforced{
dir = 4
@@ -976,7 +976,7 @@
dir = 4
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acl" = (
/obj/structure/cable{
d1 = 1;
@@ -984,7 +984,7 @@
icon_state = "1-4"
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acm" = (
/obj/machinery/power/smes{
charge = 5e+006
@@ -998,7 +998,7 @@
d2 = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acn" = (
/obj/structure/cable{
d1 = 1;
@@ -1006,7 +1006,7 @@
icon_state = "1-8"
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aco" = (
/obj/structure/window/reinforced{
dir = 8
@@ -1021,7 +1021,7 @@
dir = 4
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acp" = (
/turf/open/space,
/turf/closed/wall/mineral/plastitanium{
@@ -1115,7 +1115,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acA" = (
/obj/machinery/door/window{
base_state = "right";
@@ -1131,7 +1131,7 @@
pixel_y = 0
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acB" = (
/obj/effect/landmark{
name = "tripai"
@@ -1155,7 +1155,7 @@
pixel_y = -3
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acC" = (
/obj/effect/landmark{
name = "tripai"
@@ -1178,7 +1178,7 @@
pixel_y = -4
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acD" = (
/obj/machinery/door/window{
dir = 8;
@@ -1192,7 +1192,7 @@
pixel_y = 0
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acE" = (
/obj/machinery/light{
dir = 4
@@ -1205,7 +1205,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acF" = (
/obj/structure/table,
/obj/item/stack/cable_coil,
@@ -1267,7 +1267,7 @@
dir = 6
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acM" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber{
dir = 8;
@@ -1278,7 +1278,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acN" = (
/obj/item/device/radio/intercom{
freerange = 1;
@@ -1310,7 +1310,7 @@
req_access_txt = "28"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acO" = (
/obj/machinery/atmospherics/components/unary/vent_pump{
dir = 4;
@@ -1319,13 +1319,13 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acP" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 10
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acQ" = (
/obj/structure/chair{
dir = 4
@@ -1411,7 +1411,7 @@
"acX" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acY" = (
/obj/structure/cable{
d1 = 1;
@@ -1419,7 +1419,7 @@
icon_state = "1-4"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"acZ" = (
/obj/structure/window/reinforced,
/obj/structure/window/reinforced{
@@ -1442,7 +1442,7 @@
icon_state = "0-8"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"ada" = (
/obj/machinery/hologram/holopad,
/obj/machinery/door/window{
@@ -1462,7 +1462,7 @@
icon_state = "2-4"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"adb" = (
/obj/structure/window/reinforced{
dir = 4
@@ -1487,17 +1487,17 @@
pixel_y = 24
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"adc" = (
/obj/structure/cable{
icon_state = "1-8"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"add" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"ade" = (
/obj/structure/table,
/obj/item/weapon/reagent_containers/glass/beaker{
@@ -1591,7 +1591,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"adm" = (
/obj/machinery/ai_slipper{
icon_state = "motion0"
@@ -1603,7 +1603,7 @@
pixel_y = 0
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"adn" = (
/obj/machinery/camera{
c_tag = "AI Chamber East";
@@ -1612,7 +1612,7 @@
start_active = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"ado" = (
/obj/item/weapon/twohanded/required/kirbyplants{
icon_state = "plant-09";
@@ -1620,7 +1620,7 @@
pixel_y = 10
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"adp" = (
/obj/machinery/suit_storage_unit/syndicate,
/turf/open/floor/mineral/plastitanium,
@@ -1692,7 +1692,7 @@
/area/shuttle/abandoned)
"adw" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"adx" = (
@@ -1703,25 +1703,25 @@
pixel_y = 0
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"ady" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 6
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"adz" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"adA" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 9
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"adB" = (
/obj/structure/grille,
/obj/structure/window/reinforced/fulltile,
@@ -1815,7 +1815,7 @@
/area/shuttle/abandoned)
"adK" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"adL" = (
@@ -1828,7 +1828,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"adM" = (
@@ -1851,7 +1851,7 @@
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"adN" = (
@@ -1866,7 +1866,7 @@
pixel_y = 29
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"adO" = (
@@ -1877,7 +1877,7 @@
name = "AI Chamber Blast Shutter"
},
/turf/open/floor/plating,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"adP" = (
/obj/machinery/door/airlock/glass_command{
name = "AI Chamber";
@@ -1894,7 +1894,7 @@
pixel_y = 0
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"adQ" = (
/obj/machinery/computer/security/telescreen{
desc = "Used for watching the AI satellite.";
@@ -1904,7 +1904,7 @@
},
/obj/machinery/computer/station_alert,
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"adR" = (
@@ -1932,7 +1932,7 @@
/obj/item/weapon/pen,
/obj/structure/table,
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"adS" = (
@@ -1945,7 +1945,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"adT" = (
@@ -2031,12 +2031,12 @@
},
/obj/structure/table,
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"aec" = (
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"aed" = (
@@ -2047,12 +2047,12 @@
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"aee" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"aef" = (
/obj/machinery/porta_turret/ai{
dir = 4
@@ -2060,12 +2060,12 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"aeg" = (
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"aeh" = (
/obj/structure/cable{
d1 = 1;
@@ -2076,14 +2076,14 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"aei" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/closed/wall/r_wall,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"aej" = (
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"aek" = (
@@ -2096,14 +2096,14 @@
dir = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"ael" = (
/obj/machinery/power/port_gen/pacman,
/obj/item/weapon/wrench,
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"aem" = (
@@ -2253,7 +2253,7 @@
/obj/item/clothing/head/welding,
/obj/structure/table,
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"aez" = (
@@ -2261,7 +2261,7 @@
on = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"aeA" = (
@@ -2278,7 +2278,7 @@
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"aeB" = (
@@ -2294,13 +2294,13 @@
pressure_checks = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"aeC" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/closed/wall/r_wall,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"aeD" = (
@@ -2326,7 +2326,7 @@
icon_state = "2-4"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"aeE" = (
/obj/structure/cable{
d1 = 4;
@@ -2337,7 +2337,7 @@
dir = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"aeF" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
@@ -2357,7 +2357,7 @@
icon_state = "1-4"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"aeG" = (
/obj/structure/cable{
d1 = 4;
@@ -2368,7 +2368,7 @@
dir = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"aeH" = (
/obj/structure/cable{
d1 = 4;
@@ -2388,7 +2388,7 @@
req_access = list(65)
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"aeI" = (
/obj/structure/cable{
d1 = 4;
@@ -2403,7 +2403,7 @@
req_one_access_txt = "65"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"aeJ" = (
@@ -2417,7 +2417,7 @@
on = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"aeK" = (
@@ -2428,7 +2428,7 @@
},
/obj/machinery/hologram/holopad,
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"aeL" = (
@@ -2436,7 +2436,7 @@
on = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"aeM" = (
@@ -2447,7 +2447,7 @@
},
/obj/structure/table,
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"aeN" = (
@@ -2567,7 +2567,7 @@
dir = 8
},
/turf/open/floor/plasteel/darkblue/corner,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"afa" = (
@@ -2578,7 +2578,7 @@
},
/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden,
/turf/open/floor/plasteel/darkblue/side,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"afb" = (
@@ -2596,7 +2596,7 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 8
},
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"afc" = (
@@ -2611,7 +2611,7 @@
req_one_access_txt = "65"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"afd" = (
@@ -2632,21 +2632,21 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 8
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"afe" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 10
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"aff" = (
/mob/living/simple_animal/bot/secbot/pingsky,
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"afg" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"afh" = (
/obj/machinery/atmospherics/components/unary/vent_pump{
dir = 1;
@@ -2658,11 +2658,11 @@
pixel_x = 24
},
/turf/open/floor/plasteel/darkblue/corner,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"afi" = (
/obj/machinery/recharge_station,
/turf/open/floor/bluegrid,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"afj" = (
@@ -2673,7 +2673,7 @@
},
/obj/machinery/recharge_station,
/turf/open/floor/bluegrid,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"afk" = (
@@ -2685,7 +2685,7 @@
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/obj/machinery/light/small,
/turf/open/floor/bluegrid,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"afl" = (
@@ -2931,7 +2931,7 @@
"afB" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/closed/wall/r_wall,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"afC" = (
@@ -2945,7 +2945,7 @@
req_one_access_txt = "65"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"afD" = (
@@ -2962,20 +2962,20 @@
/turf/open/floor/plasteel/darkblue/side{
dir = 10
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"afE" = (
/obj/machinery/light/small,
/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{
dir = 8
},
/turf/open/floor/plasteel/darkblue/side,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"afF" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
},
/turf/open/floor/plasteel/darkblue/side,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"afG" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/obj/machinery/light/small,
@@ -2986,7 +2986,7 @@
dir = 4
},
/turf/open/floor/plasteel/darkblue/side,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"afH" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
@@ -2994,13 +2994,13 @@
/turf/open/floor/plasteel/darkblue/side{
dir = 6
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"afI" = (
/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{
dir = 1
},
/turf/closed/wall/r_wall,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"afJ" = (
@@ -3008,7 +3008,7 @@
dir = 4
},
/turf/closed/wall/r_wall,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"afK" = (
@@ -3016,7 +3016,7 @@
dir = 9
},
/turf/closed/wall/r_wall,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"afL" = (
@@ -3227,7 +3227,7 @@
start_active = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"agg" = (
@@ -3237,7 +3237,7 @@
icon_state = "1-8"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"agh" = (
@@ -3245,26 +3245,26 @@
dir = 4
},
/turf/closed/wall/r_wall,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"agi" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/closed/wall/r_wall,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"agj" = (
/obj/machinery/door/airlock/hatch{
name = "MiniSat Antechamber";
req_one_access_txt = "65"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"agk" = (
/obj/machinery/atmospherics/components/unary/outlet_injector/on{
dir = 1
},
/turf/open/floor/plating/airless,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"agl" = (
/obj/machinery/door/window{
base_state = "right";
@@ -3393,13 +3393,13 @@
pixel_y = 0
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"agy" = (
/obj/machinery/bluespace_beacon,
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"agz" = (
@@ -3414,7 +3414,7 @@
pressure_checks = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"agA" = (
@@ -3427,7 +3427,7 @@
req_access = list(29)
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"agB" = (
@@ -3441,7 +3441,7 @@
/turf/open/floor/plating/warnplate{
dir = 9
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"agC" = (
/obj/machinery/ai_status_display{
pixel_y = 31
@@ -3462,13 +3462,13 @@
/turf/open/floor/plating/warnplate{
dir = 1
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"agD" = (
/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
dir = 1
},
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"agE" = (
/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
dir = 4
@@ -3485,12 +3485,12 @@
/turf/open/floor/plating/warnplate{
dir = 5
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"agF" = (
/obj/structure/grille,
/obj/structure/window/reinforced/fulltile,
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"agG" = (
/obj/structure/lattice/catwalk,
/turf/open/space,
@@ -3624,7 +3624,7 @@
/turf/open/floor/plating/warnplate{
dir = 1
},
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"agT" = (
@@ -3633,7 +3633,7 @@
/turf/open/floor/plating/warnplate{
dir = 1
},
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"agU" = (
@@ -3641,14 +3641,14 @@
/turf/open/floor/plating/warnplate{
dir = 1
},
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"agV" = (
/turf/open/floor/plating/warnplate{
dir = 8
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"agW" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber{
dir = 1;
@@ -3657,19 +3657,19 @@
scrub_Toxins = 0
},
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"agX" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/obj/machinery/hologram/holopad,
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"agY" = (
/obj/machinery/atmospherics/components/unary/vent_pump{
dir = 1;
on = 1
},
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"agZ" = (
/obj/machinery/door/airlock/external{
name = "MiniSat External Access";
@@ -3677,10 +3677,10 @@
req_access_txt = "65;13"
},
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"aha" = (
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ahb" = (
/obj/structure/window/reinforced{
dir = 1
@@ -3902,14 +3902,14 @@
/turf/open/floor/plating/warnplate{
dir = 10
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ahw" = (
/obj/structure/transit_tube{
icon_state = "E-SW"
},
/obj/structure/window/reinforced,
/turf/open/floor/plating/warnplate,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ahx" = (
/obj/structure/transit_tube/station{
dir = 1
@@ -3917,7 +3917,7 @@
/obj/structure/window/reinforced,
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plating/warnplate,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ahy" = (
/obj/structure/transit_tube{
icon_state = "W-SE"
@@ -3926,7 +3926,7 @@
/turf/open/floor/plating/warnplate{
dir = 6
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ahz" = (
/obj/structure/grille,
/obj/structure/window/reinforced/fulltile,
@@ -3934,7 +3934,7 @@
icon_state = "D-SW"
},
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ahA" = (
/obj/structure/grille,
/obj/structure/window/reinforced/fulltile,
@@ -3945,7 +3945,7 @@
name = "EXTERNAL AIRLOCK"
},
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ahB" = (
/obj/structure/table,
/obj/item/weapon/surgicaldrill,
@@ -19815,7 +19815,7 @@
dir = 8
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aLT" = (
/obj/machinery/light_switch{
pixel_x = -28
@@ -21063,7 +21063,7 @@
network = list("SS13","RD")
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aOo" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
@@ -21477,7 +21477,7 @@
req_access = list(65)
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aPl" = (
/obj/structure/sink{
dir = 4;
@@ -22866,7 +22866,7 @@
/area/maintenance/fore)
"aSb" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aSc" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/visible{
dir = 5
@@ -23279,13 +23279,13 @@
/obj/item/weapon/aiModule/core/full/corp,
/obj/item/weapon/aiModule/core/full/custom,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aSY" = (
/obj/machinery/computer/upload/ai,
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aSZ" = (
/obj/machinery/flasher{
id = "AI";
@@ -23296,13 +23296,13 @@
network = list("SS13","RD","AIUpload")
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aTa" = (
/obj/machinery/computer/upload/borg,
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aTb" = (
/obj/structure/table,
/obj/item/weapon/aiModule/supplied/oxygen,
@@ -23322,7 +23322,7 @@
pixel_y = 32
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aTc" = (
/obj/structure/closet/crate,
/obj/structure/window/reinforced,
@@ -23792,12 +23792,12 @@
pixel_y = 0
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aUe" = (
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aUf" = (
/obj/structure/cable{
d1 = 2;
@@ -23805,7 +23805,7 @@
icon_state = "2-4"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aUg" = (
/obj/structure/cable{
d1 = 4;
@@ -23815,7 +23815,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aUh" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -24210,10 +24210,10 @@
icon_state = "0-8"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aVb" = (
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aVc" = (
/obj/machinery/ai_slipper{
icon_state = "motion0"
@@ -24224,7 +24224,7 @@
icon_state = "1-2"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aVd" = (
/obj/structure/sign/kiddieplaque{
pixel_x = -32
@@ -24233,7 +24233,7 @@
dir = 4
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aVe" = (
/obj/machinery/portable_atmospherics/canister/nitrous_oxide,
/turf/open/floor/plasteel/bot,
@@ -24632,10 +24632,10 @@
},
/obj/item/weapon/aiModule/supplied/quarantine,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aVX" = (
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aVY" = (
/obj/structure/cable{
d1 = 1;
@@ -24644,7 +24644,7 @@
},
/obj/machinery/hologram/holopad,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aVZ" = (
/obj/structure/table,
/obj/machinery/light/small{
@@ -24652,7 +24652,7 @@
},
/obj/item/weapon/aiModule/supplied/protectStation,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aWa" = (
/obj/machinery/portable_atmospherics/canister/nitrogen,
/obj/machinery/light/small{
@@ -25213,7 +25213,7 @@
dir = 6
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aXc" = (
/obj/machinery/atmospherics/components/unary/vent_pump{
dir = 8;
@@ -25226,7 +25226,7 @@
pixel_y = -28
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aXd" = (
/obj/structure/cable{
d1 = 1;
@@ -25234,7 +25234,7 @@
icon_state = "1-2"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aXe" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber{
dir = 4;
@@ -25243,7 +25243,7 @@
scrub_Toxins = 0
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aXf" = (
/obj/structure/table,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
@@ -25251,7 +25251,7 @@
},
/obj/item/weapon/aiModule/supplied/freeform,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aXg" = (
/obj/machinery/portable_atmospherics/canister/oxygen,
/turf/open/floor/plasteel/bot,
@@ -25767,7 +25767,7 @@
"aYf" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aYg" = (
/obj/structure/cable{
d1 = 1;
@@ -25780,11 +25780,11 @@
req_access_txt = "16"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aYh" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aYi" = (
/obj/machinery/portable_atmospherics/canister/air,
/turf/open/floor/plasteel/bot,
@@ -26214,7 +26214,7 @@
dir = 4
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aYY" = (
/obj/structure/cable{
d1 = 1;
@@ -26226,7 +26226,7 @@
req_access_txt = "16"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aYZ" = (
/obj/effect/landmark/event_spawn,
/turf/open/floor/plasteel,
@@ -26238,7 +26238,7 @@
dir = 4
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aZb" = (
/obj/effect/landmark/event_spawn,
/turf/open/floor/plasteel/bar,
@@ -56683,7 +56683,7 @@
dir = 4
},
/turf/closed/wall/r_wall,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Storage"
})
"cjR" = (
diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm
index f32dceed424..50a84e80fc7 100644
--- a/_maps/map_files/MetaStation/MetaStation.dmm
+++ b/_maps/map_files/MetaStation/MetaStation.dmm
@@ -21316,7 +21316,7 @@
/area/storage/primary)
"aKF" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aKG" = (
/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{
dir = 8;
@@ -22066,14 +22066,14 @@
dir = 4
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aMh" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
},
/obj/machinery/porta_turret/ai,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aMi" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber{
dir = 8;
@@ -22087,7 +22087,7 @@
id = "AI"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aMj" = (
/obj/structure/sign/kiddieplaque{
pixel_y = 32
@@ -22103,7 +22103,7 @@
pixel_y = 10
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aMk" = (
/obj/machinery/atmospherics/components/unary/vent_pump{
dir = 4;
@@ -22113,20 +22113,20 @@
pixel_y = 23
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aMl" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
},
/obj/machinery/porta_turret/ai,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aMm" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aMn" = (
/obj/structure/lattice,
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
@@ -22728,10 +22728,10 @@
id = "AI"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aNB" = (
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aNC" = (
/obj/structure/table,
/obj/machinery/door/window{
@@ -22753,7 +22753,7 @@
/obj/item/weapon/aiModule/zeroth/oneHuman,
/obj/item/weapon/aiModule/reset/purge,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aND" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/obj/item/device/radio/intercom{
@@ -23493,13 +23493,13 @@
icon_state = "0-2"
},
/turf/open/floor/plating,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aPc" = (
/obj/machinery/porta_turret/ai{
dir = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aPd" = (
/obj/machinery/computer/upload/borg,
/obj/structure/window/reinforced{
@@ -23520,11 +23520,11 @@
req_access_txt = "16"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aPe" = (
/obj/machinery/hologram/holopad,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aPf" = (
/obj/machinery/computer/upload/ai,
/obj/structure/window/reinforced{
@@ -23545,13 +23545,13 @@
req_access_txt = "16"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aPg" = (
/obj/machinery/porta_turret/ai{
dir = 8
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aPh" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber{
dir = 1;
@@ -24320,7 +24320,7 @@
},
/obj/structure/cable/yellow,
/turf/open/floor/plating,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aQx" = (
/obj/structure/table,
/obj/structure/cable/yellow{
@@ -24330,7 +24330,7 @@
},
/obj/item/weapon/aiModule/supplied/quarantine,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aQy" = (
/obj/structure/cable/yellow{
d1 = 4;
@@ -24338,7 +24338,7 @@
icon_state = "4-8"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aQz" = (
/obj/structure/cable/yellow{
d1 = 4;
@@ -24346,7 +24346,7 @@
icon_state = "4-8"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aQA" = (
/obj/structure/cable/yellow{
d1 = 2;
@@ -24363,7 +24363,7 @@
uses = 8
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aQB" = (
/obj/structure/table,
/obj/structure/cable/yellow{
@@ -24373,7 +24373,7 @@
},
/obj/item/weapon/aiModule/supplied/freeform,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aQC" = (
/obj/structure/grille,
/obj/structure/window/reinforced/fulltile,
@@ -24383,7 +24383,7 @@
},
/obj/structure/cable/yellow,
/turf/open/floor/plating,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aQD" = (
/obj/structure/cable/yellow{
d1 = 1;
@@ -24998,7 +24998,7 @@
pixel_y = -24
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aRJ" = (
/obj/machinery/power/apc{
cell_type = 5000;
@@ -25016,7 +25016,7 @@
network = list("SS13","RD","AIUpload")
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aRK" = (
/obj/structure/cable/yellow{
d1 = 2;
@@ -25029,7 +25029,7 @@
icon_state = "1-2"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aRL" = (
/obj/item/device/radio/intercom{
broadcasting = 1;
@@ -25043,7 +25043,7 @@
network = list("SS13","RD","AIUpload")
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aRM" = (
/obj/structure/table,
/obj/machinery/light{
@@ -25061,7 +25061,7 @@
pixel_y = -24
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aRN" = (
/obj/machinery/light{
icon_state = "tube1";
@@ -25848,7 +25848,7 @@
dir = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aTf" = (
/obj/structure/cable/yellow{
d1 = 1;
@@ -25856,13 +25856,13 @@
icon_state = "1-2"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aTg" = (
/obj/machinery/porta_turret/ai{
dir = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aTh" = (
/obj/structure/cable/yellow{
d1 = 1;
@@ -26579,7 +26579,7 @@
icon_state = "1-2"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aUy" = (
/obj/structure/cable/yellow{
d1 = 1;
@@ -27000,7 +27000,7 @@
})
"aVk" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aVl" = (
/obj/structure/cable{
d1 = 2;
@@ -27008,7 +27008,7 @@
icon_state = "2-4"
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aVm" = (
/obj/machinery/power/smes{
charge = 5e+006
@@ -27018,7 +27018,7 @@
d2 = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aVn" = (
/obj/structure/cable{
d1 = 2;
@@ -27027,7 +27027,7 @@
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aVo" = (
/obj/structure/lattice,
/obj/structure/window/reinforced{
@@ -27346,7 +27346,7 @@
/area/hallway/primary/central)
"aVR" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload_foyer)
+/area/ai_monitored/turret_protected/ai_upload_foyer)
"aVS" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber{
on = 1;
@@ -27394,7 +27394,7 @@
/turf/open/floor/plasteel/vault{
dir = 6
},
-/area/turret_protected/ai_upload_foyer)
+/area/ai_monitored/turret_protected/ai_upload_foyer)
"aVT" = (
/obj/structure/cable/yellow{
d1 = 1;
@@ -27407,7 +27407,7 @@
icon_state = "2-8"
},
/turf/open/floor/plasteel/vault,
-/area/turret_protected/ai_upload_foyer)
+/area/ai_monitored/turret_protected/ai_upload_foyer)
"aVU" = (
/obj/machinery/atmospherics/components/unary/vent_pump{
dir = 2;
@@ -27437,7 +27437,7 @@
/turf/open/floor/plasteel/vault{
dir = 10
},
-/area/turret_protected/ai_upload_foyer)
+/area/ai_monitored/turret_protected/ai_upload_foyer)
"aVV" = (
/obj/structure/sign/directions/security{
desc = "A direction sign, pointing out which way the security department is.";
@@ -27797,7 +27797,7 @@
dir = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aWG" = (
/obj/machinery/status_display{
density = 0;
@@ -27812,7 +27812,7 @@
scrub_Toxins = 0
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aWH" = (
/obj/structure/showcase{
density = 0;
@@ -27825,7 +27825,7 @@
pixel_y = 20
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aWI" = (
/obj/structure/cable/yellow{
d1 = 4;
@@ -27868,7 +27868,7 @@
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aWK" = (
/obj/machinery/status_display{
density = 0;
@@ -27881,13 +27881,13 @@
on = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aWL" = (
/obj/machinery/porta_turret/ai{
dir = 8
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aWM" = (
/obj/structure/grille,
/obj/structure/window/reinforced/fulltile,
@@ -28281,7 +28281,7 @@
"aXt" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload_foyer)
+/area/ai_monitored/turret_protected/ai_upload_foyer)
"aXu" = (
/obj/machinery/door/airlock/highsecurity{
name = "Secure Network Access";
@@ -28293,11 +28293,11 @@
icon_state = "1-2"
},
/turf/open/floor/plasteel/vault,
-/area/turret_protected/ai_upload_foyer)
+/area/ai_monitored/turret_protected/ai_upload_foyer)
"aXv" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload_foyer)
+/area/ai_monitored/turret_protected/ai_upload_foyer)
"aXw" = (
/obj/machinery/airalarm{
pixel_y = 23
@@ -28701,21 +28701,21 @@
dir = 8
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aYi" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aYj" = (
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aYk" = (
/obj/machinery/ai_slipper{
icon_state = "motion0";
uses = 10
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aYl" = (
/obj/structure/cable{
d1 = 1;
@@ -28726,7 +28726,7 @@
dir = 5
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aYm" = (
/obj/structure/cable{
d1 = 2;
@@ -28737,7 +28737,7 @@
dir = 4
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aYn" = (
/obj/machinery/light{
icon_state = "tube1";
@@ -28748,7 +28748,7 @@
pixel_y = 0
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aYo" = (
/obj/structure/grille,
/obj/structure/window/reinforced/fulltile,
@@ -29800,7 +29800,7 @@
/turf/open/floor/plasteel/vault{
dir = 1
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aZW" = (
/obj/structure/cable{
d1 = 1;
@@ -29810,7 +29810,7 @@
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aZX" = (
/obj/structure/grille,
/obj/structure/window/reinforced/fulltile,
@@ -29819,7 +29819,7 @@
name = "AI core shutters"
},
/turf/open/floor/plating,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aZY" = (
/obj/structure/cable{
d1 = 1;
@@ -29829,7 +29829,7 @@
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"aZZ" = (
/obj/structure/showcase{
density = 0;
@@ -29844,7 +29844,7 @@
/turf/open/floor/plasteel/vault{
dir = 4
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"baa" = (
/obj/structure/sign/securearea{
desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'.";
@@ -30686,7 +30686,7 @@
req_access_txt = "16"
},
/turf/open/floor/greengrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bbq" = (
/obj/machinery/hologram/holopad,
/obj/machinery/flasher{
@@ -30697,7 +30697,7 @@
/turf/open/floor/plasteel/vault{
dir = 1
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bbr" = (
/obj/machinery/ai_slipper{
icon_state = "motion0";
@@ -30705,7 +30705,7 @@
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bbs" = (
/obj/machinery/vending/assist,
/obj/machinery/light/small{
@@ -30742,7 +30742,7 @@
/turf/open/floor/plasteel/vault{
dir = 10
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bbv" = (
/obj/machinery/ai_slipper{
icon_state = "motion0";
@@ -30756,7 +30756,7 @@
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bbw" = (
/obj/machinery/hologram/holopad,
/obj/machinery/flasher{
@@ -30767,7 +30767,7 @@
/turf/open/floor/plasteel/vault{
dir = 4
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bbx" = (
/obj/effect/landmark{
name = "tripai"
@@ -30808,7 +30808,7 @@
req_access_txt = "16"
},
/turf/open/floor/greengrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bby" = (
/turf/open/floor/plating/warnplate{
dir = 2
@@ -31888,7 +31888,7 @@
/turf/open/floor/plasteel/vault{
dir = 1
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bdk" = (
/obj/structure/closet/secure_closet/personal,
/obj/machinery/light/small{
@@ -31923,7 +31923,7 @@
/turf/open/floor/plasteel/vault{
dir = 4
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bdm" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
req_access_txt = 1
@@ -32527,7 +32527,7 @@
pixel_y = 0
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"beu" = (
/obj/structure/window/reinforced,
/obj/structure/window/reinforced{
@@ -33491,13 +33491,13 @@
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bgb" = (
/obj/machinery/airalarm{
pixel_y = 23
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bgc" = (
/obj/machinery/atmospherics/components/unary/portables_connector/visible,
/obj/machinery/portable_atmospherics/pump,
@@ -33518,7 +33518,7 @@
d2 = 4
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bge" = (
/obj/structure/cable{
d1 = 1;
@@ -33527,7 +33527,7 @@
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bgf" = (
/obj/structure/window/reinforced,
/obj/structure/window/reinforced{
@@ -34502,11 +34502,11 @@
pixel_y = 0
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bhS" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bhT" = (
/obj/structure/cable{
d1 = 1;
@@ -34514,7 +34514,7 @@
icon_state = "1-4"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bhU" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 6
@@ -34524,20 +34524,20 @@
uses = 10
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bhV" = (
/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
dir = 1
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bhW" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 9;
pixel_y = 0
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bhX" = (
/obj/structure/table/reinforced,
/obj/item/weapon/phone{
@@ -34557,7 +34557,7 @@
pixel_y = 0
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bhY" = (
/obj/structure/window/reinforced{
dir = 1;
@@ -35782,7 +35782,7 @@
dir = 8
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bjZ" = (
/obj/structure/chair/office/dark{
dir = 8
@@ -35793,7 +35793,7 @@
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bka" = (
/obj/machinery/camera{
c_tag = "AI Chamber - Aft";
@@ -35807,12 +35807,12 @@
scrub_Toxins = 0
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bkb" = (
/obj/machinery/hologram/holopad,
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bkc" = (
/obj/structure/cable/yellow{
d1 = 4;
@@ -35836,7 +35836,7 @@
pixel_y = -32
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bke" = (
/obj/structure/table/reinforced,
/obj/item/weapon/folder/blue{
@@ -35847,7 +35847,7 @@
dir = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bkf" = (
/obj/effect/landmark{
name = "Observer-Start"
@@ -36701,16 +36701,16 @@
})
"blD" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/tcomfoyer{
+/area/ai_monitored/turret_protected/tcomfoyer{
name = "\improper MiniSat Foyer"
})
"blE" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"blF" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/closed/wall/r_wall,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"blG" = (
/obj/machinery/power/terminal{
icon_state = "term";
@@ -36722,7 +36722,7 @@
pixel_y = 28
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"blH" = (
/turf/closed/wall/r_wall,
/area/ai_monitored/storage/secure{
@@ -37742,7 +37742,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/tcomfoyer{
+/area/ai_monitored/turret_protected/tcomfoyer{
name = "\improper MiniSat Foyer"
})
"bns" = (
@@ -37756,7 +37756,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/tcomfoyer{
+/area/ai_monitored/turret_protected/tcomfoyer{
name = "\improper MiniSat Foyer"
})
"bnt" = (
@@ -37764,7 +37764,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/tcomfoyer{
+/area/ai_monitored/turret_protected/tcomfoyer{
name = "\improper MiniSat Foyer"
})
"bnu" = (
@@ -37773,7 +37773,7 @@
on = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bnv" = (
/obj/structure/showcase{
density = 0;
@@ -37791,11 +37791,11 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 1
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"bnw" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"bnx" = (
/obj/structure/showcase{
density = 0;
@@ -37810,7 +37810,7 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 4
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"bny" = (
/obj/machinery/door/airlock/highsecurity{
icon_state = "door_closed";
@@ -37837,7 +37837,7 @@
pixel_y = 0
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"bnz" = (
/obj/machinery/power/smes{
charge = 5e+006
@@ -38956,7 +38956,7 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 1
},
-/area/turret_protected/tcomfoyer{
+/area/ai_monitored/turret_protected/tcomfoyer{
name = "\improper MiniSat Foyer"
})
"bps" = (
@@ -38967,7 +38967,7 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 1
},
-/area/turret_protected/tcomfoyer{
+/area/ai_monitored/turret_protected/tcomfoyer{
name = "\improper MiniSat Foyer"
})
"bpt" = (
@@ -38990,7 +38990,7 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 1
},
-/area/turret_protected/tcomfoyer{
+/area/ai_monitored/turret_protected/tcomfoyer{
name = "\improper MiniSat Foyer"
})
"bpu" = (
@@ -38998,7 +38998,7 @@
dir = 4
},
/turf/closed/wall/r_wall,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"bpv" = (
/obj/machinery/light/small{
dir = 8
@@ -39014,13 +39014,13 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 1
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"bpw" = (
/obj/machinery/atmospherics/pipe/manifold4w/scrubbers/hidden,
/turf/open/floor/plasteel/darkblue/corner{
dir = 1
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"bpx" = (
/obj/machinery/hologram/holopad,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
@@ -39031,7 +39031,7 @@
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"bpy" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
@@ -39039,7 +39039,7 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 4
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"bpz" = (
/obj/machinery/power/apc{
aidisabled = 0;
@@ -39062,7 +39062,7 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 4
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"bpA" = (
/obj/machinery/power/terminal{
icon_state = "term";
@@ -40283,7 +40283,7 @@
req_one_access_txt = "32;19"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/tcomfoyer{
+/area/ai_monitored/turret_protected/tcomfoyer{
name = "\improper MiniSat Foyer"
})
"brH" = (
@@ -40297,7 +40297,7 @@
d2 = 8
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/tcomfoyer{
+/area/ai_monitored/turret_protected/tcomfoyer{
name = "\improper MiniSat Foyer"
})
"brI" = (
@@ -40308,7 +40308,7 @@
},
/obj/machinery/hologram/holopad,
/turf/open/floor/plasteel/black,
-/area/turret_protected/tcomfoyer{
+/area/ai_monitored/turret_protected/tcomfoyer{
name = "\improper MiniSat Foyer"
})
"brJ" = (
@@ -40329,7 +40329,7 @@
icon_state = "2-4"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/tcomfoyer{
+/area/ai_monitored/turret_protected/tcomfoyer{
name = "\improper MiniSat Foyer"
})
"brK" = (
@@ -40345,7 +40345,7 @@
req_one_access_txt = "32;19"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"brL" = (
/obj/structure/cable/yellow{
icon_state = "4-8";
@@ -40356,7 +40356,7 @@
dir = 5
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"brM" = (
/obj/structure/cable/yellow{
icon_state = "4-8";
@@ -40373,7 +40373,7 @@
dir = 10
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"brN" = (
/obj/structure/cable/yellow{
d1 = 2;
@@ -40392,7 +40392,7 @@
},
/mob/living/simple_animal/bot/secbot/pingsky,
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"brO" = (
/obj/structure/cable/yellow{
icon_state = "4-8";
@@ -40404,7 +40404,7 @@
on = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"brP" = (
/obj/structure/cable/yellow{
icon_state = "4-8";
@@ -40417,7 +40417,7 @@
d2 = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"brQ" = (
/obj/structure/cable/yellow{
icon_state = "4-8";
@@ -40430,7 +40430,7 @@
req_access_txt = "32"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"brR" = (
/obj/structure/cable/yellow{
d1 = 4;
@@ -40692,7 +40692,7 @@
/turf/open/floor/plasteel/vault{
dir = 6
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bsl" = (
/obj/structure/cable/yellow{
d1 = 4;
@@ -41476,7 +41476,7 @@
pixel_y = -23
},
/turf/open/floor/plasteel/vault,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"btx" = (
/obj/structure/disposalpipe/segment,
/obj/structure/cable/yellow{
@@ -41852,7 +41852,7 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 8
},
-/area/turret_protected/tcomfoyer{
+/area/ai_monitored/turret_protected/tcomfoyer{
name = "\improper MiniSat Foyer"
})
"btZ" = (
@@ -41877,7 +41877,7 @@
/turf/open/floor/plasteel/vault{
dir = 1
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"bua" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
@@ -41899,7 +41899,7 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 8
},
-/area/turret_protected/tcomfoyer{
+/area/ai_monitored/turret_protected/tcomfoyer{
name = "\improper MiniSat Foyer"
})
"bub" = (
@@ -41907,7 +41907,7 @@
dir = 4
},
/turf/closed/wall/r_wall,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"buc" = (
/obj/machinery/light/small{
dir = 8
@@ -41924,7 +41924,7 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 8
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"bud" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
@@ -41933,7 +41933,7 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 8
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"bue" = (
/obj/structure/cable/yellow{
d1 = 1;
@@ -41942,11 +41942,11 @@
},
/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"buf" = (
/obj/machinery/atmospherics/pipe/manifold/supply/hidden,
/turf/open/floor/plasteel/darkblue/corner,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"bug" = (
/obj/machinery/status_display{
density = 0;
@@ -41967,7 +41967,7 @@
/turf/open/floor/plasteel/vault{
dir = 4
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"buh" = (
/obj/machinery/light,
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
@@ -41976,7 +41976,7 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 8
},
-/area/turret_protected/tcomfoyer{
+/area/ai_monitored/turret_protected/tcomfoyer{
name = "\improper MiniSat Foyer"
})
"bui" = (
@@ -43707,7 +43707,7 @@
req_access_txt = "16"
},
/turf/open/floor/greengrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bxj" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
@@ -45672,7 +45672,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"bAC" = (
/obj/effect/landmark/start{
name = "Bartender"
@@ -45808,7 +45808,7 @@
},
/mob/living/simple_animal/bot/cleanbot,
/turf/open/floor/plasteel/darkblue/corner,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"bAR" = (
/turf/closed/wall,
/area/crew_quarters/theatre)
diff --git a/_maps/map_files/TgStation/tgstation.2.1.3.dmm b/_maps/map_files/TgStation/tgstation.2.1.3.dmm
index 6ae43da5db1..a2f3aebcc6a 100644
--- a/_maps/map_files/TgStation/tgstation.2.1.3.dmm
+++ b/_maps/map_files/TgStation/tgstation.2.1.3.dmm
@@ -22406,7 +22406,7 @@
dir = 6
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aYu" = (
/obj/machinery/firealarm{
dir = 1;
@@ -22427,7 +22427,7 @@
dir = 4
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aYw" = (
/obj/structure/cable{
d1 = 1;
@@ -22442,38 +22442,38 @@
req_access_txt = "16"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aYx" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 9
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aYy" = (
/obj/machinery/ai_status_display,
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aYz" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 5
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aYA" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 10
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aYB" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aYC" = (
/obj/machinery/firealarm{
dir = 1;
@@ -22964,13 +22964,13 @@
/area/bridge/meeting_room)
"aZR" = (
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aZS" = (
/obj/machinery/porta_turret/ai{
dir = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aZT" = (
/obj/structure/cable{
d1 = 1;
@@ -22978,13 +22978,13 @@
icon_state = "1-2"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aZU" = (
/obj/machinery/porta_turret/ai{
dir = 8
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"aZV" = (
/turf/closed/wall/r_wall,
/area/crew_quarters/captain)
@@ -23526,11 +23526,11 @@
dir = 8
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bbk" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bbl" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/obj/effect/landmark/event_spawn,
@@ -23538,14 +23538,14 @@
/area/crew_quarters/sleep)
"bbm" = (
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bbn" = (
/obj/structure/table,
/obj/machinery/light{
dir = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bbo" = (
/obj/machinery/disposal/bin,
/obj/structure/disposalpipe/trunk{
@@ -23556,7 +23556,7 @@
"bbp" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bbq" = (
/obj/machinery/light{
icon_state = "tube1";
@@ -23864,7 +23864,7 @@
dir = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bcf" = (
/obj/machinery/hologram/holopad,
/obj/structure/cable{
@@ -23873,7 +23873,7 @@
icon_state = "1-2"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bcg" = (
/obj/structure/table,
/obj/item/weapon/aiModule/supplied/freeform,
@@ -23884,7 +23884,7 @@
dir = 8
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bch" = (
/obj/machinery/vending/cigarette,
/turf/open/floor/wood,
@@ -24272,7 +24272,7 @@
dir = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bdg" = (
/obj/structure/cable{
d1 = 1;
@@ -24280,12 +24280,12 @@
icon_state = "1-2"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bdh" = (
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bdi" = (
/obj/machinery/computer/arcade,
/turf/open/floor/wood,
@@ -24691,7 +24691,7 @@
},
/obj/item/weapon/aiModule/core/full/custom,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bec" = (
/obj/machinery/light,
/obj/machinery/atmospherics/components/unary/vent_scrubber{
@@ -24700,7 +24700,7 @@
scrub_Toxins = 0
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bed" = (
/obj/machinery/power/apc{
cell_type = 5000;
@@ -24710,7 +24710,7 @@
},
/obj/structure/cable,
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bee" = (
/obj/machinery/computer/upload/ai,
/obj/machinery/flasher{
@@ -24719,7 +24719,7 @@
pixel_y = -21
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bef" = (
/obj/machinery/computer/upload/borg,
/obj/item/device/radio/intercom{
@@ -24730,7 +24730,7 @@
pixel_y = -29
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"beg" = (
/obj/structure/table,
/obj/item/weapon/aiModule/supplied/oxygen,
@@ -24753,14 +24753,14 @@
},
/obj/item/weapon/aiModule/supplied/protectStation,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"beh" = (
/obj/machinery/light,
/obj/machinery/atmospherics/components/unary/vent_pump{
on = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bei" = (
/obj/machinery/light{
icon_state = "tube1";
@@ -25289,33 +25289,33 @@
dir = 5
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bft" = (
/obj/machinery/ai_status_display,
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bfu" = (
/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{
dir = 4
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bfv" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bfw" = (
/obj/machinery/status_display{
density = 0;
layer = 4
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bfx" = (
/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
dir = 8
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bfy" = (
/obj/structure/table/wood,
/obj/item/weapon/paper_bin{
@@ -25330,7 +25330,7 @@
dir = 9
},
/turf/closed/wall/r_wall,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"bfA" = (
/obj/structure/table/wood,
/obj/item/weapon/hand_tele,
@@ -56121,7 +56121,7 @@
/obj/structure/grille,
/obj/structure/window/reinforced/fulltile,
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"csE" = (
/obj/structure/cable{
icon_state = "0-2";
@@ -56194,12 +56194,12 @@
"csN" = (
/obj/structure/transit_tube,
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"csO" = (
/obj/structure/window/reinforced/fulltile,
/obj/structure/transit_tube,
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"csP" = (
/obj/machinery/power/grounding_rod,
/turf/open/floor/plating/airless,
@@ -56224,18 +56224,18 @@
icon_state = "Block"
},
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"csU" = (
/obj/structure/transit_tube/station{
reverse_launch = 1
},
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"csV" = (
/turf/open/floor/plating/warnplate{
dir = 1
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"csW" = (
/obj/machinery/atmospherics/components/unary/vent_pump{
on = 1
@@ -56243,7 +56243,7 @@
/turf/open/floor/plating/warnplate{
dir = 1
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"csX" = (
/obj/structure/sign/securearea{
desc = "A warning sign which reads 'EXTERNAL AIRLOCK'";
@@ -56254,7 +56254,7 @@
pixel_y = 32
},
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"csY" = (
/obj/structure/cable{
icon_state = "0-2";
@@ -56290,14 +56290,14 @@
req_access_txt = "65;13"
},
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctb" = (
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctc" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctd" = (
/obj/structure/lattice/catwalk,
/obj/machinery/atmospherics/pipe/simple/yellow/visible,
@@ -56315,7 +56315,7 @@
"ctg" = (
/obj/structure/closet/emcloset,
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cth" = (
/obj/item/device/radio/intercom{
name = "Station Intercom (General)";
@@ -56324,7 +56324,7 @@
},
/obj/machinery/light/small,
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cti" = (
/obj/structure/grille,
/obj/structure/window/reinforced/fulltile,
@@ -56332,7 +56332,7 @@
pixel_y = -32
},
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctj" = (
/obj/machinery/camera{
c_tag = "MiniSat Pod Access";
@@ -56348,13 +56348,13 @@
},
/obj/machinery/light/small,
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctk" = (
/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{
dir = 8
},
/turf/closed/wall,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctl" = (
/obj/structure/grille,
/obj/structure/cable{
@@ -56385,19 +56385,19 @@
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctp" = (
/obj/machinery/atmospherics/components/unary/outlet_injector/on{
dir = 8
},
/turf/open/floor/plating/airless,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctq" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
},
/turf/closed/wall,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctr" = (
/obj/structure/table,
/obj/machinery/light/small{
@@ -56414,7 +56414,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cts" = (
/obj/structure/rack{
dir = 1
@@ -56435,11 +56435,11 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctt" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctu" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber{
dir = 4;
@@ -56448,7 +56448,7 @@
scrub_Toxins = 0
},
/turf/open/floor/plasteel/grimy,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctv" = (
/obj/structure/grille,
/turf/open/floor/plating/airless,
@@ -56463,18 +56463,18 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctx" = (
/obj/machinery/atmospherics/pipe/manifold4w/scrubbers,
/turf/open/floor/plasteel/grimy,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cty" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
},
/turf/open/floor/plasteel/grimy,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctz" = (
/obj/machinery/door/poddoor/shutters{
id = "teledoor";
@@ -56484,7 +56484,7 @@
dir = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctA" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
@@ -56494,7 +56494,7 @@
pixel_y = 30
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctB" = (
/obj/structure/cable,
/obj/machinery/power/tracker,
@@ -56519,7 +56519,7 @@
"ctE" = (
/obj/machinery/teleport/hub,
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctF" = (
/obj/machinery/button/door{
id = "teledoor";
@@ -56536,7 +56536,7 @@
/turf/open/floor/plasteel/darkwarning{
dir = 4
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctG" = (
/obj/structure/chair/office/dark{
dir = 8
@@ -56548,7 +56548,7 @@
pixel_y = 0
},
/turf/open/floor/plasteel/grimy,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctH" = (
/obj/machinery/computer/security/telescreen/entertainment{
pixel_x = -31
@@ -56561,11 +56561,11 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctI" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plasteel/grimy,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctJ" = (
/obj/machinery/hologram/holopad,
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
@@ -56579,27 +56579,27 @@
name = "Cyborg"
},
/turf/open/floor/plasteel/grimy,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctK" = (
/obj/machinery/door/airlock/hatch{
name = "MiniSat Teleporter";
req_access_txt = "17;65"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctL" = (
/obj/machinery/teleport/station,
/obj/machinery/light/small{
dir = 4
},
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctM" = (
/obj/machinery/bluespace_beacon,
/turf/open/floor/plasteel/darkwarning{
dir = 4
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctN" = (
/obj/machinery/atmospherics/pipe/simple/yellow/visible{
icon_state = "intact";
@@ -56622,7 +56622,7 @@
on = 1
},
/turf/open/floor/plasteel/grimy,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctQ" = (
/obj/structure/table,
/obj/machinery/microwave{
@@ -56636,7 +56636,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctR" = (
/obj/structure/sign/securearea{
desc = "A warning sign which reads 'RADIOACTIVE AREA'";
@@ -56659,7 +56659,7 @@
pixel_y = 0
},
/turf/open/floor/plasteel/grimy,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctT" = (
/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,
/obj/structure/cable{
@@ -56673,13 +56673,13 @@
icon_state = "1-2"
},
/turf/open/floor/plasteel/grimy,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctU" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
},
/turf/closed/wall,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctV" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden{
dir = 4
@@ -56696,11 +56696,11 @@
},
/obj/structure/chair,
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctW" = (
/obj/machinery/computer/teleporter,
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctX" = (
/obj/machinery/camera{
c_tag = "MiniSat Teleporter";
@@ -56717,22 +56717,22 @@
/turf/open/floor/plasteel/darkwarning{
dir = 4
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"ctY" = (
/obj/machinery/atmospherics/pipe/simple/yellow/visible,
/obj/machinery/meter,
/turf/closed/wall/r_wall,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Atmospherics"
})
"ctZ" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Atmospherics"
})
"cua" = (
/turf/closed/wall,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cub" = (
/obj/item/device/radio/intercom{
name = "Station Intercom (General)";
@@ -56741,7 +56741,7 @@
},
/obj/machinery/light/small,
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cuc" = (
/obj/structure/rack{
dir = 1
@@ -56753,7 +56753,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cud" = (
/obj/machinery/turretid{
control_area = null;
@@ -56772,7 +56772,7 @@
network = list("MiniSat")
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cue" = (
/obj/structure/cable{
d1 = 1;
@@ -56781,10 +56781,10 @@
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cuf" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"cug" = (
@@ -56795,7 +56795,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cuh" = (
/obj/machinery/atmospherics/pipe/simple/yellow/visible,
/obj/structure/rack,
@@ -56803,22 +56803,22 @@
/obj/item/weapon/crowbar/red,
/obj/item/clothing/head/welding,
/turf/open/floor/plating,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Atmospherics"
})
"cui" = (
/obj/machinery/atmospherics/components/unary/tank/air,
/turf/open/floor/plating,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Atmospherics"
})
"cuj" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cuk" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/closed/wall/r_wall,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cul" = (
/obj/structure/cable{
d1 = 1;
@@ -56832,11 +56832,11 @@
req_one_access_txt = "65"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cum" = (
/obj/machinery/recharge_station,
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"cun" = (
@@ -56847,7 +56847,7 @@
/turf/open/floor/plating/warnplate{
icon_plating = "warnplate"
},
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Atmospherics"
})
"cuo" = (
@@ -56860,7 +56860,7 @@
tag = "icon-warnplatecorner";
dir = 2
},
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Atmospherics"
})
"cup" = (
@@ -56881,7 +56881,7 @@
/turf/open/floor/plating/warnplate{
icon_plating = "warnplate"
},
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Atmospherics"
})
"cuq" = (
@@ -56893,7 +56893,7 @@
/turf/open/floor/plating/warnplate{
icon_plating = "warnplate"
},
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Atmospherics"
})
"cur" = (
@@ -56910,7 +56910,7 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 1
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cus" = (
/obj/structure/showcase{
density = 0;
@@ -56930,7 +56930,7 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 4
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cut" = (
/obj/structure/table,
/obj/item/stack/sheet/metal{
@@ -56954,7 +56954,7 @@
dir = 8
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cuv" = (
/obj/structure/showcase{
density = 0;
@@ -56973,14 +56973,14 @@
/turf/open/floor/plating/warnplate{
icon_plating = "warnplate"
},
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"cuw" = (
/turf/open/floor/plating/warnplate{
icon_plating = "warnplate"
},
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"cux" = (
@@ -57003,16 +57003,16 @@
/turf/open/floor/plating/warnplate/corner{
dir = 1
},
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"cuy" = (
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cuz" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Atmospherics"
})
"cuA" = (
@@ -57036,7 +57036,7 @@
/turf/open/floor/plating/warnplate{
dir = 4
},
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Atmospherics"
})
"cuB" = (
@@ -57057,14 +57057,14 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 4
},
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Atmospherics"
})
"cuC" = (
/obj/machinery/hologram/holopad,
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Atmospherics"
})
"cuD" = (
@@ -57094,13 +57094,13 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 1
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cuE" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 4
},
/turf/closed/wall/r_wall,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cuF" = (
/obj/machinery/light/small{
dir = 4
@@ -57118,7 +57118,7 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 4
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cuG" = (
/obj/structure/cable{
d1 = 1;
@@ -57131,7 +57131,7 @@
dir = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cuH" = (
/obj/machinery/light/small{
dir = 8
@@ -57147,7 +57147,7 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 1
},
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"cuI" = (
@@ -57157,7 +57157,7 @@
scrub_Toxins = 0
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"cuJ" = (
@@ -57166,7 +57166,7 @@
dir = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"cuK" = (
@@ -57196,7 +57196,7 @@
/turf/open/floor/plating/warnplate{
dir = 8
},
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"cuL" = (
@@ -57210,7 +57210,7 @@
dir = 5
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Atmospherics"
})
"cuM" = (
@@ -57228,7 +57228,7 @@
/turf/open/floor/plating/warnplate{
dir = 4
},
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Atmospherics"
})
"cuN" = (
@@ -57242,7 +57242,7 @@
dir = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Atmospherics"
})
"cuO" = (
@@ -57258,7 +57258,7 @@
},
/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Atmospherics"
})
"cuP" = (
@@ -57272,7 +57272,7 @@
dir = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cuQ" = (
/obj/structure/cable{
d1 = 4;
@@ -57289,7 +57289,7 @@
req_one_access_txt = "65"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cuR" = (
/obj/structure/cable{
d1 = 4;
@@ -57302,7 +57302,7 @@
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cuS" = (
/obj/structure/cable{
d1 = 1;
@@ -57327,7 +57327,7 @@
/obj/machinery/atmospherics/pipe/manifold4w/supply/hidden,
/mob/living/simple_animal/bot/secbot/pingsky,
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cuT" = (
/obj/structure/cable{
d1 = 4;
@@ -57339,7 +57339,7 @@
dir = 10
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"cuU" = (
@@ -57358,7 +57358,7 @@
req_one_access_txt = "65"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cuV" = (
/obj/structure/cable{
d1 = 4;
@@ -57367,7 +57367,7 @@
pixel_y = 0
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"cuW" = (
@@ -57388,7 +57388,7 @@
tag = ""
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"cuX" = (
@@ -57406,7 +57406,7 @@
/turf/open/floor/plating/warnplate{
dir = 8
},
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"cuY" = (
@@ -57416,7 +57416,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Atmospherics"
})
"cuZ" = (
@@ -57426,16 +57426,16 @@
},
/mob/living/simple_animal/bot/floorbot,
/turf/open/floor/plasteel/darkblue/corner,
-/area/turret_protected/AIsatextAS{
+/area/ai_monitored/turret_protected/AIsatextAS{
name = "AI Satellite Atmospherics"
})
"cva" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cvb" = (
/obj/machinery/ai_status_display,
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cvc" = (
/obj/structure/sign/securearea{
pixel_x = -32;
@@ -57454,7 +57454,7 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 8
},
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cvd" = (
/obj/machinery/porta_turret/ai{
dir = 4
@@ -57467,7 +57467,7 @@
dir = 4
},
/turf/open/floor/plasteel/darkblue/corner,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cve" = (
/obj/structure/cable{
d1 = 1;
@@ -57491,11 +57491,11 @@
req_access = list(65)
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"cvf" = (
/obj/machinery/status_display,
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cvg" = (
/obj/machinery/atmospherics/components/unary/vent_pump{
dir = 1;
@@ -57505,7 +57505,7 @@
/turf/open/floor/plasteel/darkblue/corner{
dir = 8
},
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"cvh" = (
@@ -57515,7 +57515,7 @@
/turf/open/floor/plasteel/vault{
dir = 8
},
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"cvi" = (
@@ -57525,22 +57525,22 @@
icon_state = "1-2"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFP{
+/area/ai_monitored/turret_protected/AIsatextFP{
name = "AI Satellite Service"
})
"cvj" = (
/turf/closed/wall,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvk" = (
/turf/closed/wall/r_wall,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvl" = (
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cvm" = (
/obj/machinery/door/airlock/maintenance_hatch{
name = "MiniSat Maintenance";
@@ -57548,13 +57548,13 @@
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvn" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/closed/wall/r_wall,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvo" = (
@@ -57570,12 +57570,12 @@
req_one_access_txt = "65"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvp" = (
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cvq" = (
/obj/machinery/door/airlock/maintenance_hatch{
name = "MiniSat Maintenance";
@@ -57587,7 +57587,7 @@
icon_state = "1-2"
},
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvr" = (
@@ -57595,32 +57595,32 @@
dir = 4
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cvs" = (
/obj/machinery/portable_atmospherics/scrubber,
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvt" = (
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvu" = (
/obj/structure/grille,
/obj/structure/window/reinforced/fulltile,
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvv" = (
/turf/closed/wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cvw" = (
/turf/open/floor/bluegrid,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvx" = (
@@ -57653,13 +57653,13 @@
pixel_y = -25
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cvy" = (
/obj/structure/grille,
/obj/structure/window/reinforced/fulltile,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvz" = (
@@ -57670,7 +57670,7 @@
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvA" = (
@@ -57703,13 +57703,13 @@
pixel_y = -25
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cvB" = (
/obj/structure/rack,
/obj/item/weapon/crowbar/red,
/obj/item/weapon/wrench,
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvC" = (
@@ -57719,19 +57719,19 @@
icon_state = "1-2"
},
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvD" = (
/obj/structure/reagent_dispensers/watertank,
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvE" = (
/obj/structure/reagent_dispensers/fueltank,
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvF" = (
@@ -57756,7 +57756,7 @@
dir = 8
},
/turf/open/floor/bluegrid,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvH" = (
@@ -57766,7 +57766,7 @@
dir = 4
},
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvI" = (
@@ -57783,7 +57783,7 @@
scrub_Toxins = 0
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvJ" = (
@@ -57796,7 +57796,7 @@
dir = 4
},
/turf/open/floor/bluegrid,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvK" = (
@@ -57818,7 +57818,7 @@
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvM" = (
@@ -57832,7 +57832,7 @@
pixel_x = -24
},
/turf/open/floor/bluegrid,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvN" = (
@@ -57846,7 +57846,7 @@
icon_state = "1-2"
},
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvO" = (
@@ -57864,7 +57864,7 @@
dir = 4
},
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvQ" = (
@@ -57872,7 +57872,7 @@
dir = 5
},
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvR" = (
@@ -57882,7 +57882,7 @@
dir = 10
},
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvS" = (
@@ -57890,7 +57890,7 @@
dir = 4
},
/turf/open/floor/bluegrid,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvT" = (
@@ -57902,7 +57902,7 @@
/obj/machinery/hologram/holopad,
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvU" = (
@@ -57917,7 +57917,7 @@
pixel_y = 0
},
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvV" = (
@@ -57927,7 +57927,7 @@
icon_state = "2-4"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvW" = (
@@ -57937,12 +57937,12 @@
icon_state = "1-8"
},
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvX" = (
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvY" = (
@@ -57950,7 +57950,7 @@
/obj/structure/window/reinforced/fulltile,
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cvZ" = (
@@ -57960,7 +57960,7 @@
pixel_y = 0
},
/turf/open/floor/bluegrid,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cwa" = (
@@ -57972,7 +57972,7 @@
pixel_y = 0
},
/turf/open/floor/bluegrid,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cwb" = (
@@ -57982,7 +57982,7 @@
dir = 5
},
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cwc" = (
@@ -57997,7 +57997,7 @@
on = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cwd" = (
@@ -58016,14 +58016,14 @@
pixel_y = -29
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cwe" = (
/obj/structure/sign/securearea,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/closed/wall/r_wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwf" = (
/obj/structure/cable{
d1 = 1;
@@ -58037,7 +58037,7 @@
req_one_access_txt = "65"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwg" = (
/obj/machinery/airalarm{
frequency = 1439;
@@ -58047,7 +58047,7 @@
dir = 8
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwh" = (
/obj/machinery/light/small{
dir = 1
@@ -58062,13 +58062,13 @@
pixel_y = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwi" = (
/obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{
dir = 8
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwj" = (
/obj/structure/cable{
d1 = 1;
@@ -58077,7 +58077,7 @@
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwk" = (
/obj/machinery/light/small{
dir = 1
@@ -58092,23 +58092,23 @@
pixel_x = 24
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwl" = (
/obj/machinery/atmospherics/components/unary/vent_pump{
dir = 4;
on = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwm" = (
/obj/structure/table/reinforced,
/obj/item/weapon/folder/white,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwn" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwo" = (
/obj/structure/cable{
d1 = 1;
@@ -58119,7 +58119,7 @@
dir = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwp" = (
/obj/structure/chair/office/dark,
/obj/structure/extinguisher_cabinet{
@@ -58127,24 +58127,24 @@
pixel_y = 0
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwq" = (
/obj/structure/grille,
/turf/open/floor/plating,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cwr" = (
/obj/structure/grille,
/obj/structure/window/reinforced/fulltile,
/turf/open/floor/plating,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cws" = (
/obj/structure/grille,
/obj/structure/window/reinforced/fulltile,
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plating,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwt" = (
/obj/structure/cable{
d1 = 1;
@@ -58158,7 +58158,7 @@
req_access_txt = "65"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwu" = (
/obj/structure/cable{
d1 = 1;
@@ -58171,7 +58171,7 @@
},
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwv" = (
/obj/machinery/light{
icon_state = "tube1";
@@ -58181,7 +58181,7 @@
pixel_x = -32
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cww" = (
/obj/structure/cable{
d1 = 4;
@@ -58193,7 +58193,7 @@
dir = 4
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwx" = (
/obj/structure/cable{
d1 = 2;
@@ -58204,7 +58204,7 @@
dir = 6
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwy" = (
/obj/effect/decal/cleanable/dirt,
/obj/structure/table_frame,
@@ -58217,7 +58217,7 @@
dir = 5
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwA" = (
/obj/structure/cable{
d1 = 1;
@@ -58235,7 +58235,7 @@
pixel_y = 0
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwB" = (
/obj/machinery/light{
icon_state = "tube1";
@@ -58245,13 +58245,13 @@
pixel_x = 32
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwC" = (
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{
dir = 10
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwD" = (
/obj/structure/window/reinforced{
dir = 1
@@ -58265,7 +58265,7 @@
pixel_y = -24
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwE" = (
/obj/structure/window/reinforced{
dir = 1
@@ -58294,7 +58294,7 @@
network = list("MiniSat")
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cwF" = (
/obj/structure/chair{
dir = 1
@@ -59281,7 +59281,7 @@
req_access_txt = "65;13"
},
/turf/open/floor/plating,
-/area/turret_protected/aisat_interior)
+/area/ai_monitored/turret_protected/aisat_interior)
"czl" = (
/obj/machinery/door/window/northright,
/obj/effect/decal/remains/human,
@@ -60003,7 +60003,7 @@
icon_state = "1-4"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cAS" = (
/obj/effect/landmark/start{
name = "AI"
@@ -60044,7 +60044,7 @@
pixel_y = -28
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cAT" = (
/obj/machinery/ai_slipper{
icon_state = "motion0";
@@ -60052,7 +60052,7 @@
},
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cAU" = (
/obj/structure/lattice,
/obj/machinery/camera{
@@ -60086,7 +60086,7 @@
on = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cAW" = (
/obj/structure/showcase{
density = 0;
@@ -60103,7 +60103,7 @@
on = 1
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cAX" = (
/obj/structure/lattice,
/obj/machinery/camera{
@@ -60124,7 +60124,7 @@
pixel_y = 0
},
/turf/closed/wall,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cAZ" = (
/obj/structure/cable{
d1 = 1;
@@ -60132,7 +60132,7 @@
icon_state = "1-4"
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cBa" = (
/obj/machinery/power/smes{
charge = 5e+006
@@ -60142,7 +60142,7 @@
icon_state = "0-8"
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cBb" = (
/obj/machinery/camera/motion{
c_tag = "MiniSat AI Chamber South";
@@ -60150,7 +60150,7 @@
network = list("MiniSat")
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cBc" = (
/obj/machinery/power/terminal{
icon_state = "term";
@@ -60161,14 +60161,14 @@
uses = 10
},
/turf/open/floor/bluegrid,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cBd" = (
/obj/machinery/firealarm{
dir = 1;
pixel_y = -24
},
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cBe" = (
/obj/machinery/airalarm{
dir = 1;
@@ -60177,7 +60177,7 @@
},
/obj/machinery/hologram/holopad,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai)
+/area/ai_monitored/turret_protected/ai)
"cBf" = (
/obj/machinery/camera{
c_tag = "MiniSat External South";
@@ -60214,7 +60214,7 @@
},
/obj/effect/landmark/event_spawn,
/turf/open/floor/plasteel/black,
-/area/turret_protected/ai_upload)
+/area/ai_monitored/turret_protected/ai_upload)
"cBk" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -60489,7 +60489,7 @@
/obj/machinery/atmospherics/pipe/simple/supply/hidden,
/obj/effect/landmark/event_spawn,
/turf/open/floor/plasteel/black,
-/area/turret_protected/AIsatextFS{
+/area/ai_monitored/turret_protected/AIsatextFS{
name = "AI Satellite Hallway"
})
"cBT" = (
diff --git a/code/__HELPERS/game.dm b/code/__HELPERS/game.dm
index dfccaa1320c..e7354ba9dcb 100644
--- a/code/__HELPERS/game.dm
+++ b/code/__HELPERS/game.dm
@@ -444,7 +444,7 @@
/proc/pollCandidatesForMob(Question, jobbanType, datum/game_mode/gametypeCheck, be_special_flag = 0, poll_time = 300, mob/M)
var/list/L = pollCandidates(Question, jobbanType, gametypeCheck, be_special_flag, poll_time)
- if(!M || qdeleted(M))
+ if(!M || qdeleted(M) || !M.loc)
return list()
return L
@@ -452,7 +452,8 @@
var/list/L = pollCandidates(Question, jobbanType, gametypeCheck, be_special_flag, poll_time)
var/i=1
for(var/v in mobs)
- if(!v || qdeleted(v))
+ var/atom/A = v
+ if(!A || qdeleted(A) || !A.loc)
mobs.Cut(i,i+1)
else
++i
diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm
index 2b20a5ed50f..3a339e0f349 100644
--- a/code/_onclick/item_attack.dm
+++ b/code/_onclick/item_attack.dm
@@ -46,8 +46,6 @@
/obj/item/proc/attack_obj(obj/O, mob/living/user)
if(flags & NOBLUDGEON)
return
- if(user.a_intent == "help") //so you don't hit a machine with a tool while trying to disassemble it.
- return
user.changeNext_move(CLICK_CD_MELEE)
user.do_attack_animation(O)
O.attacked_by(src, user)
diff --git a/code/controllers/subsystem/events.dm b/code/controllers/subsystem/events.dm
index 13f337c1f79..b937394016c 100644
--- a/code/controllers/subsystem/events.dm
+++ b/code/controllers/subsystem/events.dm
@@ -102,8 +102,8 @@ var/datum/subsystem/events/SSevent
/datum/round_event/proc/findEventArea() //Here's a nice proc to use to find an area for your event to land in!
var/list/safe_areas = list(
- /area/turret_protected/ai,
- /area/turret_protected/ai_upload,
+ /area/ai_monitored/turret_protected/ai,
+ /area/ai_monitored/turret_protected/ai_upload,
/area/engine,
/area/solar,
/area/holodeck,
diff --git a/code/datums/weather/weather_types.dm b/code/datums/weather/weather_types.dm
index 6213eacc75c..16ec893036e 100644
--- a/code/datums/weather/weather_types.dm
+++ b/code/datums/weather/weather_types.dm
@@ -132,7 +132,7 @@
end_message = "The air seems to be cooling off again."
area_type = /area
- protected_areas = list(/area/maintenance, /area/turret_protected/ai_upload, /area/turret_protected/ai_upload_foyer, /area/turret_protected/ai)
+ protected_areas = list(/area/maintenance, /area/ai_monitored/turret_protected/ai_upload, /area/ai_monitored/turret_protected/ai_upload_foyer, /area/ai_monitored/turret_protected/ai)
target_z = ZLEVEL_STATION
immunity_type = "rad"
diff --git a/code/game/area/Space_Station_13_areas.dm b/code/game/area/Space_Station_13_areas.dm
index 56b43bbce1e..dbf1e6496cf 100644
--- a/code/game/area/Space_Station_13_areas.dm
+++ b/code/game/area/Space_Station_13_areas.dm
@@ -83,7 +83,9 @@ var/list/teleportlocs = list()
/area/engine/
-/area/turret_protected/
+/area/ai_monitored //stub defined ai_monitored.dm
+
+/area/ai_monitored/turret_protected/
/area/arrival
requires_power = 0
@@ -1231,22 +1233,22 @@ var/list/teleportlocs = list()
icon_state = "storage"
-/area/turret_protected/
+/area/ai_monitored/turret_protected/
ambientsounds = list('sound/ambience/ambimalf.ogg')
-/area/turret_protected/ai_upload
+/area/ai_monitored/turret_protected/ai_upload
name = "AI Upload Chamber"
icon_state = "ai_upload"
-/area/turret_protected/ai_upload_foyer
+/area/ai_monitored/turret_protected/ai_upload_foyer
name = "AI Upload Access"
icon_state = "ai_foyer"
-/area/turret_protected/ai
+/area/ai_monitored/turret_protected/ai
name = "AI Chamber"
icon_state = "ai_chamber"
-/area/turret_protected/aisat
+/area/ai_monitored/turret_protected/aisat
name = "AI Satellite"
icon_state = "ai"
@@ -1254,35 +1256,35 @@ var/list/teleportlocs = list()
name = "AI Satellite Exterior"
icon_state = "yellow"
-/area/turret_protected/aisat_interior
+/area/ai_monitored/turret_protected/aisat_interior
name = "AI Satellite Antechamber"
icon_state = "ai"
-/area/turret_protected/AIsatextFP
+/area/ai_monitored/turret_protected/AIsatextFP
name = "AI Sat Ext"
icon_state = "storage"
luminosity = 1
lighting_use_dynamic = DYNAMIC_LIGHTING_IFSTARLIGHT
-/area/turret_protected/AIsatextFS
+/area/ai_monitored/turret_protected/AIsatextFS
name = "AI Sat Ext"
icon_state = "storage"
luminosity = 1
lighting_use_dynamic = DYNAMIC_LIGHTING_IFSTARLIGHT
-/area/turret_protected/AIsatextAS
+/area/ai_monitored/turret_protected/AIsatextAS
name = "AI Sat Ext"
icon_state = "storage"
luminosity = 1
lighting_use_dynamic = DYNAMIC_LIGHTING_IFSTARLIGHT
-/area/turret_protected/AIsatextAP
+/area/ai_monitored/turret_protected/AIsatextAP
name = "AI Sat Ext"
icon_state = "storage"
luminosity = 1
lighting_use_dynamic = DYNAMIC_LIGHTING_IFSTARLIGHT
-/area/turret_protected/NewAIMain
+/area/ai_monitored/turret_protected/NewAIMain
name = "AI Main New"
icon_state = "storage"
@@ -1327,22 +1329,22 @@ var/list/teleportlocs = list()
name = "Abandoned Satellite"
icon_state = "tcomsatcham"
-/area/turret_protected/tcomsat
+/area/ai_monitored/turret_protected/tcomsat
name = "Telecoms Satellite"
icon_state = "tcomsatlob"
ambientsounds = list('sound/ambience/ambisin2.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/ambigen10.ogg')
-/area/turret_protected/tcomfoyer
+/area/ai_monitored/turret_protected/tcomfoyer
name = "Telecoms Foyer"
icon_state = "tcomsatentrance"
ambientsounds = list('sound/ambience/ambisin2.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/ambigen10.ogg')
-/area/turret_protected/tcomwest
+/area/ai_monitored/turret_protected/tcomwest
name = "Telecommunications Satellite West Wing"
icon_state = "tcomsatwest"
ambientsounds = list('sound/ambience/ambisin2.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/ambigen10.ogg')
-/area/turret_protected/tcomeast
+/area/ai_monitored/turret_protected/tcomeast
name = "Telecommunications Satellite East Wing"
icon_state = "tcomsateast"
ambientsounds = list('sound/ambience/ambisin2.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/signal.ogg', 'sound/ambience/ambigen10.ogg')
@@ -1641,7 +1643,7 @@ var/list/the_station_areas = list (
/area/ai_monitored/storage/eva, //do not try to simplify to "/area/ai_monitored" --rastaf0
// /area/ai_monitored/storage/secure, //not present on map
// /area/ai_monitored/storage/emergency, //not present on map
- /area/turret_protected/ai_upload, //do not try to simplify to "/area/turret_protected" --rastaf0
- /area/turret_protected/ai_upload_foyer,
- /area/turret_protected/ai,
+ /area/ai_monitored/turret_protected/ai_upload, //do not try to simplify to "/area/ai_monitored/turret_protected" --rastaf0
+ /area/ai_monitored/turret_protected/ai_upload_foyer,
+ /area/ai_monitored/turret_protected/ai,
)
diff --git a/code/game/area/ai_monitored.dm b/code/game/area/ai_monitored.dm
index f4db2f376a5..f1ad7ab8872 100644
--- a/code/game/area/ai_monitored.dm
+++ b/code/game/area/ai_monitored.dm
@@ -1,24 +1,29 @@
/area/ai_monitored
name = "AI Monitored Area"
- var/obj/machinery/camera/motioncamera = null
+ var/list/obj/machinery/camera/motioncameras = list()
+ var/list/motionTargets = list()
-
-/area/ai_monitored/New()
+/area/ai_monitored/initialize()
..()
- // locate and store the motioncamera
- spawn (20) // spawn on a delay to let turfs/objs load
- for (var/obj/machinery/camera/M in src)
- if(M.isMotion())
- motioncamera = M
- M.area_motion = src
+ for (var/obj/machinery/camera/M in src)
+ if(M.isMotion())
+ motioncameras.Add(M)
+ M.area_motion = src
+
+//Only need to use one camera
/area/ai_monitored/Entered(atom/movable/O)
..()
- if (ismob(O) && motioncamera)
- motioncamera.newTarget(O)
+ if (ismob(O) && motioncameras.len)
+ for(var/X in motioncameras)
+ var/obj/machinery/camera/cam = X
+ cam.newTarget(O)
+ return
/area/ai_monitored/Exited(atom/movable/O)
- if (ismob(O) && motioncamera)
- motioncamera.lostTarget(O)
-
-
+ ..()
+ if (ismob(O) && motioncameras.len)
+ for(var/X in motioncameras)
+ var/obj/machinery/camera/cam = X
+ cam.lostTarget(O)
+ return
\ No newline at end of file
diff --git a/code/game/gamemodes/antag_spawner.dm b/code/game/gamemodes/antag_spawner.dm
index 7badeff7bbb..3e504c397a9 100644
--- a/code/game/gamemodes/antag_spawner.dm
+++ b/code/game/gamemodes/antag_spawner.dm
@@ -53,15 +53,18 @@
if(loc == H || (in_range(src, H) && isturf(loc)))
H.set_machine(src)
if(href_list["school"])
- if (used)
+ if(used)
H << "You already used this contract!"
return
- var/list/candidates = pollCandidates("Do you want to play as a wizard's [href_list["school"]] apprentice?", ROLE_WIZARD, null, ROLE_WIZARD, 150)
+ var/list/candidates = pollCandidatesForMob("Do you want to play as a wizard's [href_list["school"]] apprentice?", ROLE_WIZARD, null, ROLE_WIZARD, 150, src)
if(candidates.len)
- src.used = 1
- var/client/C = pick(candidates)
- spawn_antag(C, get_turf(H.loc), href_list["school"])
- if(H.mind)
+ if(used)
+ H << "You already used this contract!"
+ return
+ used = 1
+ var/mob/dead/observer/theghost = pick(candidates)
+ spawn_antag(theghost.client, get_turf(src), href_list["school"])
+ if(H && H.mind)
ticker.mode.update_wiz_icons_added(H.mind)
else
H << "Unable to reach your apprentice! You can either attack the spellbook with the contract to refund your points, or wait and try again later."
@@ -71,40 +74,44 @@
var/mob/living/carbon/human/M = new/mob/living/carbon/human(T)
C.prefs.copy_to(M)
M.key = C.key
- M << "You are the [usr.real_name]'s apprentice! You are bound by magic contract to follow their orders and help them in accomplishing their goals."
+ var/wizard_name = "the wizard"
+ if(usr)
+ wizard_name = usr.real_name
+ M << "You are [wizard_name]'s apprentice! You are bound by magic contract to follow their orders and help them in accomplishing their goals."
switch(type)
if("destruction")
M.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/projectile/magic_missile(null))
M.mind.AddSpell(new /obj/effect/proc_holder/spell/fireball(null))
- M << "Your service has not gone unrewarded, however. Studying under [usr.real_name], you have learned powerful, destructive spells. You are able to cast magic missile and fireball."
+ M << "Your service has not gone unrewarded, however. Studying under [wizard_name], you have learned powerful, destructive spells. You are able to cast magic missile and fireball."
if("bluespace")
M.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/area_teleport/teleport(null))
M.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/ethereal_jaunt(null))
- M << "Your service has not gone unrewarded, however. Studying under [usr.real_name], you have learned reality bending mobility spells. You are able to cast teleport and ethereal jaunt."
+ M << "Your service has not gone unrewarded, however. Studying under [wizard_name], you have learned reality bending mobility spells. You are able to cast teleport and ethereal jaunt."
if("healing")
M.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/charge(null))
M.mind.AddSpell(new /obj/effect/proc_holder/spell/aoe_turf/conjure/forcewall(null))
M.put_in_hands_or_del(new /obj/item/weapon/gun/magic/staff/healing(M))
- M << "Your service has not gone unrewarded, however. Studying under [usr.real_name], you have learned livesaving survival spells. You are able to cast charge and forcewall."
+ M << "Your service has not gone unrewarded, however. Studying under [wizard_name], you have learned livesaving survival spells. You are able to cast charge and forcewall."
if("robeless")
M.mind.AddSpell(new /obj/effect/proc_holder/spell/aoe_turf/knock(null))
M.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/mind_transfer(null))
- M << "Your service has not gone unrewarded, however. Studying under [usr.real_name], you have learned stealthy, robeless spells. You are able to cast knock and mindswap."
+ M << "Your service has not gone unrewarded, however. Studying under [wizard_name], you have learned stealthy, robeless spells. You are able to cast knock and mindswap."
equip_antag(M)
var/wizard_name_first = pick(wizard_first)
var/wizard_name_second = pick(wizard_second)
var/randomname = "[wizard_name_first] [wizard_name_second]"
- var/datum/objective/protect/new_objective = new /datum/objective/protect
- new_objective.owner = M:mind
- new_objective:target = usr:mind
- new_objective.explanation_text = "Protect [usr.real_name], the wizard."
- M.mind.objectives += new_objective
+ if(usr)
+ var/datum/objective/protect/new_objective = new /datum/objective/protect
+ new_objective.owner = M.mind
+ new_objective.target = usr.mind
+ new_objective.explanation_text = "Protect [usr.real_name], the wizard."
+ M.mind.objectives += new_objective
ticker.mode.apprentices += M.mind
M.mind.special_role = "apprentice"
ticker.mode.update_wiz_icons_added(M.mind)
M << sound('sound/effects/magic.ogg')
- var/newname = copytext(sanitize(input(M, "You are the wizard's apprentice. Would you like to change your name to something else?", "Name change", randomname) as null|text),1,MAX_NAME_LEN)
+ var/newname = copytext(sanitize(input(M, "You are [wizard_name]'s apprentice. Would you like to change your name to something else?", "Name change", randomname) as null|text),1,MAX_NAME_LEN)
if (!newname)
newname = randomname
M.mind.name = newname
@@ -149,11 +156,13 @@
if(!(check_usability(user)))
return
- var/list/nuke_candidates = pollCandidates("Do you want to play as a syndicate [borg_to_spawn ? "[lowertext(borg_to_spawn)] cyborg":"operative"]?", ROLE_OPERATIVE, null, ROLE_OPERATIVE, 150)
+ var/list/nuke_candidates = pollCandidatesForMob("Do you want to play as a syndicate [borg_to_spawn ? "[lowertext(borg_to_spawn)] cyborg":"operative"]?", ROLE_OPERATIVE, null, ROLE_OPERATIVE, 150, src)
if(nuke_candidates.len)
+ if(!(check_usability(user)))
+ return
used = 1
- var/client/C = pick(nuke_candidates)
- spawn_antag(C, get_turf(src.loc), "syndieborg")
+ var/mob/dead/observer/theghost = pick(nuke_candidates)
+ spawn_antag(theghost.client, get_turf(src), "syndieborg")
var/datum/effect_system/spark_spread/S = new /datum/effect_system/spark_spread
S.set_up(4, 1, src)
S.start()
@@ -219,10 +228,8 @@
icon = 'icons/obj/wizard.dmi'
icon_state = "vial"
- var/shatter_msg = "You shatter the bottle, no \
- turning back now!"
- var/veil_msg = "You sense a dark presence lurking \
- just beyond the veil..."
+ var/shatter_msg = "You shatter the bottle, no turning back now!"
+ var/veil_msg = "You sense a dark presence lurking just beyond the veil..."
var/objective_verb = "Kill"
var/mob/living/demon_type = /mob/living/simple_animal/slaughter
@@ -231,14 +238,15 @@
if(user.z != 1)
user << "You should probably wait until you reach the station."
return
- var/list/demon_candidates = pollCandidates("Do you want to play as a [initial(demon_type.name)]?", null, null, ROLE_ALIEN, 50)
- if(demon_candidates.len > 0)
+ if(used)
+ return
+ var/list/demon_candidates = pollCandidatesForMob("Do you want to play as a [initial(demon_type.name)]?", null, null, ROLE_ALIEN, 50, src)
+ if(demon_candidates.len)
if(used)
- user << "You're already smashing the bottle, calm down."
return
used = 1
- var/client/C = pick(demon_candidates)
- spawn_antag(C, get_turf(src.loc), initial(demon_type.name))
+ var/mob/dead/observer/theghost = pick(demon_candidates)
+ spawn_antag(theghost.client, get_turf(src), initial(demon_type.name))
user << shatter_msg
user << veil_msg
playsound(user.loc, 'sound/effects/Glassbr1.ogg', 100, 1)
@@ -256,33 +264,31 @@
S.mind.assigned_role = S.name
S.mind.special_role = S.name
ticker.mode.traitors += S.mind
- var/datum/objective/assassinate/new_objective = new /datum/objective/assassinate
- new_objective.owner = S.mind
- new_objective.target = usr.mind
- new_objective.explanation_text = "[objective_verb] [usr.real_name], \
- the one who summoned you."
- S.mind.objectives += new_objective
+ var/datum/objective/assassinate/new_objective
+ if(usr)
+ new_objective = new /datum/objective/assassinate
+ new_objective.owner = S.mind
+ new_objective.target = usr.mind
+ new_objective.explanation_text = "[objective_verb] [usr.real_name], the one who summoned you."
+ S.mind.objectives += new_objective
var/datum/objective/new_objective2 = new /datum/objective
new_objective2.owner = S.mind
- new_objective2.explanation_text = "[objective_verb] everyone else \
- while you're at it."
+ new_objective2.explanation_text = "[objective_verb] everyone[usr ? " else while you're at it":""]."
S.mind.objectives += new_objective2
S << S.playstyle_string
- S << "You are currently not currently in the same plane of \
- existence as the station. Ctrl+Click a blood pool to manifest."
- S << "Objective #[1]: [new_objective.explanation_text]"
- S << "Objective #[2]: [new_objective2.explanation_text]"
+ S << "You are currently not currently in the same plane of existence as the station. \
+ Ctrl+Click a blood pool to manifest."
+ if(new_objective)
+ S << "Objective #[1]: [new_objective.explanation_text]"
+ S << "Objective #[new_objective ? "[2]":"[1]"]: [new_objective2.explanation_text]"
/obj/item/weapon/antag_spawner/slaughter_demon/laughter
name = "vial of tickles"
- desc = "A magically infused bottle of clown love, distilled from \
- countless hugging attacks. Used in funny rituals to attract \
- adorable creatures."
+ desc = "A magically infused bottle of clown love, distilled from countless hugging attacks. Used in funny rituals to attract adorable creatures."
icon = 'icons/obj/wizard.dmi'
icon_state = "vial"
color = "#FF69B4" // HOT PINK
- veil_msg = "You sense an adorable presence \
- lurking just beyond the veil..."
+ veil_msg = "You sense an adorable presence lurking just beyond the veil..."
objective_verb = "Hug and Tickle"
demon_type = /mob/living/simple_animal/slaughter/laughter
diff --git a/code/game/gamemodes/clock_cult/clock_structures.dm b/code/game/gamemodes/clock_cult/clock_structures.dm
index 937dbccf4df..790c7063d5a 100644
--- a/code/game/gamemodes/clock_cult/clock_structures.dm
+++ b/code/game/gamemodes/clock_cult/clock_structures.dm
@@ -617,6 +617,9 @@
icon_state = "clockwork_floor"
layer = TURF_LAYER
+/obj/effect/clockwork/overlay/floor/bloodcult //this is used by BLOOD CULT, it shouldn't use such a path...
+ icon_state = "cult"
+
/obj/effect/clockwork/general_marker
name = "general marker"
desc = "Some big guy. For you."
diff --git a/code/game/gamemodes/events.dm b/code/game/gamemodes/events.dm
index 297fe4cfb2c..05a96fe19ee 100644
--- a/code/game/gamemodes/events.dm
+++ b/code/game/gamemodes/events.dm
@@ -1,7 +1,7 @@
/proc/power_failure()
priority_announce("Abnormal activity detected in [station_name()]'s powernet. As a precautionary measure, the station's power will be shut off for an indeterminate duration.", "Critical Power Failure", 'sound/AI/poweroff.ogg')
for(var/obj/machinery/power/smes/S in machines)
- if(istype(get_area(S), /area/turret_protected) || S.z != ZLEVEL_STATION)
+ if(istype(get_area(S), /area/ai_monitored/turret_protected) || S.z != ZLEVEL_STATION)
continue
S.charge = 0
S.output_level = 0
@@ -9,7 +9,7 @@
S.update_icon()
S.power_change()
- var/list/skipped_areas = list(/area/engine/engineering, /area/turret_protected/ai)
+ var/list/skipped_areas = list(/area/engine/engineering, /area/ai_monitored/turret_protected/ai)
for(var/area/A in world)
if( !A.requires_power || A.always_unpowered )
diff --git a/code/game/machinery/camera/motion.dm b/code/game/machinery/camera/motion.dm
index e540942b490..6b4a055bbab 100644
--- a/code/game/machinery/camera/motion.dm
+++ b/code/game/machinery/camera/motion.dm
@@ -1,6 +1,6 @@
/obj/machinery/camera
- var/list/motionTargets = list()
+ var/list/localMotionTargets = list()
var/detectTime = 0
var/area/ai_monitored/area_motion = null
var/alarm_delay = 30 // Don't forget, there's another 3 seconds in queueAlarm()
@@ -15,28 +15,31 @@
if (elapsed > alarm_delay)
triggerAlarm()
else if (detectTime == -1)
- for (var/mob/target in motionTargets)
- if (target.stat == 2) lostTarget(target)
- // If not detecting with motion camera...
- if (!area_motion)
- // See if the camera is still in range
- if(!in_range(src, target))
- // If they aren't in range, lose the target.
- lostTarget(target)
+ for (var/mob/target in getTargetList())
+ if (target.stat == DEAD || (!area_motion && !in_range(src, target)))
+ //If not part of a monitored area and the camera is not in range or the target is dead
+ lostTarget(target)
+
+/obj/machinery/camera/proc/getTargetList()
+ if(area_motion)
+ return area_motion.motionTargets
+ return localMotionTargets
/obj/machinery/camera/proc/newTarget(mob/target)
if(isAI(target))
return 0
if (detectTime == 0)
detectTime = world.time // start the clock
- if (!(target in motionTargets))
- motionTargets += target
+ var/list/targets = getTargetList()
+ if (!(target in targets))
+ targets += target
return 1
/obj/machinery/camera/proc/lostTarget(mob/target)
- if (target in motionTargets)
- motionTargets -= target
- if (motionTargets.len == 0)
+ var/list/targets = getTargetList()
+ if (target in targets)
+ targets -= target
+ if (targets.len == 0)
cancelAlarm()
/obj/machinery/camera/proc/cancelAlarm()
diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm
index e458f081eb1..cf112181ff3 100644
--- a/code/game/machinery/doors/airlock.dm
+++ b/code/game/machinery/doors/airlock.dm
@@ -32,6 +32,7 @@ var/list/airlock_overlays = list()
obj_integrity = 300
max_integrity = 300
integrity_failure = 70
+ damage_deflection = 20
var/aiControlDisabled = 0 //If 1, AI control is disabled until the AI hacks back in and disables the lock. If 2, the AI has bypassed the lock. If -1, the control is enabled but the AI had bypassed it earlier, so if it is disabled again the AI would have no trouble getting back in.
var/hackProof = 0 // if 1, this door can't be hacked by the AI
@@ -994,7 +995,7 @@ var/list/airlock_overlays = list()
if(autoclose && normalspeed)
addtimer(src, "autoclose", 150)
else if(autoclose && !normalspeed)
- addtimer(src, "autoclose", 10)
+ addtimer(src, "autoclose", 15)
if(!density)
return 1
diff --git a/code/game/machinery/doors/airlock_types.dm b/code/game/machinery/doors/airlock_types.dm
index 737386b9e19..cf42af56410 100644
--- a/code/game/machinery/doors/airlock_types.dm
+++ b/code/game/machinery/doors/airlock_types.dm
@@ -303,6 +303,7 @@
explosion_block = 2
obj_integrity = 500
max_integrity = 500
+ damage_deflection = 30
//////////////////////////////////
/*
@@ -321,6 +322,7 @@
icon = 'icons/obj/doors/airlocks/abductor/abductor_airlock.dmi'
overlays_file = 'icons/obj/doors/airlocks/abductor/overlays.dmi'
assemblytype = /obj/structure/door_assembly/door_assembly_abductor
+ damage_deflection = 30
opacity = 1
explosion_block = 3
hackProof = 1
diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm
index 9bb28c1175a..87f71fbc9a3 100644
--- a/code/game/machinery/doors/door.dm
+++ b/code/game/machinery/doors/door.dm
@@ -12,6 +12,7 @@
max_integrity = 350
armor = list(melee = 30, bullet = 30, laser = 20, energy = 20, bomb = 10, bio = 100, rad = 100, fire = 80, acid = 70)
+
var/secondsElectrified = 0
var/shockedby = list()
var/visible = 1
@@ -29,6 +30,7 @@
var/assemblytype //the type of door frame to drop during deconstruction
var/auto_close //TO BE REMOVED, no longer used, it's just preventing a runtime with a map var edit.
var/datum/effect_system/spark_spread/spark_system
+ var/damage_deflection = 10
/obj/machinery/door/New()
..()
@@ -160,7 +162,7 @@ obj/machinery/door/proc/try_to_crowbar(obj/item/I, mob/user)
return ..()
/obj/machinery/door/run_obj_armor(damage_amount, damage_type, damage_flag = 0, attack_dir)
- if(damage_flag == "melee" && damage_amount < 10)
+ if(damage_flag == "melee" && damage_amount < damage_deflection)
return 0
. = ..()
diff --git a/code/game/machinery/doors/poddoor.dm b/code/game/machinery/doors/poddoor.dm
index e6c83a4307a..feafda2abfe 100644
--- a/code/game/machinery/doors/poddoor.dm
+++ b/code/game/machinery/doors/poddoor.dm
@@ -12,6 +12,7 @@
max_integrity = 600
armor = list(melee = 50, bullet = 100, laser = 100, energy = 100, bomb = 50, bio = 100, rad = 100, fire = 100, acid = 70)
resistance_flags = FIRE_PROOF
+ damage_deflection = 70
/obj/machinery/door/poddoor/preopen
icon_state = "open"
@@ -44,11 +45,6 @@
return
..()
-/obj/machinery/door/poddoor/run_obj_armor(damage_amount, damage_type, damage_flag = 0, attack_dir)
- if(damage_flag == "melee" && damage_amount < 70) //any melee attack below 70 dmg does nothing
- return 0
- . = ..()
-
/obj/machinery/door/poddoor/do_animate(animation)
switch(animation)
if("opening")
diff --git a/code/game/machinery/doors/shutters.dm b/code/game/machinery/doors/shutters.dm
index 9c114009071..7e6d006b218 100644
--- a/code/game/machinery/doors/shutters.dm
+++ b/code/game/machinery/doors/shutters.dm
@@ -4,6 +4,7 @@
desc = "Heavy duty metal shutters that opens mechanically."
icon = 'icons/obj/doors/shutters.dmi'
layer = CLOSED_DOOR_LAYER
+ damage_deflection = 20
/obj/machinery/door/poddoor/shutters/preopen
icon_state = "open"
diff --git a/code/game/objects/items/weapons/storage/secure.dm b/code/game/objects/items/weapons/storage/secure.dm
index cfb927e1d15..1c020df41aa 100644
--- a/code/game/objects/items/weapons/storage/secure.dm
+++ b/code/game/objects/items/weapons/storage/secure.dm
@@ -61,13 +61,6 @@
// -> storage/attackby() what with handle insertion, etc
return ..()
-/obj/item/weapon/storage/secure/attackby(obj/item/weapon/W, mob/user, params)
- if(istype(W, /obj/item/weapon/card/emag))
- if(locked)
- user << "You take a second to realize there's no ID slot for you to emag this with."
- else
- user << "You take a second to realize the case is already open, making you look really silly. Hopefully no one saw."
-
/obj/item/weapon/storage/secure/MouseDrop(over_object, src_location, over_location)
if (locked)
src.add_fingerprint(usr)
diff --git a/code/game/objects/obj_defense.dm b/code/game/objects/obj_defense.dm
index b60057a63c6..6794e5e939e 100644
--- a/code/game/objects/obj_defense.dm
+++ b/code/game/objects/obj_defense.dm
@@ -81,6 +81,10 @@
return 0
/obj/blob_act(obj/structure/blob/B)
+ if(isturf(loc))
+ var/turf/T = loc
+ if(T.intact && level == 1) //the blob doesn't destroy thing below the floor
+ return
take_damage(400, BRUTE, "melee", 0, get_dir(src, B))
/obj/proc/attack_generic(mob/user, damage_amount = 0, damage_type = BRUTE, damage_flag = 0, sound_effect = 1) //used by attack_alien, attack_animal, and attack_slime
@@ -180,6 +184,10 @@ var/global/image/acid_overlay = image("icon" = 'icons/effects/effects.dmi', "ico
//// FIRE
/obj/fire_act(exposed_temperature, exposed_volume)
+ if(isturf(loc))
+ var/turf/T = loc
+ if(T.intact && level == 1) //fire can't damage things hidden below the floor.
+ return
if(exposed_temperature && !(resistance_flags & FIRE_PROOF))
take_damage(Clamp(0.02 * exposed_temperature, 0, 20), BURN, "fire", 0)
if(!(resistance_flags & ON_FIRE) && (resistance_flags & FLAMMABLE))
diff --git a/code/game/objects/structures/ai_core.dm b/code/game/objects/structures/ai_core.dm
index 79be989d0d6..946fbeaabf8 100644
--- a/code/game/objects/structures/ai_core.dm
+++ b/code/game/objects/structures/ai_core.dm
@@ -1,3 +1,9 @@
+#define EMPTY_CORE 0
+#define CIRCUIT_CORE 1
+#define SCREWED_CORE 2
+#define CABLED_CORE 3
+#define GLASS_CORE 4
+
/obj/structure/AIcore
density = 1
anchored = 0
@@ -25,193 +31,178 @@
return ..()
/obj/structure/AIcore/attackby(obj/item/P, mob/user, params)
- switch(state)
- if(0)
- if(istype(P, /obj/item/weapon/wrench))
- playsound(loc, 'sound/items/Ratchet.ogg', 50, 1)
- user << "You start wrenching the frame into place..."
- if(do_after(user, 20/P.toolspeed, target = src))
- user << "You wrench the frame into place."
- anchored = 1
- state = 1
+ if(istype(P, /obj/item/weapon/wrench))
+ playsound(loc, 'sound/items/Ratchet.ogg', 50, 1)
+ user.visible_message("[user] [anchored ? "fastens" : "unfastens"] [src].", \
+ "You start to [anchored ? "unfasten [src] from" : "fasten [src] to"] the floor...")
+ if(do_after(user, 20/P.toolspeed, target = src))
+ user << "You [anchored ? "unfasten [src] from" : "fasten [src] to"] the floor."
+ anchored = !anchored
+ return
+ if(!anchored)
+ if(istype(P, /obj/item/weapon/weldingtool))
+ if(state != EMPTY_CORE)
+ user << "The core must be empty to deconstruct it!"
return
- if(istype(P, /obj/item/weapon/weldingtool))
- var/obj/item/weapon/weldingtool/WT = P
- if(!WT.isOn())
- user << "The welder must be on for this task!"
- return
- playsound(loc, 'sound/items/Welder.ogg', 50, 1)
- user << "You start to deconstruct the frame..."
- if(do_after(user, 20/P.toolspeed, target = src))
- if(!src || !WT.remove_fuel(0, user)) return
- user << "You deconstruct the frame."
- new /obj/item/stack/sheet/plasteel( loc, 4)
- qdel(src)
+ var/obj/item/weapon/weldingtool/WT = P
+ if(!WT.isOn())
+ user << "The welder must be on for this task!"
return
- if(1)
- if(istype(P, /obj/item/weapon/wrench))
- playsound(loc, 'sound/items/Ratchet.ogg', 50, 1)
- user << "You start to unfasten the frame..."
- if(do_after(user, 20/P.toolspeed, target = src))
- user << "You unfasten the frame."
- anchored = 0
- state = 0
- return
- if(istype(P, /obj/item/weapon/circuitboard/aicore) && !circuit)
- if(!user.drop_item())
- return
- playsound(loc, 'sound/items/Deconstruct.ogg', 50, 1)
- user << "You place the circuit board inside the frame."
- icon_state = "1"
- circuit = P
- P.loc = src
- return
- if(istype(P, /obj/item/weapon/screwdriver) && circuit)
- playsound(loc, 'sound/items/Screwdriver.ogg', 50, 1)
- user << "You screw the circuit board into place."
- state = 2
- icon_state = "2"
- return
- if(istype(P, /obj/item/weapon/crowbar) && circuit)
- playsound(loc, 'sound/items/Crowbar.ogg', 50, 1)
- user << "You remove the circuit board."
- state = 1
- icon_state = "0"
- circuit.loc = loc
- circuit = null
- return
- if(2)
- if(istype(P, /obj/item/weapon/screwdriver) && circuit)
- playsound(loc, 'sound/items/Screwdriver.ogg', 50, 1)
- user << "You unfasten the circuit board."
- state = 1
- icon_state = "1"
- return
- if(istype(P, /obj/item/stack/cable_coil))
- var/obj/item/stack/cable_coil/C = P
- if(C.get_amount() >= 5)
+ playsound(loc, 'sound/items/Welder.ogg', 50, 1)
+ user << "You start to deconstruct the frame..."
+ if(do_after(user, 20/P.toolspeed, target = src) && src && state == EMPTY_CORE && WT && WT.remove_fuel(0, user))
+ user << "You deconstruct the frame."
+ deconstruct(TRUE)
+ return
+ else
+ switch(state)
+ if(EMPTY_CORE)
+ if(istype(P, /obj/item/weapon/circuitboard/aicore))
+ if(!user.drop_item())
+ return
playsound(loc, 'sound/items/Deconstruct.ogg', 50, 1)
- user << "You start to add cables to the frame..."
- if(do_after(user, 20, target = src))
- if (C.get_amount() >= 5 && state == 2)
- C.use(5)
- user << "You add cables to the frame."
- state = 3
- icon_state = "3"
- else
- user << "You need five lengths of cable to wire the AI core!"
- return
- if(3)
- if(istype(P, /obj/item/weapon/wirecutters))
- if (brain)
- user << "Get that brain out of there first!"
- else
- playsound(loc, 'sound/items/Wirecutter.ogg', 50, 1)
- user << "You remove the cables."
- state = 2
+ user << "You place the circuit board inside the frame."
+ icon_state = "1"
+ state = CIRCUIT_CORE
+ circuit = P
+ P.forceMove(src)
+ return
+ if(CIRCUIT_CORE)
+ if(istype(P, /obj/item/weapon/screwdriver))
+ playsound(loc, 'sound/items/Screwdriver.ogg', 50, 1)
+ user << "You screw the circuit board into place."
+ state = SCREWED_CORE
icon_state = "2"
- new /obj/item/stack/cable_coil(loc, 5)
- return
+ return
+ if(istype(P, /obj/item/weapon/crowbar))
+ playsound(loc, 'sound/items/Crowbar.ogg', 50, 1)
+ user << "You remove the circuit board."
+ state = EMPTY_CORE
+ icon_state = "0"
+ circuit.forceMove(loc)
+ circuit = null
+ return
+ if(SCREWED_CORE)
+ if(istype(P, /obj/item/weapon/screwdriver) && circuit)
+ playsound(loc, 'sound/items/Screwdriver.ogg', 50, 1)
+ user << "You unfasten the circuit board."
+ state = CIRCUIT_CORE
+ icon_state = "1"
+ return
+ if(istype(P, /obj/item/stack/cable_coil))
+ var/obj/item/stack/cable_coil/C = P
+ if(C.get_amount() >= 5)
+ playsound(loc, 'sound/items/Deconstruct.ogg', 50, 1)
+ user << "You start to add cables to the frame..."
+ if(do_after(user, 20, target = src) && state == SCREWED_CORE && C.use(5))
+ user << "You add cables to the frame."
+ state = CABLED_CORE
+ icon_state = "3"
+ else
+ user << "You need five lengths of cable to wire the AI core!"
+ return
+ if(CABLED_CORE)
+ if(istype(P, /obj/item/weapon/wirecutters))
+ if (brain)
+ user << "Get that brain out of there first!"
+ else
+ playsound(loc, 'sound/items/Wirecutter.ogg', 50, 1)
+ user << "You remove the cables."
+ state = SCREWED_CORE
+ icon_state = "2"
+ var/obj/item/stack/cable_coil/A = new /obj/item/stack/cable_coil( loc )
+ A.amount = 5
+ return
- if(istype(P, /obj/item/stack/sheet/rglass))
- var/obj/item/stack/sheet/rglass/G = P
- if(G.get_amount() >= 2)
- playsound(loc, 'sound/items/Deconstruct.ogg', 50, 1)
- user << "You start to put in the glass panel..."
- if(do_after(user, 20, target = src))
- if (G.get_amount() >= 2 && state == 3)
- G.use(2)
+ if(istype(P, /obj/item/stack/sheet/rglass))
+ var/obj/item/stack/sheet/rglass/G = P
+ if(G.get_amount() >= 2)
+ playsound(loc, 'sound/items/Deconstruct.ogg', 50, 1)
+ user << "You start to put in the glass panel..."
+ if(do_after(user, 20, target = src) && state == CABLED_CORE && G.use(2))
user << "You put in the glass panel."
- state = 4
+ state = GLASS_CORE
icon_state = "4"
- else
- user << "You need two sheets of reinforced glass to insert them into the AI core!"
- return
-
- if(istype(P, /obj/item/weapon/aiModule))
- var/obj/item/weapon/aiModule/module = P
- module.install(laws, user)
- return
-
- if(istype(P, /obj/item/device/mmi))
- var/obj/item/device/mmi/M = P
- if(!M.brainmob)
- user << "Sticking an empty MMI into the frame would sort of defeat the purpose!"
- return
- if(M.brainmob.stat == DEAD)
- user << "Sticking a dead brain into the frame would sort of defeat the purpose!"
+ else
+ user << "You need two sheets of reinforced glass to insert them into the AI core!"
return
- if(!M.brainmob.client)
- user << "Sticking an inactive brain into the frame would sort of defeat the purpose."
+ if(istype(P, /obj/item/weapon/aiModule))
+ var/obj/item/weapon/aiModule/module = P
+ module.install(laws, user)
return
- if((config) && (!config.allow_ai))
- user << "This MMI does not seem to fit!"
- return
+ if(istype(P, /obj/item/device/mmi) && !brain)
+ var/obj/item/device/mmi/M = P
+ if(!M.brainmob)
+ user << "Sticking an empty MMI into the frame would sort of defeat the purpose!"
+ return
+ if(M.brainmob.stat == DEAD)
+ user << "Sticking a dead brain into the frame would sort of defeat the purpose!"
+ return
- if(jobban_isbanned(M.brainmob, "AI"))
- user << "This MMI does not seem to fit!"
- return
+ if(!M.brainmob.client)
+ user << "Sticking an inactive brain into the frame would sort of defeat the purpose."
+ return
- if(M.hacked || M.clockwork)
- user << "This MMI does not seem to fit!"
- return
+ if((config) && (!config.allow_ai) || jobban_isbanned(M.brainmob, "AI") || M.hacked || M.clockwork)
+ user << "This MMI does not seem to fit!"
+ return
- if(!M.brainmob.mind)
- user << "This MMI is mindless!"
- return
+ if(!M.brainmob.mind)
+ user << "This MMI is mindless!"
+ return
- if(!user.drop_item())
- return
+ if(!user.drop_item())
+ return
- ticker.mode.remove_antag_for_borging(M.brainmob.mind)
- remove_servant_of_ratvar(M, TRUE)
- M.loc = src
- brain = M
- user << "Added a brain."
- icon_state = "3b"
- return
-
- if(istype(P, /obj/item/weapon/crowbar) && brain)
- playsound(loc, 'sound/items/Crowbar.ogg', 50, 1)
- user << "You remove the brain."
- brain.forceMove(loc)
- brain = null
- icon_state = "3"
- return
-
- if(4)
- if(istype(P, /obj/item/weapon/crowbar))
- playsound(loc, 'sound/items/Crowbar.ogg', 50, 1)
- user << "You remove the glass panel."
- state = 3
- if (brain)
+ ticker.mode.remove_antag_for_borging(M.brainmob.mind)
+ remove_servant_of_ratvar(M, TRUE)
+ M.forceMove(src)
+ brain = M
+ user << "Added a brain."
icon_state = "3b"
- else
- icon_state = "3"
- new /obj/item/stack/sheet/rglass(loc, 2)
- return
+ return
- if(istype(P, /obj/item/weapon/screwdriver))
- playsound(loc, 'sound/items/Screwdriver.ogg', 50, 1)
- user << "You connect the monitor."
- new /mob/living/silicon/ai (loc, laws, brain)
- feedback_inc("cyborg_ais_created",1)
- qdel(src)
- return
+ if(istype(P, /obj/item/weapon/crowbar) && brain)
+ playsound(loc, 'sound/items/Crowbar.ogg', 50, 1)
+ user << "You remove the brain."
+ brain.forceMove(loc)
+ brain = null
+ icon_state = "3"
+ return
+
+ if(GLASS_CORE)
+ if(istype(P, /obj/item/weapon/crowbar))
+ playsound(loc, 'sound/items/Crowbar.ogg', 50, 1)
+ user << "You remove the glass panel."
+ state = CABLED_CORE
+ if(brain)
+ icon_state = "3b"
+ else
+ icon_state = "3"
+ new /obj/item/stack/sheet/rglass(loc, 2)
+ return
+
+ if(istype(P, /obj/item/weapon/screwdriver))
+ playsound(loc, 'sound/items/Screwdriver.ogg', 50, 1)
+ user << "You connect the monitor."
+ new /mob/living/silicon/ai (loc, laws, brain)
+ feedback_inc("cyborg_ais_created",1)
+ qdel(src)
+ return
return ..()
/obj/structure/AIcore/deconstruct(disassembled = TRUE)
- if(state == 4)
+ if(state == GLASS_CORE)
new /obj/item/stack/sheet/rglass(loc, 2)
- if(state >= 3)
+ if(state >= CABLED_CORE)
new /obj/item/stack/cable_coil(loc, 5)
if(circuit)
circuit.forceMove(loc)
circuit = null
- new /obj/item/stack/sheet/plasteel( loc, 4)
+ new /obj/item/stack/sheet/plasteel(loc, 4)
qdel(src)
/obj/structure/AIcore/deactivated
@@ -219,24 +210,11 @@
icon = 'icons/mob/AI.dmi'
icon_state = "ai-empty"
anchored = 1
- state = 20//So it doesn't interact based on the above. Not really necessary.
+ state = GLASS_CORE
/obj/structure/AIcore/deactivated/attackby(obj/item/A, mob/user, params)
- if(istype(A, /obj/item/device/aicard))//Is it?
+ if(istype(A, /obj/item/device/aicard) && state == GLASS_CORE)
A.transfer_ai("INACTIVE","AICARD",src,user)
- else if(istype(A, /obj/item/weapon/wrench))
- playsound(loc, 'sound/items/Ratchet.ogg', 50, 1)
- user.visible_message("[user] [anchored ? "fastens" : "unfastens"] [src].", \
- "You start to [anchored ? "fasten [src] to" : "unfasten [src] from"] the floor...")
- switch(anchored)
- if(0)
- if(do_after(user, 20, target = src))
- user << "You fasten the core into place."
- anchored = 1
- if(1)
- if(do_after(user, 20, target = src))
- user << "You unfasten the core."
- anchored = 0
else
return ..()
@@ -248,7 +226,7 @@ That prevents a few funky behaviors.
//The type of interaction, the player performing the operation, the AI itself, and the card object, if any.
-atom/proc/transfer_ai(interaction, mob/user, mob/living/silicon/ai/AI, obj/item/device/aicard/card)
+/atom/proc/transfer_ai(interaction, mob/user, mob/living/silicon/ai/AI, obj/item/device/aicard/card)
if(istype(card))
if(card.flush)
user << "ERROR: AI flush is in progress, cannot execute transfer protocol."
diff --git a/code/game/turfs/closed.dm b/code/game/turfs/closed.dm
index e22fb4fa86e..f1498e119aa 100644
--- a/code/game/turfs/closed.dm
+++ b/code/game/turfs/closed.dm
@@ -89,3 +89,11 @@
desc = "A wall layered with impenetrable sheets of paper."
icon = 'icons/turf/walls.dmi'
icon_state = "paperwall"
+
+/turf/closed/indestructible/necropolis
+ name = "necropolis wall"
+ desc = "A seemingly impenetrable wall."
+ icon = 'icons/turf/walls.dmi'
+ icon_state = "necro"
+ explosion_block = 50
+ baseturf = /turf/closed/indestructible/necropolis
diff --git a/code/game/turfs/open.dm b/code/game/turfs/open.dm
index 10851dcd9dd..0a0f55b71f8 100644
--- a/code/game/turfs/open.dm
+++ b/code/game/turfs/open.dm
@@ -18,6 +18,19 @@
if(istype(AM))
playsound(src,sound,50,1)
+/turf/open/indestructible/necropolis
+ name = "necropolis floor"
+ desc = "It's regarding you suspiciously."
+ icon = 'icons/turf/floors.dmi'
+ icon_state = "necro1"
+ baseturf = /turf/open/indestructible/necropolis
+
+/turf/open/indestructible/necropolis/New()
+ ..()
+ if(prob(12))
+ icon_state = "necro[rand(2,3)]"
+
+
/turf/open/Initalize_Atmos(times_fired)
excited = 0
update_visuals()
diff --git a/code/game/turfs/simulated/chasm.dm b/code/game/turfs/simulated/chasm.dm
new file mode 100644
index 00000000000..d633a040611
--- /dev/null
+++ b/code/game/turfs/simulated/chasm.dm
@@ -0,0 +1,117 @@
+
+//////////////CHASM//////////////////
+
+/turf/open/chasm
+ name = "chasm"
+ desc = "Watch your step."
+ baseturf = /turf/open/chasm
+ smooth = SMOOTH_TRUE | SMOOTH_BORDER
+ icon = 'icons/turf/floors/Chasms.dmi'
+ icon_state = "smooth"
+ var/drop_x = 1
+ var/drop_y = 1
+ var/drop_z = 1
+
+/turf/open/chasm/Entered(atom/movable/AM)
+ START_PROCESSING(SSobj, src)
+ drop_stuff(AM)
+
+/turf/open/chasm/process()
+ if(!drop_stuff())
+ STOP_PROCESSING(SSobj, src)
+
+/turf/open/chasm/proc/drop_stuff(AM)
+ . = 0
+ var/thing_to_check = src
+ if(AM)
+ thing_to_check = list(AM)
+ for(var/thing in thing_to_check)
+ if(droppable(thing))
+ . = 1
+ addtimer(src, "drop", 0, FALSE, thing)
+
+/turf/open/chasm/proc/droppable(atom/movable/AM)
+ if(!isliving(AM) && !isobj(AM))
+ return 0
+ if(istype(AM, /obj/singularity) || istype(AM, /obj/item/projectile) || AM.throwing)
+ return 0
+ if(istype(AM, /obj/effect/portal))
+ //Portals aren't affected by gravity. Probably.
+ return 0
+ //Flies right over the chasm
+ if(isanimal(AM))
+ var/mob/living/simple_animal/SA = AM
+ if(SA.flying)
+ return 0
+ if(ishuman(AM))
+ var/mob/living/carbon/human/H = AM
+ if(istype(H.belt, /obj/item/device/wormhole_jaunter))
+ var/obj/item/device/wormhole_jaunter/J = H.belt
+ //To freak out any bystanders
+ visible_message("[H] falls into [src]!")
+ J.chasm_react(H)
+ return 0
+ if(H.dna && H.dna.species && (FLYING in H.dna.species.specflags))
+ return 0
+ return 1
+
+/turf/open/chasm/proc/drop(atom/movable/AM)
+ //Make sure the item is still there after our sleep
+ if(!AM || qdeleted(AM))
+ return
+
+ var/turf/T = locate(drop_x, drop_y, drop_z)
+ if(T)
+ AM.visible_message("[AM] falls into [src]!", "GAH! Ah... where are you?")
+ T.visible_message("[AM] falls from above!")
+ AM.forceMove(T)
+ if(isliving(AM))
+ var/mob/living/L = AM
+ L.Weaken(5)
+ L.adjustBruteLoss(30)
+
+
+/turf/open/chasm/straight_down/New()
+ ..()
+ drop_x = x
+ drop_y = y
+ if(z+1 <= world.maxz)
+ drop_z = z+1
+
+
+/turf/open/chasm/straight_down/lava_land_surface
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ planetary_atmos = TRUE
+ baseturf = /turf/open/chasm/straight_down/lava_land_surface
+
+/turf/open/chasm/straight_down/lava_land_surface/drop(atom/movable/AM)
+ //Make sure the item is still there after our sleep
+ if(!AM || qdeleted(AM))
+ return
+ AM.visible_message("[AM] falls into [src]!", "You stumble and stare into an abyss before you. It stares back, and you fall \
+ into the enveloping dark.")
+ if(isliving(AM))
+ var/mob/living/L = AM
+ L.notransform = TRUE
+ L.Stun(10)
+ L.resting = TRUE
+ animate(AM, transform = matrix() - matrix(), alpha = 0, color = rgb(0, 0, 0), time = 10)
+ for(var/i in 1 to 5)
+ //Make sure the item is still there after our sleep
+ if(!AM || qdeleted(AM))
+ return
+ AM.pixel_y--
+ sleep(2)
+
+ //Make sure the item is still there after our sleep
+ if(!AM || qdeleted(AM))
+ return
+
+ if(iscyborg(AM))
+ var/mob/living/silicon/robot/S = AM
+ qdel(S.mmi)
+
+ qdel(AM)
+
+/turf/open/chasm/straight_down/lava_land_surface/normal_air
+ initial_gas_mix = "o2=22;n2=82;TEMP=293.15"
diff --git a/code/game/turfs/simulated/dirtystation.dm b/code/game/turfs/simulated/dirtystation.dm
index f3428beef4a..88d0b071812 100644
--- a/code/game/turfs/simulated/dirtystation.dm
+++ b/code/game/turfs/simulated/dirtystation.dm
@@ -95,7 +95,7 @@
if(prob(75)) //low dirt - 1/60
return
- if(istype(A, /area/turret_protected) || istype(A, /area/security)) //chance of incident
+ if(istype(A, /area/ai_monitored/turret_protected) || istype(A, /area/security)) //chance of incident
if(prob(20))
if(prob(5))
new /obj/effect/decal/cleanable/blood/gibs/old(src)
diff --git a/code/game/turfs/simulated/floor/mineral_floor.dm b/code/game/turfs/simulated/floor/mineral_floor.dm
index 70c49521b35..98b11b30cb1 100644
--- a/code/game/turfs/simulated/floor/mineral_floor.dm
+++ b/code/game/turfs/simulated/floor/mineral_floor.dm
@@ -218,14 +218,3 @@
/turf/open/floor/mineral/abductor/make_plating()
return ChangeTurf(/turf/open/floor/plating/abductor2)
-
-
-/turf/open/floor/plating/abductor2
- name = "alien plating"
- icon_state = "alienplating"
-
-/turf/open/floor/plating/abductor2/break_tile()
- return //unbreakable
-
-/turf/open/floor/plating/abductor2/burn_tile()
- return //unburnable
\ No newline at end of file
diff --git a/code/game/turfs/simulated/floor/misc_floor.dm b/code/game/turfs/simulated/floor/misc_floor.dm
index a1d8ea6dfdf..768c05efd59 100644
--- a/code/game/turfs/simulated/floor/misc_floor.dm
+++ b/code/game/turfs/simulated/floor/misc_floor.dm
@@ -26,82 +26,23 @@
icon_state = "gcircuit"
floor_tile = /obj/item/stack/tile/plasteel
-/turf/open/floor/plating/beach
- name = "beach"
- icon = 'icons/misc/beach.dmi'
- flags = NONE
-/turf/open/floor/plating/beach/ex_act(severity, target)
- contents_explosion(severity, target)
+/turf/open/floor/pod
+ name = "pod floor"
+ icon_state = "podfloor"
+ icon_regular_floor = "podfloor"
+ floor_tile = /obj/item/stack/tile/pod
-/turf/open/floor/plating/beach/sand
- name = "sand"
- desc = "Surf's up."
- icon_state = "sand"
- baseturf = /turf/open/floor/plating/beach/sand
+/turf/open/floor/pod/light
+ icon_state = "podfloor_light"
+ icon_regular_floor = "podfloor_light"
+ floor_tile = /obj/item/stack/tile/pod/light
-/turf/open/floor/plating/beach/coastline_t
- name = "coastline"
- desc = "Tide's high tonight. Charge your batons."
- icon_state = "sandwater_t"
- baseturf = /turf/open/floor/plating/beach/coastline_t
+/turf/open/floor/pod/dark
+ icon_state = "podfloor_dark"
+ icon_regular_floor = "podfloor_dark"
+ floor_tile = /obj/item/stack/tile/pod/dark
-/turf/open/floor/plating/beach/coastline_b
- name = "coastline"
- icon_state = "sandwater_b"
- baseturf = /turf/open/floor/plating/beach/coastline_b
-
-/turf/open/floor/plating/beach/water
- name = "water"
- desc = "You get the feeling that nobody's bothered to actually make this water functional..."
- icon_state = "water"
- baseturf = /turf/open/floor/plating/beach/water
-
-/turf/open/floor/plating/ironsand
- name = "iron sand"
- desc = "Like sand, but more metal."
-
-/turf/open/floor/plating/ironsand/New()
- ..()
- icon_state = "ironsand[rand(1,15)]"
-
-/turf/open/floor/plating/ironsand/burn_tile()
- return
-
-/turf/open/floor/plating/ice
- name = "ice sheet"
- desc = "A sheet of solid ice. Looks slippery."
- icon = 'icons/turf/snow.dmi'
- icon_state = "ice"
- temperature = 180
- baseturf = /turf/open/floor/plating/ice
- slowdown = 1
- wet = TURF_WET_PERMAFROST
-
-/turf/open/floor/plating/ice/colder
- temperature = 140
-
-/turf/open/floor/plating/ice/temperate
- temperature = 255.37
-
-/turf/open/floor/plating/ice/break_tile()
- return
-
-/turf/open/floor/plating/ice/burn_tile()
- return
-
-/turf/open/floor/plating/snowed
- name = "snowed-over plating"
- desc = "A section of plating covered in a light layer of snow."
- icon = 'icons/turf/snow.dmi'
- icon_state = "snowplating"
- temperature = 180
-
-/turf/open/floor/plating/snowed/colder
- temperature = 140
-
-/turf/open/floor/plating/snowed/temperatre
- temperature = 255.37
/turf/open/floor/noslip
name = "high-traction floor"
@@ -203,3 +144,18 @@
var/previouscolor = color
color = "#960000"
animate(src, color = previouscolor, time = 8)
+
+
+/turf/open/floor/bluespace
+ slowdown = -1
+ icon_state = "bluespace"
+ desc = "Through a series of micro-teleports these tiles let people move at incredible speeds"
+ floor_tile = /obj/item/stack/tile/bluespace
+
+
+/turf/open/floor/sepia
+ slowdown = 2
+ icon_state = "sepia"
+ desc = "Time seems to flow very slowly around these tiles"
+ floor_tile = /obj/item/stack/tile/sepia
+
diff --git a/code/game/turfs/simulated/floor/plasteel_floor.dm b/code/game/turfs/simulated/floor/plasteel_floor.dm
index 06ba6397f7b..793661bc795 100644
--- a/code/game/turfs/simulated/floor/plasteel_floor.dm
+++ b/code/game/turfs/simulated/floor/plasteel_floor.dm
@@ -11,6 +11,9 @@
icon_state = icon_regular_floor
+/turf/open/floor/plasteel/airless
+ initial_gas_mix = "TEMP=2.7"
+
/turf/open/floor/plasteel/black
icon_state = "dark"
@@ -302,6 +305,18 @@
/turf/open/floor/plasteel/shuttle/purple
icon_state = "shuttlefloor5"
+/turf/open/floor/plasteel/airless/shuttle
+ icon_state = "shuttlefloor"
+/turf/open/floor/plasteel/airless/shuttle/red
+ name = "Brig floor"
+ icon_state = "shuttlefloor4"
+/turf/open/floor/plasteel/airless/shuttle/yellow
+ icon_state = "shuttlefloor2"
+/turf/open/floor/plasteel/airless/shuttle/white
+ icon_state = "shuttlefloor3"
+/turf/open/floor/plasteel/airless/shuttle/purple
+ icon_state = "shuttlefloor5"
+
/turf/open/floor/plasteel/asteroid
icon_state = "asteroidfloor"
@@ -441,7 +456,9 @@
/turf/open/floor/plasteel/sandeffect
icon_state = "sandeffect"
+
/turf/open/floor/plasteel/sandeffect/warning
icon_state = "warningsandeffect"
+
/turf/open/floor/plasteel/sandeffect/warning/corner
- icon_state = "warningsandeffectcorners"
\ No newline at end of file
+ icon_state = "warningsandeffectcorners"
diff --git a/code/game/turfs/simulated/floor/plating.dm b/code/game/turfs/simulated/floor/plating.dm
index a5d13a2f3d5..4d97a997bbf 100644
--- a/code/game/turfs/simulated/floor/plating.dm
+++ b/code/game/turfs/simulated/floor/plating.dm
@@ -67,264 +67,3 @@
icon_state = icon_plating
burnt = 0
broken = 0
-
-/turf/open/floor/plating/airless
- icon_state = "plating"
- initial_gas_mix = "TEMP=2.7"
-
-/turf/open/floor/engine
- name = "reinforced floor"
- icon_state = "engine"
- thermal_conductivity = 0.025
- heat_capacity = INFINITY
- floor_tile = /obj/item/stack/rods
-
-/turf/open/floor/engine/airless
- initial_gas_mix = "TEMP=2.7"
-
-/turf/open/floor/engine/break_tile()
- return //unbreakable
-
-/turf/open/floor/engine/burn_tile()
- return //unburnable
-
-/turf/open/floor/engine/make_plating(force = 0)
- if(force)
- ..()
- return //unplateable
-
-/turf/open/floor/engine/attackby(obj/item/weapon/C, mob/user, params)
- if(!C || !user)
- return
- if(istype(C, /obj/item/weapon/wrench))
- user << "You begin removing rods..."
- playsound(src, 'sound/items/Ratchet.ogg', 80, 1)
- if(do_after(user, 30/C.toolspeed, target = src))
- if(!istype(src, /turf/open/floor/engine))
- return
- new /obj/item/stack/rods(src, 2)
- ChangeTurf(/turf/open/floor/plating)
- return
-
-
-/turf/open/floor/engine/ex_act(severity,target)
- switch(severity)
- if(1)
- if(prob(80))
- ReplaceWithLattice()
- else if(prob(50))
- qdel(src)
- else
- make_plating(1)
- if(2)
- if(prob(50))
- make_plating(1)
-
-//air filled floors; used in atmos pressure chambers
-
-/turf/open/floor/engine/n2o
- name = "n2o floor"
- initial_gas_mix = "n2o=6000;TEMP=293.15"
-
-/turf/open/floor/engine/co2
- name = "co2 floor"
- initial_gas_mix = "co2=50000;TEMP=293.15"
-
-/turf/open/floor/engine/plasma
- name = "plasma floor"
- initial_gas_mix = "plasma=70000;TEMP=293.15"
-
-/turf/open/floor/engine/o2
- name = "o2 floor"
- initial_gas_mix = "o2=100000;TEMP=293.15"
-
-/turf/open/floor/engine/n2
- name = "n2 floor"
- initial_gas_mix = "n2=100000;TEMP=293.15"
-
-/turf/open/floor/engine/air
- name = "air floor"
- initial_gas_mix = "o2=2644;n2=10580;TEMP=293.15"
-
-
-
-/turf/open/floor/engine/cult
- name = "engraved floor"
- icon_state = "plating"
- var/obj/effect/clockwork/overlay/floor/bloodcult/realappearence
-
-/turf/open/floor/engine/cult/New()
- ..()
- PoolOrNew(/obj/effect/overlay/temp/cult/turf/floor, src)
- realappearence = PoolOrNew(/obj/effect/clockwork/overlay/floor/bloodcult, src)
- realappearence.linked = src
-
-/obj/effect/clockwork/overlay/floor/bloodcult
- icon_state = "cult"
-
-/turf/open/floor/engine/cult/Destroy()
- be_removed()
- return ..()
-
-/turf/open/floor/engine/cult/ChangeTurf(path, defer_change = FALSE)
- if(path != type)
- be_removed()
- return ..()
-
-/turf/open/floor/engine/cult/proc/be_removed()
- qdel(realappearence)
- realappearence = null
-
-/turf/open/floor/engine/cult/narsie_act()
- return
-
-/turf/open/floor/engine/cult/ratvar_act()
- ..()
- if(istype(src, /turf/open/floor/engine/cult)) //if we haven't changed type
- var/previouscolor = color
- color = "#FAE48C"
- animate(src, color = previouscolor, time = 8)
-
-/turf/open/floor/engine/singularity_pull(S, current_size)
- if(current_size >= STAGE_FIVE)
- if(floor_tile)
- if(prob(30))
- PoolOrNew(floor_tile, src)
- make_plating()
- else if(prob(30))
- ReplaceWithLattice()
-
-/turf/open/floor/engine/cult/airless
- initial_gas_mix = "TEMP=2.7"
-
-/turf/open/floor/engine/vacuum
- name = "vacuum floor"
- icon_state = "engine"
- initial_gas_mix = "TEMP=2.7"
-
-/turf/open/floor/plasteel/airless
- initial_gas_mix = "TEMP=2.7"
-
-// ONE DAY WE WILL HAVE SUBTYPES
-/turf/open/floor/plasteel/airless/shuttle
- icon_state = "shuttlefloor"
-/turf/open/floor/plasteel/airless/shuttle/red
- name = "Brig floor"
- icon_state = "shuttlefloor4"
-/turf/open/floor/plasteel/airless/shuttle/yellow
- icon_state = "shuttlefloor2"
-/turf/open/floor/plasteel/airless/shuttle/white
- icon_state = "shuttlefloor3"
-/turf/open/floor/plasteel/airless/shuttle/purple
- icon_state = "shuttlefloor5"
-
-/turf/open/floor/plating/abductor
- name = "alien floor"
- icon_state = "alienpod1"
-
-/turf/open/floor/plating/abductor/New()
- ..()
- icon_state = "alienpod[rand(1,9)]"
-
-///LAVA
-
-/turf/open/floor/plating/lava
- name = "lava"
- icon_state = "lava"
- baseturf = /turf/open/floor/plating/lava //lava all the way down
- slowdown = 2
- luminosity = 1
-
-/turf/open/floor/plating/lava/ex_act()
- return
-
-/turf/open/floor/plating/lava/airless
- initial_gas_mix = "TEMP=2.7"
-
-/turf/open/floor/plating/lava/Entered(atom/movable/AM)
- if(burn_stuff(AM))
- START_PROCESSING(SSobj, src)
-
-/turf/open/floor/plating/lava/hitby(atom/movable/AM)
- if(burn_stuff(AM))
- START_PROCESSING(SSobj, src)
-
-/turf/open/floor/plating/lava/process()
- if(!burn_stuff())
- STOP_PROCESSING(SSobj, src)
-
-/turf/open/floor/plating/lava/make_plating()
- return
-
-/turf/open/floor/plating/lava/GetHeatCapacity()
- . = 700000
-
-/turf/open/floor/plating/lava/GetTemperature()
- . = 5000
-
-/turf/open/floor/plating/lava/TakeTemperature(temp)
-
-/turf/open/floor/plating/lava/proc/burn_stuff(AM)
- . = 0
- var/thing_to_check = src
- if (AM)
- thing_to_check = list(AM)
- for(var/thing in thing_to_check)
- if(isobj(thing))
- var/obj/O = thing
- if((O.resistance_flags & (LAVA_PROOF|ON_FIRE|INDESTRUCTIBLE)) || O.throwing)
- continue
- . = 1
- if(!(O.resistance_flags & FLAMMABLE))
- O.resistance_flags |= FLAMMABLE //Even fireproof things burn up in lava
- O.resistance_flags = ~FIRE_PROOF
- if(O.armor["fire"] > 50) //obj with 100% fire armor still get slowly burned away.
- O.armor["fire"] = 50
- O.fire_act(10000, 1000)
-
-
- else if (isliving(thing))
- . = 1
- var/mob/living/L = thing
- if("lava" in L.weather_immunities)
- continue
- if(L.buckled)
- if(isobj(L.buckled))
- var/obj/O = L.buckled
- if(O.resistance_flags & LAVA_PROOF)
- continue
- if(isliving(L.buckled)) //Goliath riding
- var/mob/living/live = L.buckled
- if("lava" in live.weather_immunities)
- continue
-
- L.adjustFireLoss(20)
- if(L) //mobs turning into object corpses could get deleted here.
- L.adjust_fire_stacks(20)
- L.IgniteMob()
-
-
-/turf/open/floor/plating/lava/attackby(obj/item/C, mob/user, params) //Lava isn't a good foundation to build on
- return
-
-/turf/open/floor/plating/lava/break_tile()
- return
-
-/turf/open/floor/plating/lava/burn_tile()
- return
-
-/turf/open/floor/plating/lava/smooth
- name = "lava"
- baseturf = /turf/open/floor/plating/lava/smooth
- icon = 'icons/turf/floors/lava.dmi'
- icon_state = "unsmooth"
- smooth = SMOOTH_MORE | SMOOTH_BORDER
- canSmoothWith = list(/turf/open/floor/plating/lava/smooth)
-
-/turf/open/floor/plating/lava/smooth/airless
- initial_gas_mix = "TEMP=2.7"
-
-/turf/open/floor/plating/astplate
- icon_state = "asteroidplating"
-/turf/open/floor/plating/airless/astplate
- icon_state = "asteroidplating"
diff --git a/code/game/turfs/simulated/floor/plating/asteroid.dm b/code/game/turfs/simulated/floor/plating/asteroid.dm
new file mode 100644
index 00000000000..3bbca91dcd8
--- /dev/null
+++ b/code/game/turfs/simulated/floor/plating/asteroid.dm
@@ -0,0 +1,306 @@
+
+
+
+/**********************Asteroid**************************/
+
+/turf/open/floor/plating/asteroid //floor piece
+ name = "asteroid sand"
+ baseturf = /turf/open/floor/plating/asteroid
+ icon = 'icons/turf/floors.dmi'
+ icon_state = "asteroid"
+ icon_plating = "asteroid"
+ var/environment_type = "asteroid"
+ var/turf_type = /turf/open/floor/plating/asteroid //Because caves do whacky shit to revert to normal
+ var/dug = 0 //0 = has not yet been dug, 1 = has already been dug
+ var/sand_type = /obj/item/weapon/ore/glass
+ var/floor_variance = 20 //probability floor has a different icon state
+
+/turf/open/floor/plating/asteroid/New()
+ var/proper_name = name
+ ..()
+ name = proper_name
+ if(prob(floor_variance))
+ icon_state = "[environment_type][rand(0,12)]"
+
+/turf/open/floor/plating/asteroid/burn_tile()
+ return
+
+/turf/open/floor/plating/asteroid/ex_act(severity, target)
+ contents_explosion(severity, target)
+ switch(severity)
+ if(3)
+ return
+ if(2)
+ if(prob(20))
+ src.gets_dug()
+ if(1)
+ src.gets_dug()
+
+/turf/open/floor/plating/asteroid/attackby(obj/item/weapon/W, mob/user, params)
+ //note that this proc does not call ..()
+ if(!W || !user)
+ return 0
+ var/digging_speed = 0
+ if (istype(W, /obj/item/weapon/shovel))
+ var/obj/item/weapon/shovel/S = W
+ digging_speed = S.digspeed
+ else if (istype(W, /obj/item/weapon/pickaxe))
+ var/obj/item/weapon/pickaxe/P = W
+ digging_speed = P.digspeed
+ if (digging_speed)
+ var/turf/T = user.loc
+ if(!isturf(T))
+ return
+
+ if (dug)
+ user << "This area has already been dug!"
+ return
+
+ user << "You start digging..."
+ playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1)
+
+ if(do_after(user, digging_speed, target = src))
+ if(istype(src, /turf/open/floor/plating/asteroid))
+ user << "You dig a hole."
+ gets_dug()
+ feedback_add_details("pick_used_mining","[W.type]")
+
+ if(istype(W,/obj/item/weapon/storage/bag/ore))
+ var/obj/item/weapon/storage/bag/ore/S = W
+ if(S.collection_mode == 1)
+ for(var/obj/item/weapon/ore/O in src.contents)
+ O.attackby(W,user)
+ return
+
+ if(istype(W, /obj/item/stack/tile))
+ var/obj/item/stack/tile/Z = W
+ if(!Z.use(1))
+ return
+ var/turf/open/floor/T = ChangeTurf(Z.turf_type)
+ if(istype(Z,/obj/item/stack/tile/light)) //TODO: get rid of this ugly check somehow
+ var/obj/item/stack/tile/light/L = Z
+ var/turf/open/floor/light/F = T
+ F.state = L.state
+ playsound(src, 'sound/weapons/Genhit.ogg', 50, 1)
+
+/turf/open/floor/plating/asteroid/proc/gets_dug()
+ if(dug)
+ return
+ for(var/i in 1 to 5)
+ new sand_type(src)
+ dug = 1
+ icon_plating = "[environment_type]_dug"
+ icon_state = "[environment_type]_dug"
+ slowdown = 0
+ return
+
+/turf/open/floor/plating/asteroid/singularity_act()
+ return
+
+/turf/open/floor/plating/asteroid/singularity_pull(S, current_size)
+ return
+
+
+/turf/open/floor/plating/asteroid/basalt
+ name = "volcanic floor"
+ baseturf = /turf/open/floor/plating/asteroid/basalt
+ icon = 'icons/turf/floors.dmi'
+ icon_state = "basalt"
+ icon_plating = "basalt"
+ environment_type = "basalt"
+ sand_type = /obj/item/weapon/ore/glass/basalt
+ floor_variance = 15
+
+/turf/open/floor/plating/asteroid/basalt/lava //lava underneath
+ baseturf = /turf/open/floor/plating/lava/smooth
+
+/turf/open/floor/plating/asteroid/basalt/airless
+ initial_gas_mix = "TEMP=2.7"
+
+/turf/open/floor/plating/asteroid/basalt/New()
+ ..()
+ switch(icon_state)
+ if("basalt1", "basalt2", "basalt3") //5 and 9 are too dark to glow and make the amount of glows in tunnels too high
+ SetLuminosity(1, 1) //this is basically a 3.75% chance that a basalt floor glows
+
+/turf/open/floor/plating/asteroid/basalt/gets_dug()
+ if(!dug)
+ SetLuminosity(0)
+ ..()
+
+
+///////Surface. The surface is warm, but survivable without a suit. Internals are required. The floors break to chasms, which drop you into the underground.
+
+/turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ planetary_atmos = TRUE
+ baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface
+
+
+
+
+/turf/open/floor/plating/asteroid/airless
+ initial_gas_mix = "TEMP=2.7"
+ turf_type = /turf/open/floor/plating/asteroid/airless
+
+
+
+
+/turf/open/floor/plating/asteroid/airless/cave
+ var/length = 100
+ var/mob_spawn_list = list(/mob/living/simple_animal/hostile/asteroid/goldgrub = 1, /mob/living/simple_animal/hostile/asteroid/goliath = 5, /mob/living/simple_animal/hostile/asteroid/basilisk = 4, /mob/living/simple_animal/hostile/asteroid/hivelord = 3)
+ var/flora_spawn_list = list(/obj/structure/flora/ash/leaf_shroom = 2 , /obj/structure/flora/ash/cap_shroom = 2 , /obj/structure/flora/ash/stem_shroom = 2 , /obj/structure/flora/ash/cacti = 1, /obj/structure/flora/ash/tall_shroom = 2)
+ var/sanity = 1
+ var/forward_cave_dir = 1
+ var/backward_cave_dir = 2
+ var/going_backwards = TRUE
+ var/has_data = FALSE
+ var/data_having_type = /turf/open/floor/plating/asteroid/airless/cave/has_data
+ turf_type = /turf/open/floor/plating/asteroid/airless
+
+/turf/open/floor/plating/asteroid/airless/cave/has_data //subtype for producing a tunnel with given data
+ has_data = TRUE
+
+/turf/open/floor/plating/asteroid/airless/cave/volcanic
+ mob_spawn_list = list(/mob/living/simple_animal/hostile/asteroid/goldgrub = 10, /mob/living/simple_animal/hostile/asteroid/goliath/beast = 50, /mob/living/simple_animal/hostile/asteroid/basilisk/watcher = 40, /mob/living/simple_animal/hostile/asteroid/hivelord/legion = 30,
+ /mob/living/simple_animal/hostile/spawner/lavaland = 2, /mob/living/simple_animal/hostile/spawner/lavaland/goliath = 3, /mob/living/simple_animal/hostile/spawner/lavaland/legion = 3, \
+ /mob/living/simple_animal/hostile/megafauna/dragon = 2, /mob/living/simple_animal/hostile/megafauna/bubblegum = 2, /mob/living/simple_animal/hostile/megafauna/colossus = 2)
+
+ data_having_type = /turf/open/floor/plating/asteroid/airless/cave/volcanic/has_data
+ turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+
+/turf/open/floor/plating/asteroid/airless/cave/volcanic/has_data //subtype for producing a tunnel with given data
+ has_data = TRUE
+
+/turf/open/floor/plating/asteroid/airless/cave/New(loc)
+ if(!has_data)
+ produce_tunnel_from_data()
+ ..()
+
+/turf/open/floor/plating/asteroid/airless/cave/proc/get_cave_data(set_length, exclude_dir = -1)
+ // If set_length (arg1) isn't defined, get a random length; otherwise assign our length to the length arg.
+ if(!set_length)
+ length = rand(25, 50)
+ else
+ length = set_length
+
+ // Get our directiosn
+ forward_cave_dir = pick(alldirs - exclude_dir)
+ // Get the opposite direction of our facing direction
+ backward_cave_dir = angle2dir(dir2angle(forward_cave_dir) + 180)
+
+/turf/open/floor/plating/asteroid/airless/cave/proc/produce_tunnel_from_data(tunnel_length, excluded_dir = -1)
+ get_cave_data(tunnel_length, excluded_dir)
+ // Make our tunnels
+ make_tunnel(forward_cave_dir)
+ if(going_backwards)
+ make_tunnel(backward_cave_dir)
+ // Kill ourselves by replacing ourselves with a normal floor.
+ SpawnFloor(src)
+
+/turf/open/floor/plating/asteroid/airless/cave/proc/make_tunnel(dir)
+ var/turf/closed/mineral/tunnel = src
+ var/next_angle = pick(45, -45)
+
+ for(var/i = 0; i < length; i++)
+ if(!sanity)
+ break
+
+ var/list/L = list(45)
+ if(IsOdd(dir2angle(dir))) // We're going at an angle and we want thick angled tunnels.
+ L += -45
+
+ // Expand the edges of our tunnel
+ for(var/edge_angle in L)
+ var/turf/closed/mineral/edge = get_step(tunnel, angle2dir(dir2angle(dir) + edge_angle))
+ if(istype(edge))
+ SpawnFloor(edge)
+
+ if(!sanity)
+ break
+
+ // Move our tunnel forward
+ tunnel = get_step(tunnel, dir)
+
+ if(istype(tunnel))
+ // Small chance to have forks in our tunnel; otherwise dig our tunnel.
+ if(i > 3 && prob(20))
+ var/turf/open/floor/plating/asteroid/airless/cave/C = tunnel.ChangeTurf(data_having_type)
+ C.going_backwards = FALSE
+ C.produce_tunnel_from_data(rand(10, 15), dir)
+ else
+ SpawnFloor(tunnel)
+ else //if(!istype(tunnel, src.parent)) // We hit space/normal/wall, stop our tunnel.
+ break
+
+ // Chance to change our direction left or right.
+ if(i > 2 && prob(33))
+ // We can't go a full loop though
+ next_angle = -next_angle
+ setDir(angle2dir(dir2angle(dir) )+ next_angle)
+
+
+/turf/open/floor/plating/asteroid/airless/cave/proc/SpawnFloor(turf/T)
+ for(var/S in RANGE_TURFS(1, src))
+ var/turf/NT = S
+ if(!NT || isspaceturf(NT) || istype(NT.loc, /area/mine/explored) || istype(NT.loc, /area/lavaland/surface/outdoors/explored))
+ sanity = 0
+ break
+ if(!sanity)
+ return
+ SpawnFlora(T)
+
+ SpawnMonster(T)
+ T.ChangeTurf(turf_type)
+
+/turf/open/floor/plating/asteroid/airless/cave/proc/SpawnMonster(turf/T)
+ if(prob(30))
+ if(istype(loc, /area/mine/explored) || istype(loc, /area/lavaland/surface/outdoors/explored))
+ return
+ for(var/mob/living/simple_animal/hostile/H in urange(12,T)) //prevents mob clumps
+ if(istype(H, /mob/living/simple_animal/hostile/asteroid))
+ return
+ if(ismegafauna(H) && get_dist(src, H) <= 7)
+ return
+ if(istype(H, /mob/living/simple_animal/hostile/spawner/lavaland) && get_dist(src, H) <= 3) //prevents tendrils spawning in collapse range
+ return
+ var/randumb = pickweight(mob_spawn_list)
+ new randumb(T)
+ return
+
+/turf/open/floor/plating/asteroid/airless/cave/proc/SpawnFlora(turf/T)
+ if(prob(12))
+ if(istype(loc, /area/mine/explored) || istype(loc, /area/lavaland/surface/outdoors/explored))
+ return
+ var/randumb = pickweight(flora_spawn_list)
+ for(var/obj/structure/flora/ash/F in range(4, T)) //Allows for growing patches, but not ridiculous stacks of flora
+ if(!istype(F, randumb))
+ return
+ new randumb(T)
+
+
+
+/turf/open/floor/plating/asteroid/snow
+ name = "snow"
+ desc = "Looks cold."
+ icon = 'icons/turf/snow.dmi'
+ baseturf = /turf/open/floor/plating/asteroid/snow
+ icon_state = "snow"
+ icon_plating = "snow"
+ initial_gas_mix = "TEMP=180"
+ slowdown = 2
+ environment_type = "snow"
+ sand_type = /obj/item/stack/sheet/mineral/snow
+
+/turf/open/floor/plating/asteroid/snow/airless
+ initial_gas_mix = "TEMP=2.7"
+
+/turf/open/floor/plating/asteroid/snow/temperatre
+ initial_gas_mix = "TEMP=255.37"
+
+/turf/open/floor/plating/asteroid/snow/atmosphere
+ initial_gas_mix = "o2=22;n2=82;TEMP=180"
+
+
+
diff --git a/code/game/turfs/simulated/floor/plating/lava.dm b/code/game/turfs/simulated/floor/plating/lava.dm
new file mode 100644
index 00000000000..fb88aa21225
--- /dev/null
+++ b/code/game/turfs/simulated/floor/plating/lava.dm
@@ -0,0 +1,103 @@
+///LAVA
+
+/turf/open/floor/plating/lava
+ name = "lava"
+ icon_state = "lava"
+ baseturf = /turf/open/floor/plating/lava //lava all the way down
+ slowdown = 2
+ luminosity = 1
+
+/turf/open/floor/plating/lava/ex_act()
+ return
+
+/turf/open/floor/plating/lava/airless
+ initial_gas_mix = "TEMP=2.7"
+
+/turf/open/floor/plating/lava/Entered(atom/movable/AM)
+ if(burn_stuff(AM))
+ START_PROCESSING(SSobj, src)
+
+/turf/open/floor/plating/lava/hitby(atom/movable/AM)
+ if(burn_stuff(AM))
+ START_PROCESSING(SSobj, src)
+
+/turf/open/floor/plating/lava/process()
+ if(!burn_stuff())
+ STOP_PROCESSING(SSobj, src)
+
+/turf/open/floor/plating/lava/make_plating()
+ return
+
+/turf/open/floor/plating/lava/GetHeatCapacity()
+ . = 700000
+
+/turf/open/floor/plating/lava/GetTemperature()
+ . = 5000
+
+/turf/open/floor/plating/lava/TakeTemperature(temp)
+
+/turf/open/floor/plating/lava/proc/burn_stuff(AM)
+ . = 0
+ var/thing_to_check = src
+ if (AM)
+ thing_to_check = list(AM)
+ for(var/thing in thing_to_check)
+ if(isobj(thing))
+ var/obj/O = thing
+ if((O.resistance_flags & (LAVA_PROOF|ON_FIRE|INDESTRUCTIBLE)) || O.throwing)
+ continue
+ . = 1
+ if(!(O.resistance_flags & FLAMMABLE))
+ O.resistance_flags |= FLAMMABLE //Even fireproof things burn up in lava
+ O.resistance_flags = ~FIRE_PROOF
+ if(O.armor["fire"] > 50) //obj with 100% fire armor still get slowly burned away.
+ O.armor["fire"] = 50
+ O.fire_act(10000, 1000)
+
+
+ else if (isliving(thing))
+ . = 1
+ var/mob/living/L = thing
+ if("lava" in L.weather_immunities)
+ continue
+ if(L.buckled)
+ if(isobj(L.buckled))
+ var/obj/O = L.buckled
+ if(O.resistance_flags & LAVA_PROOF)
+ continue
+ if(isliving(L.buckled)) //Goliath riding
+ var/mob/living/live = L.buckled
+ if("lava" in live.weather_immunities)
+ continue
+
+ L.adjustFireLoss(20)
+ if(L) //mobs turning into object corpses could get deleted here.
+ L.adjust_fire_stacks(20)
+ L.IgniteMob()
+
+
+/turf/open/floor/plating/lava/attackby(obj/item/C, mob/user, params) //Lava isn't a good foundation to build on
+ return
+
+/turf/open/floor/plating/lava/break_tile()
+ return
+
+/turf/open/floor/plating/lava/burn_tile()
+ return
+
+/turf/open/floor/plating/lava/smooth
+ name = "lava"
+ baseturf = /turf/open/floor/plating/lava/smooth
+ icon = 'icons/turf/floors/lava.dmi'
+ icon_state = "unsmooth"
+ smooth = SMOOTH_MORE | SMOOTH_BORDER
+ canSmoothWith = list(/turf/open/floor/plating/lava/smooth)
+
+
+/turf/open/floor/plating/lava/smooth/lava_land_surface
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ planetary_atmos = TRUE
+ baseturf = /turf/open/chasm/straight_down/lava_land_surface
+
+/turf/open/floor/plating/lava/smooth/airless
+ initial_gas_mix = "TEMP=2.7"
diff --git a/code/game/turfs/simulated/floor/plating/misc_plating.dm b/code/game/turfs/simulated/floor/plating/misc_plating.dm
new file mode 100644
index 00000000000..730cc7b0ab6
--- /dev/null
+++ b/code/game/turfs/simulated/floor/plating/misc_plating.dm
@@ -0,0 +1,160 @@
+
+/turf/open/floor/plating/airless
+ icon_state = "plating"
+ initial_gas_mix = "TEMP=2.7"
+
+/turf/open/floor/plating/abductor
+ name = "alien floor"
+ icon_state = "alienpod1"
+
+/turf/open/floor/plating/abductor/New()
+ ..()
+ icon_state = "alienpod[rand(1,9)]"
+
+
+/turf/open/floor/plating/abductor2
+ name = "alien plating"
+ icon_state = "alienplating"
+
+/turf/open/floor/plating/abductor2/break_tile()
+ return //unbreakable
+
+/turf/open/floor/plating/abductor2/burn_tile()
+ return //unburnable
+
+
+/turf/open/floor/plating/astplate
+ icon_state = "asteroidplating"
+
+/turf/open/floor/plating/airless/astplate
+ icon_state = "asteroidplating"
+
+
+/turf/open/floor/plating/ashplanet
+ icon = 'icons/turf/mining.dmi'
+ name = "ash"
+ icon_state = "ash"
+ smooth = SMOOTH_MORE|SMOOTH_BORDER
+ var/smooth_icon = 'icons/turf/floors/ash.dmi'
+ desc = "The ground is covered in volcanic ash."
+ baseturf = /turf/open/floor/plating/ashplanet/wateryrock //I assume this will be a chasm eventually, once this becomes an actual surface
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ planetary_atmos = TRUE
+
+/turf/open/floor/plating/ashplanet/New()
+ if(smooth)
+ pixel_y = -4
+ pixel_x = -4
+ icon = smooth_icon
+ ..()
+
+/turf/open/floor/plating/ashplanet/break_tile()
+ return
+
+/turf/open/floor/plating/ashplanet/burn_tile()
+ return
+
+/turf/open/floor/plating/ashplanet/ash
+ canSmoothWith = list(/turf/open/floor/plating/ashplanet/ash, /turf/closed)
+ layer = HIGH_TURF_LAYER
+ slowdown = 1
+
+/turf/open/floor/plating/ashplanet/rocky
+ name = "rocky ground"
+ icon_state = "rockyash"
+ smooth_icon = 'icons/turf/floors/rocky_ash.dmi'
+ layer = MID_TURF_LAYER
+ canSmoothWith = list(/turf/open/floor/plating/ashplanet/rocky, /turf/closed)
+
+/turf/open/floor/plating/ashplanet/wateryrock
+ name = "wet rocky ground"
+ smooth = null
+ icon_state = "wateryrock"
+ slowdown = 2
+
+/turf/open/floor/plating/ashplanet/wateryrock/New()
+ icon_state = "[icon_state][rand(1, 9)]"
+ ..()
+
+
+/turf/open/floor/plating/beach
+ name = "beach"
+ icon = 'icons/misc/beach.dmi'
+ flags = NONE
+
+/turf/open/floor/plating/beach/ex_act(severity, target)
+ contents_explosion(severity, target)
+
+/turf/open/floor/plating/beach/sand
+ name = "sand"
+ desc = "Surf's up."
+ icon_state = "sand"
+ baseturf = /turf/open/floor/plating/beach/sand
+
+/turf/open/floor/plating/beach/coastline_t
+ name = "coastline"
+ desc = "Tide's high tonight. Charge your batons."
+ icon_state = "sandwater_t"
+ baseturf = /turf/open/floor/plating/beach/coastline_t
+
+/turf/open/floor/plating/beach/coastline_b
+ name = "coastline"
+ icon_state = "sandwater_b"
+ baseturf = /turf/open/floor/plating/beach/coastline_b
+
+/turf/open/floor/plating/beach/water
+ name = "water"
+ desc = "You get the feeling that nobody's bothered to actually make this water functional..."
+ icon_state = "water"
+ baseturf = /turf/open/floor/plating/beach/water
+
+
+/turf/open/floor/plating/ironsand
+ name = "iron sand"
+ desc = "Like sand, but more metal."
+
+/turf/open/floor/plating/ironsand/New()
+ ..()
+ icon_state = "ironsand[rand(1,15)]"
+
+/turf/open/floor/plating/ironsand/burn_tile()
+ return
+
+
+/turf/open/floor/plating/ice
+ name = "ice sheet"
+ desc = "A sheet of solid ice. Looks slippery."
+ icon = 'icons/turf/snow.dmi'
+ icon_state = "ice"
+ temperature = 180
+ baseturf = /turf/open/floor/plating/ice
+ slowdown = 1
+ wet = TURF_WET_PERMAFROST
+
+/turf/open/floor/plating/ice/colder
+ temperature = 140
+
+/turf/open/floor/plating/ice/temperate
+ temperature = 255.37
+
+/turf/open/floor/plating/ice/break_tile()
+ return
+
+/turf/open/floor/plating/ice/burn_tile()
+ return
+
+
+/turf/open/floor/plating/snowed
+ name = "snowed-over plating"
+ desc = "A section of plating covered in a light layer of snow."
+ icon = 'icons/turf/snow.dmi'
+ icon_state = "snowplating"
+ temperature = 180
+
+/turf/open/floor/plating/snowed/colder
+ temperature = 140
+
+/turf/open/floor/plating/snowed/temperatre
+ temperature = 255.37
+
+
diff --git a/code/game/turfs/simulated/floor/reinf_floor.dm b/code/game/turfs/simulated/floor/reinf_floor.dm
new file mode 100644
index 00000000000..9ee7121ff9e
--- /dev/null
+++ b/code/game/turfs/simulated/floor/reinf_floor.dm
@@ -0,0 +1,152 @@
+
+/turf/open/floor/engine
+ name = "reinforced floor"
+ icon_state = "engine"
+ thermal_conductivity = 0.025
+ heat_capacity = INFINITY
+ floor_tile = /obj/item/stack/rods
+
+/turf/open/floor/engine/airless
+ initial_gas_mix = "TEMP=2.7"
+
+/turf/open/floor/engine/break_tile()
+ return //unbreakable
+
+/turf/open/floor/engine/burn_tile()
+ return //unburnable
+
+/turf/open/floor/engine/make_plating(force = 0)
+ if(force)
+ ..()
+ return //unplateable
+
+/turf/open/floor/engine/attackby(obj/item/weapon/C, mob/user, params)
+ if(!C || !user)
+ return
+ if(istype(C, /obj/item/weapon/wrench))
+ user << "You begin removing rods..."
+ playsound(src, 'sound/items/Ratchet.ogg', 80, 1)
+ if(do_after(user, 30/C.toolspeed, target = src))
+ if(!istype(src, /turf/open/floor/engine))
+ return
+ new /obj/item/stack/rods(src, 2)
+ ChangeTurf(/turf/open/floor/plating)
+ return
+
+
+/turf/open/floor/engine/ex_act(severity, target)
+ contents_explosion(severity, target)
+ switch(severity)
+ if(1)
+ ChangeTurf(src.baseturf)
+ if(2)
+ if(prob(50))
+ ChangeTurf(src.baseturf)
+ else
+ return
+
+/turf/open/floor/engine/ex_act(severity,target)
+ var/shielded = is_shielded()
+ contents_explosion(severity, target)
+ if(severity != 1 && shielded && target != src)
+ return
+ if(target == src)
+ src.ChangeTurf(src.baseturf)
+ return
+ switch(severity)
+ if(1)
+ if(prob(80))
+ ReplaceWithLattice()
+ else if(prob(50))
+ ChangeTurf(src.baseturf)
+ else
+ make_plating(1)
+ if(2)
+ if(prob(50))
+ make_plating(1)
+
+/turf/open/floor/engine/singularity_pull(S, current_size)
+ if(current_size >= STAGE_FIVE)
+ if(floor_tile)
+ if(prob(30))
+ PoolOrNew(floor_tile, src)
+ make_plating()
+ else if(prob(30))
+ ReplaceWithLattice()
+
+/turf/open/floor/engine/attack_paw(mob/user)
+ return src.attack_hand(user)
+
+/turf/open/floor/engine/attack_hand(mob/user)
+ user.Move_Pulled(src)
+
+
+//air filled floors; used in atmos pressure chambers
+
+/turf/open/floor/engine/n2o
+ name = "n2o floor"
+ initial_gas_mix = "n2o=6000;TEMP=293.15"
+
+/turf/open/floor/engine/co2
+ name = "co2 floor"
+ initial_gas_mix = "co2=50000;TEMP=293.15"
+
+/turf/open/floor/engine/plasma
+ name = "plasma floor"
+ initial_gas_mix = "plasma=70000;TEMP=293.15"
+
+/turf/open/floor/engine/o2
+ name = "o2 floor"
+ initial_gas_mix = "o2=100000;TEMP=293.15"
+
+/turf/open/floor/engine/n2
+ name = "n2 floor"
+ initial_gas_mix = "n2=100000;TEMP=293.15"
+
+/turf/open/floor/engine/air
+ name = "air floor"
+ initial_gas_mix = "o2=2644;n2=10580;TEMP=293.15"
+
+
+
+/turf/open/floor/engine/cult
+ name = "engraved floor"
+ icon_state = "plating"
+ var/obj/effect/clockwork/overlay/floor/bloodcult/realappearence
+
+/turf/open/floor/engine/cult/New()
+ ..()
+ PoolOrNew(/obj/effect/overlay/temp/cult/turf/floor, src)
+ realappearence = PoolOrNew(/obj/effect/clockwork/overlay/floor/bloodcult, src)
+ realappearence.linked = src
+
+/turf/open/floor/engine/cult/Destroy()
+ be_removed()
+ return ..()
+
+/turf/open/floor/engine/cult/ChangeTurf(path, defer_change = FALSE)
+ if(path != type)
+ be_removed()
+ return ..()
+
+/turf/open/floor/engine/cult/proc/be_removed()
+ qdel(realappearence)
+ realappearence = null
+
+/turf/open/floor/engine/cult/narsie_act()
+ return
+
+/turf/open/floor/engine/cult/ratvar_act()
+ ..()
+ if(istype(src, /turf/open/floor/engine/cult)) //if we haven't changed type
+ var/previouscolor = color
+ color = "#FAE48C"
+ animate(src, color = previouscolor, time = 8)
+
+/turf/open/floor/engine/cult/airless
+ initial_gas_mix = "TEMP=2.7"
+
+
+/turf/open/floor/engine/vacuum
+ name = "vacuum floor"
+ initial_gas_mix = "TEMP=2.7"
diff --git a/code/modules/mining/mine_turfs.dm b/code/game/turfs/simulated/minerals.dm
similarity index 50%
rename from code/modules/mining/mine_turfs.dm
rename to code/game/turfs/simulated/minerals.dm
index 6b0a051dde1..22e87cb6814 100644
--- a/code/modules/mining/mine_turfs.dm
+++ b/code/game/turfs/simulated/minerals.dm
@@ -37,15 +37,82 @@
Spread(T)
+
+/turf/closed/mineral/attackby(obj/item/weapon/pickaxe/P, mob/user, params)
+
+ if (!user.IsAdvancedToolUser())
+ usr << "You don't have the dexterity to do this!"
+ return
+
+ if (istype(P, /obj/item/weapon/pickaxe))
+ var/turf/T = user.loc
+ if (!isturf(T))
+ return
+
+ if(last_act+P.digspeed > world.time)//prevents message spam
+ return
+ last_act = world.time
+ user << "You start picking..."
+ P.playDigSound()
+
+ if(do_after(user,P.digspeed, target = src))
+ if(ismineralturf(src))
+ user << "You finish cutting into the rock."
+ gets_drilled(user)
+ feedback_add_details("pick_used_mining","[P.type]")
+ else
+ return attack_hand(user)
+ return
+
+/turf/closed/mineral/proc/gets_drilled()
+ if (mineralType && (src.mineralAmt > 0) && (src.mineralAmt < 11))
+ var/i
+ for (i=0;i= 2)
+ gets_drilled()
+ ..()
+
+/turf/closed/mineral/attack_alien(mob/living/carbon/alien/M)
+ M << "You start digging into the rock..."
+ playsound(src, 'sound/effects/break_stone.ogg', 50, 1)
+ if(do_after(M,40, target = src))
+ M << "You tunnel into the rock."
+ gets_drilled(M)
+
+/turf/closed/mineral/Bumped(AM as mob|obj)
+ ..()
+ if(ishuman(AM))
+ var/mob/living/carbon/human/H = AM
+ var/obj/item/I = H.is_holding_item_of_type(/obj/item/weapon/pickaxe)
+ if(I)
+ attackby(I,H)
+ return
+ else if(iscyborg(AM))
+ var/mob/living/silicon/robot/R = AM
+ if(istype(R.module_active,/obj/item/weapon/pickaxe))
+ src.attackby(R.module_active,R)
+ return
+/* else if(istype(AM,/obj/mecha))
+ var/obj/mecha/M = AM
+ if(istype(M.selected,/obj/item/mecha_parts/mecha_equipment/drill))
+ src.attackby(M.selected,M)
+ return*/
+//Aparantly mechs are just TOO COOL to call Bump(), so fuck em (for now)
+ else
+ return
+
/turf/closed/mineral/acid_melt()
ChangeTurf(baseturf)
-/turf/closed/mineral/volcanic
- environment_type = "basalt"
- turf_type = /turf/open/floor/plating/asteroid/basalt
- baseturf = /turf/open/floor/plating/asteroid/basalt
- initial_gas_mix = "o2=14;n2=23;TEMP=300"
-
/turf/closed/mineral/ex_act(severity, target)
..()
switch(severity)
@@ -86,6 +153,7 @@
src = M
M.levelupdate()
+
/turf/closed/mineral/random/high_chance
icon_state = "rock_highchance"
mineralChance = 25
@@ -97,6 +165,18 @@
icon_state = "rock"
..()
+/turf/closed/mineral/random/high_chance/volcanic
+ environment_type = "basalt"
+ turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ defer_change = 1
+ mineralSpawnChanceList = list(
+ /turf/closed/mineral/uranium/volcanic = 35, /turf/closed/mineral/diamond/volcanic = 30, /turf/closed/mineral/gold/volcanic = 45, /turf/closed/mineral/titanium/volcanic = 45,
+ /turf/closed/mineral/silver/volcanic = 50, /turf/closed/mineral/plasma/volcanic = 50, /turf/closed/mineral/bscrystal/volcanic = 20)
+
+
+
/turf/closed/mineral/random/low_chance
icon_state = "rock_lowchance"
mineralChance = 6
@@ -109,48 +189,141 @@
icon_state = "rock"
..()
+
+/turf/closed/mineral/random/volcanic
+ environment_type = "basalt"
+ turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ defer_change = 1
+
+ mineralChance = 10
+ mineralSpawnChanceList = list(
+ /turf/closed/mineral/uranium/volcanic = 5, /turf/closed/mineral/diamond/volcanic = 1, /turf/closed/mineral/gold/volcanic = 10, /turf/closed/mineral/titanium/volcanic = 11,
+ /turf/closed/mineral/silver/volcanic = 12, /turf/closed/mineral/plasma/volcanic = 20, /turf/closed/mineral/iron/volcanic = 40,
+ /turf/closed/mineral/gibtonite/volcanic = 4, /turf/open/floor/plating/asteroid/airless/cave/volcanic = 1, /turf/closed/mineral/bscrystal/volcanic = 1)
+
+/turf/closed/mineral/random/labormineral
+ mineralSpawnChanceList = list(
+ /turf/closed/mineral/iron = 100, /turf/closed/mineral/uranium = 1, /turf/closed/mineral/diamond = 1,
+ /turf/closed/mineral/gold = 1, /turf/closed/mineral/silver = 1, /turf/closed/mineral/plasma = 1)
+ icon_state = "rock_labor"
+
+/turf/closed/mineral/random/labormineral/New()
+ icon_state = "rock"
+ ..()
+
+/turf/closed/mineral/random/labormineral/volcanic
+ environment_type = "basalt"
+ turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ defer_change = 1
+ mineralSpawnChanceList = list(
+ /turf/closed/mineral/iron/volcanic = 100, /turf/closed/mineral/uranium/volcanic = 1, /turf/closed/mineral/diamond/volcanic = 1,
+ /turf/closed/mineral/gold/volcanic = 1, /turf/closed/mineral/silver/volcanic = 1, /turf/closed/mineral/plasma/volcanic = 1)
+
+
+
+
/turf/closed/mineral/iron
mineralType = /obj/item/weapon/ore/iron
spreadChance = 20
spread = 1
scan_state = "rock_Iron"
+/turf/closed/mineral/iron/volcanic
+ environment_type = "basalt"
+ turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ defer_change = 1
+
+
/turf/closed/mineral/uranium
mineralType = /obj/item/weapon/ore/uranium
spreadChance = 5
spread = 1
scan_state = "rock_Uranium"
+/turf/closed/mineral/uranium/volcanic
+ environment_type = "basalt"
+ turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ defer_change = 1
+
+
/turf/closed/mineral/diamond
mineralType = /obj/item/weapon/ore/diamond
spreadChance = 0
spread = 1
scan_state = "rock_Diamond"
+/turf/closed/mineral/diamond/volcanic
+ environment_type = "basalt"
+ turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ defer_change = 1
+
+
/turf/closed/mineral/gold
mineralType = /obj/item/weapon/ore/gold
spreadChance = 5
spread = 1
scan_state = "rock_Gold"
+/turf/closed/mineral/gold/volcanic
+ environment_type = "basalt"
+ turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ defer_change = 1
+
+
/turf/closed/mineral/silver
mineralType = /obj/item/weapon/ore/silver
spreadChance = 5
spread = 1
scan_state = "rock_Silver"
+/turf/closed/mineral/silver/volcanic
+ environment_type = "basalt"
+ turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ defer_change = 1
+
+
/turf/closed/mineral/titanium
mineralType = /obj/item/weapon/ore/titanium
spreadChance = 5
spread = 1
scan_state = "rock_Titanium"
+/turf/closed/mineral/titanium/volcanic
+ environment_type = "basalt"
+ turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ defer_change = 1
+
+
/turf/closed/mineral/plasma
mineralType = /obj/item/weapon/ore/plasma
spreadChance = 8
spread = 1
scan_state = "rock_Plasma"
+/turf/closed/mineral/plasma/volcanic
+ environment_type = "basalt"
+ turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ defer_change = 1
+
+
/turf/closed/mineral/clown
mineralType = /obj/item/weapon/ore/bananium
mineralAmt = 3
@@ -158,6 +331,7 @@
spread = 0
scan_state = "rock_Clown"
+
/turf/closed/mineral/bscrystal
mineralType = /obj/item/weapon/ore/bluespace_crystal
mineralAmt = 1
@@ -165,7 +339,42 @@
spread = 0
scan_state = "rock_BScrystal"
-////////////////////////////////Gibtonite
+/turf/closed/mineral/bscrystal/volcanic
+ environment_type = "basalt"
+ turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ defer_change = 1
+
+
+/turf/closed/mineral/volcanic
+ environment_type = "basalt"
+ turf_type = /turf/open/floor/plating/asteroid/basalt
+ baseturf = /turf/open/floor/plating/asteroid/basalt
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+
+/turf/closed/mineral/volcanic/lava_land_surface
+ environment_type = "basalt"
+ turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
+ baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface
+ defer_change = 1
+
+/turf/closed/mineral/ash_rock //wall piece
+ name = "rock"
+ icon = 'icons/turf/mining.dmi'
+ smooth_icon = 'icons/turf/walls/rock_wall.dmi'
+ icon_state = "rock2"
+ smooth = SMOOTH_MORE|SMOOTH_BORDER
+ canSmoothWith = list (/turf/closed)
+ baseturf = /turf/open/floor/plating/ashplanet/wateryrock
+ initial_gas_mix = "o2=14;n2=23;TEMP=300"
+ environment_type = "waste"
+ turf_type = /turf/open/floor/plating/ashplanet/rocky
+ defer_change = 1
+
+
+//GIBTONITE
+
/turf/closed/mineral/gibtonite
mineralAmt = 1
spreadChance = 0
@@ -260,524 +469,6 @@
spawn(10)
AfterChange()
-/turf/closed/mineral/gibtonite/volcanic
- initial_gas_mix = "o2=14;n2=23;TEMP=300"
-
-////////////////////////////////End Gibtonite
-
-/turf/open/floor/plating/asteroid/airless/cave
- var/length = 100
- var/mob_spawn_list = list(/mob/living/simple_animal/hostile/asteroid/goldgrub = 1, /mob/living/simple_animal/hostile/asteroid/goliath = 5, /mob/living/simple_animal/hostile/asteroid/basilisk = 4, /mob/living/simple_animal/hostile/asteroid/hivelord = 3)
- var/flora_spawn_list = list(/obj/structure/flora/ash/leaf_shroom = 2 , /obj/structure/flora/ash/cap_shroom = 2 , /obj/structure/flora/ash/stem_shroom = 2 , /obj/structure/flora/ash/cacti = 1, /obj/structure/flora/ash/tall_shroom = 2)
- var/sanity = 1
- var/forward_cave_dir = 1
- var/backward_cave_dir = 2
- var/going_backwards = TRUE
- var/has_data = FALSE
- var/data_having_type = /turf/open/floor/plating/asteroid/airless/cave/has_data
- turf_type = /turf/open/floor/plating/asteroid/airless
-
-/turf/open/floor/plating/asteroid/airless/cave/has_data //subtype for producing a tunnel with given data
- has_data = TRUE
-
-/turf/open/floor/plating/asteroid/airless/cave/volcanic
- mob_spawn_list = list(/mob/living/simple_animal/hostile/asteroid/goldgrub = 10, /mob/living/simple_animal/hostile/asteroid/goliath/beast = 50, /mob/living/simple_animal/hostile/asteroid/basilisk/watcher = 40, /mob/living/simple_animal/hostile/asteroid/hivelord/legion = 30,
- /mob/living/simple_animal/hostile/spawner/lavaland = 2, /mob/living/simple_animal/hostile/spawner/lavaland/goliath = 3, /mob/living/simple_animal/hostile/spawner/lavaland/legion = 3, \
- /mob/living/simple_animal/hostile/megafauna/dragon = 2, /mob/living/simple_animal/hostile/megafauna/bubblegum = 2, /mob/living/simple_animal/hostile/megafauna/colossus = 2)
-
- data_having_type = /turf/open/floor/plating/asteroid/airless/cave/volcanic/has_data
- turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- initial_gas_mix = "o2=14;n2=23;TEMP=300"
-
-/turf/open/floor/plating/asteroid/airless/cave/volcanic/has_data //subtype for producing a tunnel with given data
- has_data = TRUE
-
-/turf/open/floor/plating/asteroid/airless/cave/New(loc)
- if(!has_data)
- produce_tunnel_from_data()
- ..()
-
-/turf/open/floor/plating/asteroid/airless/cave/proc/get_cave_data(set_length, exclude_dir = -1)
- // If set_length (arg1) isn't defined, get a random length; otherwise assign our length to the length arg.
- if(!set_length)
- length = rand(25, 50)
- else
- length = set_length
-
- // Get our directiosn
- forward_cave_dir = pick(alldirs - exclude_dir)
- // Get the opposite direction of our facing direction
- backward_cave_dir = angle2dir(dir2angle(forward_cave_dir) + 180)
-
-/turf/open/floor/plating/asteroid/airless/cave/proc/produce_tunnel_from_data(tunnel_length, excluded_dir = -1)
- get_cave_data(tunnel_length, excluded_dir)
- // Make our tunnels
- make_tunnel(forward_cave_dir)
- if(going_backwards)
- make_tunnel(backward_cave_dir)
- // Kill ourselves by replacing ourselves with a normal floor.
- SpawnFloor(src)
-
-/turf/open/floor/plating/asteroid/airless/cave/proc/make_tunnel(dir)
- var/turf/closed/mineral/tunnel = src
- var/next_angle = pick(45, -45)
-
- for(var/i = 0; i < length; i++)
- if(!sanity)
- break
-
- var/list/L = list(45)
- if(IsOdd(dir2angle(dir))) // We're going at an angle and we want thick angled tunnels.
- L += -45
-
- // Expand the edges of our tunnel
- for(var/edge_angle in L)
- var/turf/closed/mineral/edge = get_step(tunnel, angle2dir(dir2angle(dir) + edge_angle))
- if(istype(edge))
- SpawnFloor(edge)
-
- if(!sanity)
- break
-
- // Move our tunnel forward
- tunnel = get_step(tunnel, dir)
-
- if(istype(tunnel))
- // Small chance to have forks in our tunnel; otherwise dig our tunnel.
- if(i > 3 && prob(20))
- var/turf/open/floor/plating/asteroid/airless/cave/C = tunnel.ChangeTurf(data_having_type)
- C.going_backwards = FALSE
- C.produce_tunnel_from_data(rand(10, 15), dir)
- else
- SpawnFloor(tunnel)
- else //if(!istype(tunnel, src.parent)) // We hit space/normal/wall, stop our tunnel.
- break
-
- // Chance to change our direction left or right.
- if(i > 2 && prob(33))
- // We can't go a full loop though
- next_angle = -next_angle
- setDir(angle2dir(dir2angle(dir) )+ next_angle)
-
-
-/turf/open/floor/plating/asteroid/airless/cave/proc/SpawnFloor(turf/T)
- for(var/S in RANGE_TURFS(1, src))
- var/turf/NT = S
- if(!NT || isspaceturf(NT) || istype(NT.loc, /area/mine/explored) || istype(NT.loc, /area/lavaland/surface/outdoors/explored))
- sanity = 0
- break
- if(!sanity)
- return
- SpawnFlora(T)
-
- SpawnMonster(T)
- T.ChangeTurf(turf_type)
-
-/turf/open/floor/plating/asteroid/airless/cave/proc/SpawnMonster(turf/T)
- if(prob(30))
- if(istype(loc, /area/mine/explored) || istype(loc, /area/lavaland/surface/outdoors/explored))
- return
- for(var/mob/living/simple_animal/hostile/H in urange(12,T)) //prevents mob clumps
- if(istype(H, /mob/living/simple_animal/hostile/asteroid))
- return
- if(ismegafauna(H) && get_dist(src, H) <= 7)
- return
- if(istype(H, /mob/living/simple_animal/hostile/spawner/lavaland) && get_dist(src, H) <= 3) //prevents tendrils spawning in collapse range
- return
- var/randumb = pickweight(mob_spawn_list)
- new randumb(T)
- return
-/turf/open/floor/plating/asteroid/airless/cave/proc/SpawnFlora(turf/T)
- if(prob(12))
- if(istype(loc, /area/mine/explored) || istype(loc, /area/lavaland/surface/outdoors/explored))
- return
- var/randumb = pickweight(flora_spawn_list)
- for(var/obj/structure/flora/ash/F in range(4, T)) //Allows for growing patches, but not ridiculous stacks of flora
- if(!istype(F, randumb))
- return
- new randumb(T)
-
-
-/turf/closed/mineral/attackby(obj/item/weapon/pickaxe/P, mob/user, params)
-
- if (!user.IsAdvancedToolUser())
- usr << "You don't have the dexterity to do this!"
- return
-
- if (istype(P, /obj/item/weapon/pickaxe))
- var/turf/T = user.loc
- if (!isturf(T))
- return
-
- if(last_act+P.digspeed > world.time)//prevents message spam
- return
- last_act = world.time
- user << "You start picking..."
- P.playDigSound()
-
- if(do_after(user,P.digspeed, target = src))
- if(ismineralturf(src))
- user << "You finish cutting into the rock."
- gets_drilled(user)
- feedback_add_details("pick_used_mining","[P.type]")
- else
- return attack_hand(user)
- return
-
-/turf/closed/mineral/proc/gets_drilled()
- if (mineralType && (src.mineralAmt > 0) && (src.mineralAmt < 11))
- var/i
- for (i=0;i= 2)
- gets_drilled()
- ..()
-
-/turf/closed/mineral/attack_alien(mob/living/carbon/alien/M)
- M << "You start digging into the rock..."
- playsound(src, 'sound/effects/break_stone.ogg', 50, 1)
- if(do_after(M,40, target = src))
- M << "You tunnel into the rock."
- gets_drilled(M)
-
-/turf/closed/mineral/Bumped(AM as mob|obj)
- ..()
- if(ishuman(AM))
- var/mob/living/carbon/human/H = AM
- var/obj/item/I = H.is_holding_item_of_type(/obj/item/weapon/pickaxe)
- if(I)
- attackby(I,H)
- return
- else if(iscyborg(AM))
- var/mob/living/silicon/robot/R = AM
- if(istype(R.module_active,/obj/item/weapon/pickaxe))
- src.attackby(R.module_active,R)
- return
-/* else if(istype(AM,/obj/mecha))
- var/obj/mecha/M = AM
- if(istype(M.selected,/obj/item/mecha_parts/mecha_equipment/drill))
- src.attackby(M.selected,M)
- return*/
-//Aparantly mechs are just TOO COOL to call Bump(), so fuck em (for now)
- else
- return
-
-/**********************Asteroid**************************/
-
-/turf/open/floor/plating/asteroid //floor piece
- name = "asteroid sand"
- baseturf = /turf/open/floor/plating/asteroid
- icon = 'icons/turf/floors.dmi'
- icon_state = "asteroid"
- icon_plating = "asteroid"
- var/environment_type = "asteroid"
- var/turf_type = /turf/open/floor/plating/asteroid //Because caves do whacky shit to revert to normal
- var/dug = 0 //0 = has not yet been dug, 1 = has already been dug
- var/sand_type = /obj/item/weapon/ore/glass
- var/floor_variance = 20 //probability floor has a different icon state
-
-/turf/open/floor/plating/asteroid/airless
- initial_gas_mix = "TEMP=2.7"
- turf_type = /turf/open/floor/plating/asteroid/airless
-
-/turf/open/floor/plating/asteroid/basalt
- name = "volcanic floor"
- baseturf = /turf/open/floor/plating/asteroid/basalt
- icon = 'icons/turf/floors.dmi'
- icon_state = "basalt"
- icon_plating = "basalt"
- environment_type = "basalt"
- sand_type = /obj/item/weapon/ore/glass/basalt
- floor_variance = 15
-
-/turf/open/floor/plating/asteroid/basalt/lava //lava underneath
- baseturf = /turf/open/floor/plating/lava/smooth
-
-/turf/open/floor/plating/asteroid/basalt/airless
- initial_gas_mix = "TEMP=2.7"
-
-/turf/open/floor/plating/asteroid/snow
- name = "snow"
- desc = "Looks cold."
- icon = 'icons/turf/snow.dmi'
- baseturf = /turf/open/floor/plating/asteroid/snow
- icon_state = "snow"
- icon_plating = "snow"
- initial_gas_mix = "TEMP=180"
- slowdown = 2
- environment_type = "snow"
- sand_type = /obj/item/stack/sheet/mineral/snow
-
-/turf/open/floor/plating/asteroid/snow/airless
- initial_gas_mix = "TEMP=2.7"
-
-/turf/open/floor/plating/asteroid/snow/temperatre
- initial_gas_mix = "TEMP=255.37"
-
-/turf/open/floor/plating/asteroid/snow/atmosphere
- initial_gas_mix = "o2=22;n2=82;TEMP=180"
-
-/turf/open/floor/plating/asteroid/New()
- var/proper_name = name
- ..()
- name = proper_name
- if(prob(floor_variance))
- icon_state = "[environment_type][rand(0,12)]"
-
-/turf/open/floor/plating/asteroid/basalt/New()
- ..()
- switch(icon_state)
- if("basalt1", "basalt2", "basalt3") //5 and 9 are too dark to glow and make the amount of glows in tunnels too high
- SetLuminosity(1, 1) //this is basically a 3.75% chance that a basalt floor glows
-
-/turf/open/floor/plating/asteroid/burn_tile()
- return
-
-/turf/open/floor/plating/asteroid/ex_act(severity, target)
- contents_explosion(severity, target)
- switch(severity)
- if(3)
- return
- if(2)
- if(prob(20))
- src.gets_dug()
- if(1)
- src.gets_dug()
-
-/turf/open/floor/plating/asteroid/attackby(obj/item/weapon/W, mob/user, params)
- //note that this proc does not call ..()
- if(!W || !user)
- return 0
- var/digging_speed = 0
- if (istype(W, /obj/item/weapon/shovel))
- var/obj/item/weapon/shovel/S = W
- digging_speed = S.digspeed
- else if (istype(W, /obj/item/weapon/pickaxe))
- var/obj/item/weapon/pickaxe/P = W
- digging_speed = P.digspeed
- if (digging_speed)
- var/turf/T = user.loc
- if(!isturf(T))
- return
-
- if (dug)
- user << "This area has already been dug!"
- return
-
- user << "You start digging..."
- playsound(src, 'sound/effects/shovel_dig.ogg', 50, 1)
-
- if(do_after(user, digging_speed, target = src))
- if(istype(src, /turf/open/floor/plating/asteroid))
- user << "You dig a hole."
- gets_dug()
- feedback_add_details("pick_used_mining","[W.type]")
-
- if(istype(W,/obj/item/weapon/storage/bag/ore))
- var/obj/item/weapon/storage/bag/ore/S = W
- if(S.collection_mode == 1)
- for(var/obj/item/weapon/ore/O in src.contents)
- O.attackby(W,user)
- return
-
- if(istype(W, /obj/item/stack/tile))
- var/obj/item/stack/tile/Z = W
- if(!Z.use(1))
- return
- var/turf/open/floor/T = ChangeTurf(Z.turf_type)
- if(istype(Z,/obj/item/stack/tile/light)) //TODO: get rid of this ugly check somehow
- var/obj/item/stack/tile/light/L = Z
- var/turf/open/floor/light/F = T
- F.state = L.state
- playsound(src, 'sound/weapons/Genhit.ogg', 50, 1)
-
-/turf/open/floor/plating/asteroid/proc/gets_dug()
- if(dug)
- return
- for(var/i in 1 to 5)
- new sand_type(src)
- dug = 1
- icon_plating = "[environment_type]_dug"
- icon_state = "[environment_type]_dug"
- slowdown = 0
- return
-
-/turf/open/floor/plating/asteroid/basalt/gets_dug()
- if(!dug)
- SetLuminosity(0)
- ..()
-
-/turf/open/floor/plating/asteroid/singularity_act()
- return
-
-/turf/open/floor/plating/asteroid/singularity_pull(S, current_size)
- return
-
-//////////////CHASM//////////////////
-
-/turf/open/chasm
- name = "chasm"
- desc = "Watch your step."
- baseturf = /turf/open/chasm
- smooth = SMOOTH_TRUE | SMOOTH_BORDER
- icon = 'icons/turf/floors/Chasms.dmi'
- icon_state = "smooth"
- var/drop_x = 1
- var/drop_y = 1
- var/drop_z = 1
-
-/turf/open/chasm/Entered(atom/movable/AM)
- START_PROCESSING(SSobj, src)
- drop_stuff(AM)
-
-/turf/open/chasm/process()
- if(!drop_stuff())
- STOP_PROCESSING(SSobj, src)
-
-/turf/open/chasm/proc/drop_stuff(AM)
- . = 0
- var/thing_to_check = src
- if(AM)
- thing_to_check = list(AM)
- for(var/thing in thing_to_check)
- if(droppable(thing))
- . = 1
- addtimer(src, "drop", 0, FALSE, thing)
-
-/turf/open/chasm/proc/droppable(atom/movable/AM)
- if(!isliving(AM) && !isobj(AM))
- return 0
- if(istype(AM, /obj/singularity) || istype(AM, /obj/item/projectile) || AM.throwing)
- return 0
- if(istype(AM, /obj/effect/portal))
- //Portals aren't affected by gravity. Probably.
- return 0
- //Flies right over the chasm
- if(isanimal(AM))
- var/mob/living/simple_animal/SA = AM
- if(SA.flying)
- return 0
- if(ishuman(AM))
- var/mob/living/carbon/human/H = AM
- if(istype(H.belt, /obj/item/device/wormhole_jaunter))
- var/obj/item/device/wormhole_jaunter/J = H.belt
- //To freak out any bystanders
- visible_message("[H] falls into [src]!")
- J.chasm_react(H)
- return 0
- if(H.dna && H.dna.species && (FLYING in H.dna.species.specflags))
- return 0
- return 1
-
-/turf/open/chasm/proc/drop(atom/movable/AM)
- //Make sure the item is still there after our sleep
- if(!AM || qdeleted(AM))
- return
-
- var/turf/T = locate(drop_x, drop_y, drop_z)
- if(T)
- AM.visible_message("[AM] falls into [src]!", "GAH! Ah... where are you?")
- T.visible_message("[AM] falls from above!")
- AM.forceMove(T)
- if(isliving(AM))
- var/mob/living/L = AM
- L.Weaken(5)
- L.adjustBruteLoss(30)
-
-/turf/open/chasm/straight_down/New()
- ..()
- drop_x = x
- drop_y = y
- if(z+1 <= world.maxz)
- drop_z = z+1
-
-/**********************Lavaland Turfs**************************/
-
-///////Surface. The surface is warm, but survivable without a suit. Internals are required. The floors break to chasms, which drop you into the underground.
-
-/turf/open/floor/plating/asteroid/basalt/lava_land_surface
- initial_gas_mix = "o2=14;n2=23;TEMP=300"
- planetary_atmos = TRUE
- baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface
-
-/turf/open/chasm/straight_down/lava_land_surface
- initial_gas_mix = "o2=14;n2=23;TEMP=300"
- planetary_atmos = TRUE
- baseturf = /turf/open/chasm/straight_down/lava_land_surface
-
-/turf/open/chasm/straight_down/lava_land_surface/normal_air
- initial_gas_mix = "o2=22;n2=82;TEMP=293.15"
-
-/turf/open/chasm/straight_down/lava_land_surface/drop(atom/movable/AM)
- //Make sure the item is still there after our sleep
- if(!AM || qdeleted(AM))
- return
- AM.visible_message("[AM] falls into [src]!", "You stumble and stare into an abyss before you. It stares back, and you fall \
- into the enveloping dark.")
- if(isliving(AM))
- var/mob/living/L = AM
- L.notransform = TRUE
- L.Stun(10)
- L.resting = TRUE
- animate(AM, transform = matrix() - matrix(), alpha = 0, color = rgb(0, 0, 0), time = 10)
- for(var/i in 1 to 5)
- //Make sure the item is still there after our sleep
- if(!AM || qdeleted(AM))
- return
- AM.pixel_y--
- sleep(2)
-
- //Make sure the item is still there after our sleep
- if(!AM || qdeleted(AM))
- return
-
- if(iscyborg(AM))
- var/mob/living/silicon/robot/S = AM
- qdel(S.mmi)
-
- qdel(AM)
-
-/turf/closed/mineral/volcanic/lava_land_surface
- environment_type = "basalt"
- turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface
- defer_change = 1
-
-/turf/closed/mineral/random/volcanic
- environment_type = "basalt"
- turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface
- initial_gas_mix = "o2=14;n2=23;TEMP=300"
- defer_change = 1
-
- mineralChance = 10
- mineralSpawnChanceList = list(
- /turf/closed/mineral/uranium/volcanic = 5, /turf/closed/mineral/diamond/volcanic = 1, /turf/closed/mineral/gold/volcanic = 10, /turf/closed/mineral/titanium/volcanic = 11,
- /turf/closed/mineral/silver/volcanic = 12, /turf/closed/mineral/plasma/volcanic = 20, /turf/closed/mineral/iron/volcanic = 40,
- /turf/closed/mineral/gibtonite/volcanic = 4, /turf/open/floor/plating/asteroid/airless/cave/volcanic = 1, /turf/closed/mineral/bscrystal/volcanic = 1)
-
-/turf/closed/mineral/random/high_chance/volcanic
- environment_type = "basalt"
- turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface
- initial_gas_mix = "o2=14;n2=23;TEMP=300"
- defer_change = 1
- mineralSpawnChanceList = list(
- /turf/closed/mineral/uranium/volcanic = 35, /turf/closed/mineral/diamond/volcanic = 30, /turf/closed/mineral/gold/volcanic = 45, /turf/closed/mineral/titanium/volcanic = 45,
- /turf/closed/mineral/silver/volcanic = 50, /turf/closed/mineral/plasma/volcanic = 50, /turf/closed/mineral/bscrystal/volcanic = 20)
-
-/turf/open/floor/plating/lava/smooth/lava_land_surface
- initial_gas_mix = "o2=14;n2=23;TEMP=300"
- planetary_atmos = TRUE
- baseturf = /turf/open/chasm/straight_down/lava_land_surface
/turf/closed/mineral/gibtonite/volcanic
environment_type = "basalt"
@@ -785,143 +476,3 @@
baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
initial_gas_mix = "o2=14;n2=23;TEMP=300"
defer_change = 1
-
-/turf/closed/mineral/uranium/volcanic
- environment_type = "basalt"
- turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- initial_gas_mix = "o2=14;n2=23;TEMP=300"
- defer_change = 1
-
-/turf/closed/mineral/diamond/volcanic
- environment_type = "basalt"
- turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- initial_gas_mix = "o2=14;n2=23;TEMP=300"
- defer_change = 1
-
-/turf/closed/mineral/gold/volcanic
- environment_type = "basalt"
- turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- initial_gas_mix = "o2=14;n2=23;TEMP=300"
- defer_change = 1
-
-/turf/closed/mineral/silver/volcanic
- environment_type = "basalt"
- turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- initial_gas_mix = "o2=14;n2=23;TEMP=300"
- defer_change = 1
-
-/turf/closed/mineral/titanium/volcanic
- environment_type = "basalt"
- turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- initial_gas_mix = "o2=14;n2=23;TEMP=300"
- defer_change = 1
-
-/turf/closed/mineral/plasma/volcanic
- environment_type = "basalt"
- turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- initial_gas_mix = "o2=14;n2=23;TEMP=300"
- defer_change = 1
-
-/turf/closed/mineral/iron/volcanic
- environment_type = "basalt"
- turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- initial_gas_mix = "o2=14;n2=23;TEMP=300"
- defer_change = 1
-
-/turf/closed/mineral/bscrystal/volcanic
- environment_type = "basalt"
- turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- baseturf = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- initial_gas_mix = "o2=14;n2=23;TEMP=300"
- defer_change = 1
-
-
-//BECAUSE ONE PLANET WASNT ENOUGH
-
-/turf/closed/mineral/ash_rock //wall piece
- name = "rock"
- icon = 'icons/turf/mining.dmi'
- smooth_icon = 'icons/turf/walls/rock_wall.dmi'
- icon_state = "rock2"
- smooth = SMOOTH_MORE|SMOOTH_BORDER
- canSmoothWith = list (/turf/closed)
- baseturf = /turf/open/floor/plating/ashplanet/wateryrock
- initial_gas_mix = "o2=14;n2=23;TEMP=300"
- environment_type = "waste"
- turf_type = /turf/open/floor/plating/ashplanet/rocky
- defer_change = 1
-
-/turf/open/floor/plating/ashplanet
- icon = 'icons/turf/mining.dmi'
- name = "ash"
- icon_state = "ash"
- smooth = SMOOTH_MORE|SMOOTH_BORDER
- var/smooth_icon = 'icons/turf/floors/ash.dmi'
- desc = "The ground is covered in volcanic ash."
- baseturf = /turf/open/floor/plating/ashplanet/wateryrock //I assume this will be a chasm eventually, once this becomes an actual surface
- initial_gas_mix = "o2=14;n2=23;TEMP=300"
- planetary_atmos = TRUE
-
-/turf/open/floor/plating/ashplanet/New()
- if(smooth)
- pixel_y = -4
- pixel_x = -4
- icon = smooth_icon
- ..()
-
-/turf/open/floor/plating/ashplanet/break_tile()
- return
-
-/turf/open/floor/plating/ashplanet/burn_tile()
- return
-
-/turf/open/floor/plating/ashplanet/ash
- canSmoothWith = list(/turf/open/floor/plating/ashplanet/ash, /turf/closed)
- layer = HIGH_TURF_LAYER
- slowdown = 1
-
-/turf/open/floor/plating/ashplanet/rocky
- name = "rocky ground"
- icon_state = "rockyash"
- smooth_icon = 'icons/turf/floors/rocky_ash.dmi'
- layer = MID_TURF_LAYER
- canSmoothWith = list(/turf/open/floor/plating/ashplanet/rocky, /turf/closed)
-
-/turf/open/floor/plating/ashplanet/wateryrock
- name = "wet rocky ground"
- smooth = null
- icon_state = "wateryrock"
- slowdown = 2
-
-/turf/open/floor/plating/ashplanet/wateryrock/New()
- icon_state = "[icon_state][rand(1, 9)]"
- ..()
-
-//Necropolis
-
-/turf/closed/indestructible/necropolis
- name = "necropolis wall"
- desc = "A seemingly impenetrable wall."
- icon = 'icons/turf/walls.dmi'
- icon_state = "necro"
- explosion_block = 50
- baseturf = /turf/closed/indestructible/necropolis
-
-/turf/open/indestructible/necropolis
- name = "necropolis floor"
- desc = "It's regarding you suspiciously."
- icon = 'icons/turf/floors.dmi'
- icon_state = "necro1"
- baseturf = /turf/open/indestructible/necropolis
-
-/turf/open/indestructible/necropolis/New()
- ..()
- if(prob(12))
- icon_state = "necro[rand(2,3)]"
diff --git a/code/game/turfs/simulated/walls_mineral.dm b/code/game/turfs/simulated/wall/mineral_walls.dm
similarity index 97%
rename from code/game/turfs/simulated/walls_mineral.dm
rename to code/game/turfs/simulated/wall/mineral_walls.dm
index 56abbf90fbc..8244dea7fc6 100644
--- a/code/game/turfs/simulated/walls_mineral.dm
+++ b/code/game/turfs/simulated/wall/mineral_walls.dm
@@ -167,13 +167,6 @@
explosion_block = 3
canSmoothWith = list(/turf/closed/wall/mineral/abductor, /obj/structure/falsewall/abductor)
-/turf/closed/wall/shuttle //nosmoothing shuttle walls
- name = "wall"
- icon = 'icons/turf/shuttle.dmi'
- icon_state = "wall"
- sheet_type = /obj/item/stack/sheet/mineral/titanium
- smooth = SMOOTH_FALSE
-
/turf/closed/wall/mineral/titanium //has to use this path due to how building walls works
name = "wall"
desc = "A light-weight titanium wall used in shuttles."
diff --git a/code/game/turfs/simulated/walls_misc.dm b/code/game/turfs/simulated/wall/misc_walls.dm
similarity index 79%
rename from code/game/turfs/simulated/walls_misc.dm
rename to code/game/turfs/simulated/wall/misc_walls.dm
index 73f79bd650a..3c0933e5839 100644
--- a/code/game/turfs/simulated/walls_misc.dm
+++ b/code/game/turfs/simulated/wall/misc_walls.dm
@@ -161,51 +161,4 @@
icon_state = "rrust"
hardness = 15
-/turf/closed/wall/shuttle
- name = "wall"
- icon = 'icons/turf/shuttle.dmi'
- icon_state = "wall"
- smooth = SMOOTH_FALSE
-
-/turf/closed/wall/shuttle/syndie
- icon_state = "wall3"
- sheet_type = /obj/item/stack/sheet/mineral/plastitanium
-
-/turf/closed/wall/shuttle/smooth
- name = "wall"
- icon = 'icons/turf/walls/shuttle_wall.dmi'
- icon_state = "shuttle"
- sheet_type = /obj/item/stack/sheet/mineral/titanium
- smooth = SMOOTH_MORE|SMOOTH_DIAGONAL
- canSmoothWith = list(/turf/closed/wall/shuttle/smooth, /obj/structure/window/shuttle, /obj/structure/shuttle, /obj/machinery/door/airlock/glass, /obj/machinery/door/airlock/shuttle)
-
-/turf/closed/wall/shuttle/smooth/nodiagonal
- smooth = SMOOTH_MORE
- icon_state = "shuttle_nd"
-
-/turf/closed/wall/shuttle/smooth/overspace
- icon_state = "overspace"
- fixed_underlay = list("space"=1)
-
-//sub-type to be used for interior shuttle walls
-//won't get an underlay of the destination turf on shuttle move
-/turf/closed/wall/shuttle/interior/copyTurf(turf/T)
- if(T.type != type)
- T.ChangeTurf(type)
- if(underlays.len)
- T.underlays = underlays
- if(T.icon_state != icon_state)
- T.icon_state = icon_state
- if(T.icon != icon)
- T.icon = icon
- if(T.color != color)
- T.color = color
- if(T.dir != dir)
- T.setDir(dir)
- T.transform = transform
- return T
-
-/turf/closed/wall/shuttle/copyTurf(turf/T)
- . = ..()
- T.transform = transform
diff --git a/code/game/turfs/simulated/walls_reinforced.dm b/code/game/turfs/simulated/wall/reinf_walls.dm
similarity index 100%
rename from code/game/turfs/simulated/walls_reinforced.dm
rename to code/game/turfs/simulated/wall/reinf_walls.dm
diff --git a/code/game/turfs/simulated/wall/shuttle_walls.dm b/code/game/turfs/simulated/wall/shuttle_walls.dm
new file mode 100644
index 00000000000..877b915f661
--- /dev/null
+++ b/code/game/turfs/simulated/wall/shuttle_walls.dm
@@ -0,0 +1,66 @@
+
+
+/turf/closed/wall/shuttle
+ name = "wall"
+ icon = 'icons/turf/shuttle.dmi'
+ icon_state = "wall"
+ sheet_type = /obj/item/stack/sheet/mineral/titanium
+ smooth = SMOOTH_FALSE
+
+/turf/closed/wall/shuttle/copyTurf(turf/T)
+ . = ..()
+ T.transform = transform
+
+/turf/closed/wall/shuttle/survival
+ name = "pod wall"
+ desc = "An easily-compressable wall used for temporary shelter."
+ icon = 'icons/turf/walls/survival_pod_walls.dmi'
+ icon_state = "smooth"
+ smooth = SMOOTH_MORE|SMOOTH_DIAGONAL
+ canSmoothWith = list(/turf/closed/wall/shuttle/survival, /obj/machinery/door/airlock/survival_pod, /obj/structure/window/shuttle/survival_pod, /obj/structure/shuttle/engine)
+
+/turf/closed/wall/shuttle/survival/nodiagonal
+ smooth = SMOOTH_MORE
+
+/turf/closed/wall/shuttle/survival/pod
+ canSmoothWith = list(/turf/closed/wall/shuttle/survival, /obj/machinery/door/airlock, /obj/structure/window/fulltile, /obj/structure/window/reinforced/fulltile, /obj/structure/window/reinforced/tinted/fulltile, /obj/structure/window/shuttle, /obj/structure/shuttle/engine)
+
+
+/turf/closed/wall/shuttle/syndie
+ icon_state = "wall3"
+ sheet_type = /obj/item/stack/sheet/mineral/plastitanium
+
+/turf/closed/wall/shuttle/smooth
+ name = "wall"
+ icon = 'icons/turf/walls/shuttle_wall.dmi'
+ icon_state = "shuttle"
+ sheet_type = /obj/item/stack/sheet/mineral/titanium
+ smooth = SMOOTH_MORE|SMOOTH_DIAGONAL
+ canSmoothWith = list(/turf/closed/wall/shuttle/smooth, /obj/structure/window/shuttle, /obj/structure/shuttle, /obj/machinery/door/airlock/glass, /obj/machinery/door/airlock/shuttle)
+
+/turf/closed/wall/shuttle/smooth/nodiagonal
+ smooth = SMOOTH_MORE
+ icon_state = "shuttle_nd"
+
+/turf/closed/wall/shuttle/smooth/overspace
+ icon_state = "overspace"
+ fixed_underlay = list("space"=1)
+
+//sub-type to be used for interior shuttle walls
+//won't get an underlay of the destination turf on shuttle move
+/turf/closed/wall/shuttle/interior/copyTurf(turf/T)
+ if(T.type != type)
+ T.ChangeTurf(type)
+ if(underlays.len)
+ T.underlays = underlays
+ if(T.icon_state != icon_state)
+ T.icon_state = icon_state
+ if(T.icon != icon)
+ T.icon = icon
+ if(T.color != color)
+ T.color = color
+ if(T.dir != dir)
+ T.setDir(dir)
+ T.transform = transform
+ return T
+
diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm
index 3a522e10267..be82bc02b45 100644
--- a/code/game/turfs/turf.dm
+++ b/code/game/turfs/turf.dm
@@ -349,3 +349,22 @@
/turf/proc/acid_melt()
return
+
+/turf/proc/copyTurf(turf/T)
+ if(T.type != type)
+ var/obj/O
+ if(underlays.len) //we have underlays, which implies some sort of transparency, so we want to a snapshot of the previous turf as an underlay
+ O = new()
+ O.underlays.Add(T)
+ T.ChangeTurf(type)
+ if(underlays.len)
+ T.underlays = O.underlays
+ if(T.icon_state != icon_state)
+ T.icon_state = icon_state
+ if(T.icon != icon)
+ T.icon = icon
+ if(T.color != color)
+ T.color = color
+ if(T.dir != dir)
+ T.setDir(dir)
+ return T
diff --git a/code/modules/atmospherics/machinery/atmosmachinery.dm b/code/modules/atmospherics/machinery/atmosmachinery.dm
index a3bb43227bc..7f13f838ffd 100644
--- a/code/modules/atmospherics/machinery/atmosmachinery.dm
+++ b/code/modules/atmospherics/machinery/atmosmachinery.dm
@@ -295,8 +295,3 @@ Pipelines + Other Objects -> Pipe network
/obj/machinery/atmospherics/proc/can_see_pipes()
return 1
-/obj/machinery/atmospherics/fire_act(exposed_temperature, exposed_volume)
- var/turf/T = src.loc
- if(T && T.intact && level == 1) //protected from fire when hidden behind a floor.
- return
- ..()
diff --git a/code/modules/events/spacevine.dm b/code/modules/events/spacevine.dm
index 8a151a116e6..93f700d8a52 100644
--- a/code/modules/events/spacevine.dm
+++ b/code/modules/events/spacevine.dm
@@ -433,7 +433,7 @@
damage_dealt *= 4
for(var/datum/spacevine_mutation/SM in mutations)
- damage_dealt = SM.on_hit(src, user, I, force) //on_hit now takes override damage as arg and returns new value for other mutations to permutate further
+ damage_dealt = SM.on_hit(src, user, I, damage_dealt) //on_hit now takes override damage as arg and returns new value for other mutations to permutate further
take_damage(damage_dealt, I.damtype, "melee", 1)
/obj/structure/spacevine/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0)
diff --git a/code/modules/mining/laborcamp/laborminerals.dm b/code/modules/mining/laborcamp/laborminerals.dm
deleted file mode 100644
index 5299d953754..00000000000
--- a/code/modules/mining/laborcamp/laborminerals.dm
+++ /dev/null
@@ -1,19 +0,0 @@
-/turf/closed/mineral/random/labormineral
- mineralSpawnChanceList = list(
- /turf/closed/mineral/iron = 100, /turf/closed/mineral/uranium = 1, /turf/closed/mineral/diamond = 1,
- /turf/closed/mineral/gold = 1, /turf/closed/mineral/silver = 1, /turf/closed/mineral/plasma = 1)
- icon_state = "rock_labor"
-
-/turf/closed/mineral/random/labormineral/New()
- icon_state = "rock"
- ..()
-
-/turf/closed/mineral/random/labormineral/volcanic
- environment_type = "basalt"
- turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface
- baseturf = /turf/open/floor/plating/lava/smooth/lava_land_surface
- initial_gas_mix = "o2=14;n2=23;TEMP=300"
- defer_change = 1
- mineralSpawnChanceList = list(
- /turf/closed/mineral/iron/volcanic = 100, /turf/closed/mineral/uranium/volcanic = 1, /turf/closed/mineral/diamond/volcanic = 1,
- /turf/closed/mineral/gold/volcanic = 1, /turf/closed/mineral/silver/volcanic = 1, /turf/closed/mineral/plasma/volcanic = 1)
\ No newline at end of file
diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm
index fcfd1f05717..18a4afeb28a 100644
--- a/code/modules/mining/mine_items.dm
+++ b/code/modules/mining/mine_items.dm
@@ -287,41 +287,11 @@
PoolOrNew(/obj/effect/particle_effect/smoke, get_turf(src))
qdel(src)
+
+
//Pod turfs and objects
-//Floors
-/turf/open/floor/pod
- name = "pod floor"
- icon_state = "podfloor"
- icon_regular_floor = "podfloor"
- floor_tile = /obj/item/stack/tile/pod
-
-/turf/open/floor/pod/light
- icon_state = "podfloor_light"
- icon_regular_floor = "podfloor_light"
- floor_tile = /obj/item/stack/tile/pod/light
-
-/turf/open/floor/pod/dark
- icon_state = "podfloor_dark"
- icon_regular_floor = "podfloor_dark"
- floor_tile = /obj/item/stack/tile/pod/dark
-
-//Walls
-/turf/closed/wall/shuttle/survival
- name = "pod wall"
- desc = "An easily-compressable wall used for temporary shelter."
- icon = 'icons/turf/walls/survival_pod_walls.dmi'
- icon_state = "smooth"
- smooth = SMOOTH_MORE|SMOOTH_DIAGONAL
- canSmoothWith = list(/turf/closed/wall/shuttle/survival, /obj/machinery/door/airlock/survival_pod, /obj/structure/window/shuttle/survival_pod, /obj/structure/shuttle/engine)
-
-/turf/closed/wall/shuttle/survival/nodiagonal
- smooth = SMOOTH_MORE
-
-/turf/closed/wall/shuttle/survival/pod
- canSmoothWith = list(/turf/closed/wall/shuttle/survival, /obj/machinery/door/airlock, /obj/structure/window/fulltile, /obj/structure/window/reinforced/fulltile, /obj/structure/window/reinforced/tinted/fulltile, /obj/structure/window/shuttle, /obj/structure/shuttle/engine)
-
//Window
/obj/structure/window/shuttle/survival_pod
name = "pod window"
diff --git a/code/modules/mining/ores_coins.dm b/code/modules/mining/ores_coins.dm
index c167b007b97..f11a97eeba6 100644
--- a/code/modules/mining/ores_coins.dm
+++ b/code/modules/mining/ores_coins.dm
@@ -17,6 +17,30 @@
user << "Not enough fuel to smelt [src]."
..()
+/obj/item/weapon/ore/Crossed(atom/movable/AM)
+ var/obj/item/weapon/storage/bag/ore/OB
+ if(istype(loc, /turf/open/floor/plating/asteroid))
+ var/turf/open/floor/plating/asteroid/F = loc
+ if(ishuman(AM))
+ var/mob/living/carbon/human/H = AM
+ for(var/thing in H.get_storage_slots())
+ if(istype(thing, /obj/item/weapon/storage/bag/ore))
+ OB = thing
+ break
+ for(var/thing in H.held_items)
+ if(istype(thing, /obj/item/weapon/storage/bag/ore))
+ OB = thing
+ break
+ else if(issilicon(AM))
+ var/mob/living/silicon/robot/R = AM
+ for(var/thing in R.module_active)
+ if(istype(thing, /obj/item/weapon/storage/bag/ore))
+ OB = thing
+ break
+ if(OB)
+ F.attackby(OB, AM)
+ return ..()
+
/obj/item/weapon/ore/uranium
name = "uranium ore"
icon_state = "Uranium ore"
diff --git a/code/modules/mob/living/carbon/human/inventory.dm b/code/modules/mob/living/carbon/human/inventory.dm
index e175fec7d3e..e61bee58434 100644
--- a/code/modules/mob/living/carbon/human/inventory.dm
+++ b/code/modules/mob/living/carbon/human/inventory.dm
@@ -48,6 +48,41 @@
return s_store
return null
+/mob/living/carbon/human/proc/get_all_slots()
+ . = get_head_slots() | get_body_slots()
+
+/mob/living/carbon/human/proc/get_body_slots()
+ return list(
+ back,
+ s_store,
+ handcuffed,
+ legcuffed,
+ wear_suit,
+ gloves,
+ shoes,
+ belt,
+ wear_id,
+ l_store,
+ r_store,
+ w_uniform
+ )
+
+/mob/living/carbon/human/proc/get_head_slots()
+ return list(
+ head,
+ wear_mask,
+ glasses,
+ ears,
+ )
+
+/mob/living/carbon/human/proc/get_storage_slots()
+ return list(
+ back,
+ belt,
+ l_store,
+ r_store,
+ s_store,
+ )
//This is an UNSAFE proc. Use mob_can_equip() before calling this one! Or rather use equip_to_slot_if_possible() or advanced_equip_to_slot_if_possible()
/mob/living/carbon/human/equip_to_slot(obj/item/I, slot)
diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm
index 8e3fc4a8fff..492b9d022ae 100644
--- a/code/modules/mob/living/silicon/ai/ai.dm
+++ b/code/modules/mob/living/silicon/ai/ai.dm
@@ -18,6 +18,7 @@ var/list/ai_list = list()
icon_state = "ai"
anchored = 1
density = 1
+ canmove = 0
status_flags = CANSTUN|CANPUSH
a_intent = "harm" //so we always get pushed instead of trying to swap
force_compose = 1 //This ensures that the AI always composes it's own hear message. Needed for hrefs and job display.
@@ -80,12 +81,34 @@ var/list/ai_list = list()
/mob/living/silicon/ai/New(loc, datum/ai_laws/L, obj/item/device/mmi/B, safety = 0)
..()
+ if(!safety) //Only used by AIize() to successfully spawn an AI.
+ if(!B) //If there is no player/brain inside.
+ new/obj/structure/AIcore/deactivated(loc) //New empty terminal.
+ qdel(src)//Delete AI.
+ return
+ else
+ if(B.brainmob.mind)
+ B.brainmob.mind.transfer_to(src)
+ rename_self("ai")
+ if(mind.special_role)
+ mind.store_memory("As an AI, you must obey your silicon laws above all else. Your objectives will consider you to be dead.")
+ src << "You have been installed as an AI! "
+ src << "You must obey your silicon laws above all else. Your objectives will consider you to be dead."
+
+ src << "You are playing the station's AI. The AI cannot move, but can interact with many objects while viewing them (through cameras)."
+ src << "To look at other parts of the station, click on yourself to get a camera menu."
+ src << "While observing through a camera, you can use most (networked) devices which you can see, such as computers, APCs, intercoms, doors, etc."
+ src << "To use something, simply click on it."
+ src << "Use say :b to speak to your cyborgs through binary."
+ src << "For department channels, use the following say commands:"
+ src << ":o - AI Private, :c - Command, :s - Security, :e - Engineering, :u - Supply, :v - Service, :m - Medical, :n - Science."
+ show_laws()
+ src << "These laws may be changed by other players, or by you being the traitor."
+
+ job = "AI"
+
rename_self("ai")
name = real_name
- anchored = 1
- canmove = 0
- density = 1
- loc = loc
holo_icon = getHologramIcon(icon('icons/mob/AI.dmi',"holo1"))
@@ -116,31 +139,6 @@ var/list/ai_list = list()
/mob/living/silicon/ai/proc/toggle_camera_light, /mob/living/silicon/ai/proc/botcall,\
/mob/living/silicon/ai/proc/control_integrated_radio, /mob/living/silicon/ai/proc/set_automatic_say_channel)
- if(!safety)//Only used by AIize() to successfully spawn an AI.
- if (!B)//If there is no player/brain inside.
- new/obj/structure/AIcore/deactivated(loc)//New empty terminal.
- qdel(src)//Delete AI.
- return
- else
- if (B.brainmob.mind)
- B.brainmob.mind.transfer_to(src)
- rename_self("ai")
- if(mind.special_role)
- mind.store_memory("As an AI, you must obey your silicon laws above all else. Your objectives will consider you to be dead.")
- src << "You have been installed as an AI! "
- src << "You must obey your silicon laws above all else. Your objectives will consider you to be dead."
-
- src << "You are playing the station's AI. The AI cannot move, but can interact with many objects while viewing them (through cameras)."
- src << "To look at other parts of the station, click on yourself to get a camera menu."
- src << "While observing through a camera, you can use most (networked) devices which you can see, such as computers, APCs, intercoms, doors, etc."
- src << "To use something, simply click on it."
- src << "Use say :b to speak to your cyborgs through binary."
- src << "For department channels, use the following say commands:"
- src << ":o - AI Private, :c - Command, :s - Security, :e - Engineering, :u - Supply, :v - Service, :m - Medical, :n - Science."
- show_laws()
- src << "These laws may be changed by other players, or by you being the traitor."
-
- job = "AI"
ai_list += src
shuttle_caller_list += src
@@ -333,7 +331,7 @@ var/list/ai_list = list()
return //won't work if dead
anchored = !anchored // Toggles the anchor
- src << "[anchored ? "You are now anchored." : "You are now unanchored."]"
+ src << "You are now [anchored ? "" : "un"]anchored."
// the message in the [] will change depending whether or not the AI is anchored
/mob/living/silicon/ai/update_canmove() //If the AI dies, mobs won't go through it anymore
diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm
index f968118a12b..46a5ea5ce86 100644
--- a/code/modules/mob/living/silicon/robot/robot.dm
+++ b/code/modules/mob/living/silicon/robot/robot.dm
@@ -50,7 +50,6 @@
var/list/req_access = list(access_robotics)
var/alarms = list("Motion"=list(), "Fire"=list(), "Atmosphere"=list(), "Power"=list(), "Camera"=list(), "Burglar"=list())
- var/viewalerts = 0
var/speed = 0 // VTEC speed boost.
var/magpulse = FALSE // Magboot-like effect.
@@ -315,8 +314,7 @@
uneq_active()
/mob/living/silicon/robot/proc/robot_alerts()
- var/dat = "Current Station Alerts\n"
- dat += "Close
"
+ var/dat = ""
for (var/cat in alarms)
dat += text("[cat]
\n")
var/list/L = alarms[cat]
@@ -324,18 +322,16 @@
for (var/alarm in L)
var/list/alm = L[alarm]
var/area/A = alm[1]
- var/list/sources = alm[3]
dat += ""
dat += text("-- [A.name]")
- if (sources.len > 1)
- dat += text("- [sources.len] sources")
dat += "
\n"
else
dat += "-- All Systems Nominal
\n"
dat += "
\n"
- viewalerts = 1
- src << browse(dat, "window=robotalerts&can_close=0")
+ var/datum/browser/alerts = new(usr, "robotalerts", "Current Station Alerts", 400, 410)
+ alerts.set_content(dat)
+ alerts.open()
/mob/living/silicon/robot/proc/ionpulse()
if(!ionpulse_on)
@@ -407,7 +403,6 @@
C = O
L[A.name] = list(A, (C) ? C : O, list(alarmsource))
queueAlarm(text("--- [class] alarm detected in [A.name]!"), class)
-// if (viewalerts) robot_alerts()
return 1
/mob/living/silicon/robot/cancelAlarm(class, area/A, obj/origin)
@@ -424,7 +419,6 @@
L -= I
if (cleared)
queueAlarm("--- [class] alarm in [A.name] has been cleared.", class, 0)
-// if (viewalerts) robot_alerts()
return !cleared
/mob/living/silicon/robot/attackby(obj/item/weapon/W, mob/user, params)
diff --git a/code/modules/mob/living/simple_animal/hostile/retaliate/frog.dm b/code/modules/mob/living/simple_animal/hostile/retaliate/frog.dm
index 17578eece49..81f40c3b9c6 100644
--- a/code/modules/mob/living/simple_animal/hostile/retaliate/frog.dm
+++ b/code/modules/mob/living/simple_animal/hostile/retaliate/frog.dm
@@ -20,16 +20,23 @@
ventcrawler = 2
faction = list("hostile")
attack_sound = 'sound/effects/Reee.ogg'
+ butcher_results = list(/obj/item/weapon/reagent_containers/food/snacks/nugget = 1)
pass_flags = PASSTABLE | PASSGRILLE | PASSMOB
mob_size = MOB_SIZE_TINY
gold_core_spawnable = 1
-/mob/living/simple_animal/frog/New()
+/mob/living/simple_animal/hostile/retaliate/frog/New()
..()
if(prob(1))
name = "rare frog"
desc = "It seems a little smug."
+ icon_state = "rare_frog"
+ icon_living = "rare_frog"
+ icon_dead = "rare_frog_dead"
+ butcher_results = list(/obj/item/weapon/reagent_containers/food/snacks/nugget = 5)
-/mob/living/simple_animal/hostile/retaliate/frog/Crossed()
- if(!stat)
- playsound(src, 'sound/effects/Huuu.ogg', 100, 1)
\ No newline at end of file
+/mob/living/simple_animal/hostile/retaliate/frog/Crossed(AM as mob|obj)
+ if(!stat && isliving(AM))
+ var/mob/living/L = AM
+ if(L.mob_size > MOB_SIZE_TINY)
+ playsound(src, 'sound/effects/Huuu.ogg', 50, 1)
\ No newline at end of file
diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm
index d43314eb8f5..e25ef50c5a4 100644
--- a/code/modules/power/apc.dm
+++ b/code/modules/power/apc.dm
@@ -547,6 +547,7 @@
user << "You replace the damaged APC frame with a new one."
qdel(W)
stat &= ~BROKEN
+ obj_integrity = max_integrity
malfai = null
malfhack = 0
if (opened==2)
diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm
index 8988e119ca2..d4006cc4f16 100644
--- a/code/modules/power/cable.dm
+++ b/code/modules/power/cable.dm
@@ -93,22 +93,12 @@ By design, d1 is the smallest direction and d2 is the highest
cable_list -= src //remove it from global cable list
return ..() // then go ahead and delete the cable
-/obj/structure/cable/blob_act(obj/structure/blob/B)
- if(invisibility != INVISIBILITY_MAXIMUM)
- qdel(src)
-
/obj/structure/cable/deconstruct(disassembled = TRUE)
if(!(flags & NODECONSTRUCT))
var/turf/T = loc
stored.forceMove(T)
qdel(src)
-/obj/structure/cable/fire_act(exposed_temperature, exposed_volume)
- var/turf/T = src.loc
- if(T && T.intact) //protected from fire when hidden behind a floor.
- return
- ..()
-
///////////////////////////////////
// General procedures
///////////////////////////////////
diff --git a/code/modules/power/engine.dm b/code/modules/power/engine.dm
deleted file mode 100644
index dc01f9f5a37..00000000000
--- a/code/modules/power/engine.dm
+++ /dev/null
@@ -1,16 +0,0 @@
-/turf/open/floor/engine/attack_paw(mob/user)
- return src.attack_hand(user)
-
-/turf/open/floor/engine/attack_hand(mob/user)
- user.Move_Pulled(src)
-
-/turf/open/floor/engine/ex_act(severity, target)
- contents_explosion(severity, target)
- switch(severity)
- if(1)
- ChangeTurf(src.baseturf)
- if(2)
- if(prob(50))
- ChangeTurf(src.baseturf)
- else
- return
\ No newline at end of file
diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm
index 6ad8d8eba08..9584b5487a6 100644
--- a/code/modules/power/lighting.dm
+++ b/code/modules/power/lighting.dm
@@ -560,7 +560,7 @@
var/status = 0 // LIGHT_OK, LIGHT_BURNED or LIGHT_BROKEN
var/base_state
var/switchcount = 0 // number of times switched
- materials = list(MAT_METAL=60)
+ materials = list(MAT_GLASS=100)
var/rigged = 0 // true if rigged to explode
var/brightness = 2 //how much light it gives off
@@ -570,7 +570,6 @@
icon_state = "ltube"
base_state = "ltube"
item_state = "c_tube"
- materials = list(MAT_GLASS=100)
brightness = 8
/obj/item/weapon/light/bulb
@@ -579,7 +578,6 @@
icon_state = "lbulb"
base_state = "lbulb"
item_state = "contvapour"
- materials = list(MAT_GLASS=100)
brightness = 4
/obj/item/weapon/light/throw_impact(atom/hit_atom)
diff --git a/code/modules/reagents/chemistry/recipes/slime_extracts.dm b/code/modules/reagents/chemistry/recipes/slime_extracts.dm
index b126e44344b..cc5077f30b8 100644
--- a/code/modules/reagents/chemistry/recipes/slime_extracts.dm
+++ b/code/modules/reagents/chemistry/recipes/slime_extracts.dm
@@ -1,21 +1,30 @@
+/datum/chemical_reaction/slime
+
+/datum/chemical_reaction/slime/on_reaction(datum/reagents/holder)
+ var/obj/item/slime_extract/M = holder.my_atom
+ if(M.Uses <= 0)
+ if (!results.len) //if the slime doesn't output chemicals
+ qdel(M)
+
//Grey
-/datum/chemical_reaction/slimespawn
+/datum/chemical_reaction/slime/slimespawn
name = "Slime Spawn"
id = "m_spawn"
required_reagents = list("plasma" = 1)
required_container = /obj/item/slime_extract/grey
required_other = 1
-/datum/chemical_reaction/slimespawn/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimespawn/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/mob/living/simple_animal/slime/S
S = new(get_turf(holder.my_atom), "grey")
S.visible_message("Infused with plasma, the \
core begins to quiver and grow, and soon a new baby slime \
emerges from it!")
+ ..()
-/datum/chemical_reaction/slimeinaprov
+/datum/chemical_reaction/slime/slimeinaprov
name = "Slime epinephrine"
id = "m_inaprov"
results = list("epinephrine" = 3)
@@ -23,24 +32,26 @@
required_other = 1
required_container = /obj/item/slime_extract/grey
-/datum/chemical_reaction/slimeinaprov/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimeinaprov/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
+ ..()
-/datum/chemical_reaction/slimemonkey
+/datum/chemical_reaction/slime/slimemonkey
name = "Slime Monkey"
id = "m_monkey"
required_reagents = list("blood" = 1)
required_container = /obj/item/slime_extract/grey
required_other = 1
-/datum/chemical_reaction/slimemonkey/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimemonkey/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
for(var/i = 1, i <= 3, i++)
var /obj/item/weapon/reagent_containers/food/snacks/monkeycube/M = new /obj/item/weapon/reagent_containers/food/snacks/monkeycube
M.loc = get_turf(holder.my_atom)
+ ..()
//Green
-/datum/chemical_reaction/slimemutate
+/datum/chemical_reaction/slime/slimemutate
name = "Mutation Toxin"
id = "mutationtoxin"
results = list("mutationtoxin" = 1)
@@ -48,11 +59,12 @@
required_other = 1
required_container = /obj/item/slime_extract/green
-/datum/chemical_reaction/slimemutate/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimemutate/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
+ ..()
//Mutated Green
-/datum/chemical_reaction/slimemutate_unstable
+/datum/chemical_reaction/slime/slimemutate_unstable
name = "Unstable Mutation Toxin"
id = "unstablemutationtoxin"
results = list("unstablemutationtoxin" = 1)
@@ -61,78 +73,87 @@
required_container = /obj/item/slime_extract/green
mix_message = "The mixture rapidly expands and contracts, its appearance shifting into a sickening green."
-/datum/chemical_reaction/slimemutate_unstable/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimemutate_unstable/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
+ ..()
//Metal
-/datum/chemical_reaction/slimemetal
+/datum/chemical_reaction/slime/slimemetal
name = "Slime Metal"
id = "m_metal"
required_reagents = list("plasma" = 1)
required_container = /obj/item/slime_extract/metal
required_other = 1
-/datum/chemical_reaction/slimemetal/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimemetal/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/turf/location = get_turf(holder.my_atom)
new /obj/item/stack/sheet/plasteel (location, 5)
new /obj/item/stack/sheet/metal (location, 15)
+ ..()
-/datum/chemical_reaction/slimeglass
+/datum/chemical_reaction/slime/slimeglass
name = "Slime Glass"
id = "m_glass"
required_reagents = list("water" = 1)
required_container = /obj/item/slime_extract/metal
required_other = 1
-/datum/chemical_reaction/slimeglass/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimeglass/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/turf/location = get_turf(holder.my_atom)
new /obj/item/stack/sheet/rglass (location, 5)
new /obj/item/stack/sheet/glass (location, 15)
+ ..()
//Gold
-/datum/chemical_reaction/slimecrit
+/datum/chemical_reaction/slime/slimecrit
name = "Slime Crit"
id = "m_tele"
required_reagents = list("plasma" = 1)
required_container = /obj/item/slime_extract/gold
required_other = 1
-/datum/chemical_reaction/slimecrit/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimecrit/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/turf/T = get_turf(holder.my_atom)
T.visible_message("The slime extract begins to vibrate violently !")
addtimer(src, "chemical_mob_spawn", 50, FALSE, holder, 5, "Gold Slime")
+ spawn(60)
+ ..()
-/datum/chemical_reaction/slimecritlesser
+/datum/chemical_reaction/slime/slimecritlesser
name = "Slime Crit Lesser"
id = "m_tele3"
required_reagents = list("blood" = 1)
required_container = /obj/item/slime_extract/gold
required_other = 1
-/datum/chemical_reaction/slimecritlesser/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimecritlesser/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/turf/T = get_turf(holder.my_atom)
T.visible_message("The slime extract begins to vibrate violently !")
addtimer(src, "chemical_mob_spawn", 50, FALSE, holder, 3, "Lesser Gold Slime", "neutral")
+ spawn(60)
+ ..()
-/datum/chemical_reaction/slimecritfriendly
+/datum/chemical_reaction/slime/slimecritfriendly
name = "Slime Crit Friendly"
id = "m_tele5"
required_reagents = list("water" = 1)
required_container = /obj/item/slime_extract/gold
required_other = 1
-/datum/chemical_reaction/slimecritfriendly/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimecritfriendly/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/turf/T = get_turf(holder.my_atom)
T.visible_message("The slime extract begins to vibrate adorably !")
addtimer(src, "chemical_mob_spawn", 50, FALSE, holder, 1, "Friendly Gold Slime", "neutral")
+ spawn(60)
+ ..()
//Silver
-/datum/chemical_reaction/slimebork
+/datum/chemical_reaction/slime/slimebork
name = "Slime Bork"
id = "m_tele2"
required_reagents = list("plasma" = 1)
@@ -177,16 +198,17 @@
if(prob(50))
for(var/j = 1, j <= rand(1, 3), j++)
step(B, pick(NORTH,SOUTH,EAST,WEST))
+ ..()
-/datum/chemical_reaction/slimebork2
+/datum/chemical_reaction/slime/slimebork2
name = "Slime Bork 2"
id = "m_tele4"
required_reagents = list("water" = 1)
required_container = /obj/item/slime_extract/silver
required_other = 1
-/datum/chemical_reaction/slimebork2/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimebork2/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/list/borks = subtypesof(/obj/item/weapon/reagent_containers/food/drinks)
@@ -205,10 +227,11 @@
if(prob(50))
for(var/j = 1, j <= rand(1, 3), j++)
step(B, pick(NORTH,SOUTH,EAST,WEST))
+ ..()
//Blue
-/datum/chemical_reaction/slimefrost
+/datum/chemical_reaction/slime/slimefrost
name = "Slime Frost Oil"
id = "m_frostoil"
results = list("frostoil" = 10)
@@ -216,24 +239,26 @@
required_container = /obj/item/slime_extract/blue
required_other = 1
-/datum/chemical_reaction/slimefrost/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimefrost/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
+ ..()
-/datum/chemical_reaction/slimestabilizer
+/datum/chemical_reaction/slime/slimestabilizer
name = "Slime Stabilizer"
id = "m_slimestabilizer"
required_reagents = list("blood" = 1)
required_container = /obj/item/slime_extract/blue
required_other = 1
-/datum/chemical_reaction/slimestabilizer/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimestabilizer/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/obj/item/slimepotion/stabilizer/P = new /obj/item/slimepotion/stabilizer
P.loc = get_turf(holder.my_atom)
+ ..()
-/datum/chemical_reaction/slimefoam
+/datum/chemical_reaction/slime/slimefoam
name = "Slime Foam"
id = "m_foam"
results = list("fluorosurfactant" = 20, "water" = 20)
@@ -241,44 +266,50 @@
required_container = /obj/item/slime_extract/blue
required_other = 1
-/datum/chemical_reaction/slimefoam/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimefoam/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
+ ..()
//Dark Blue
-/datum/chemical_reaction/slimefreeze
+/datum/chemical_reaction/slime/slimefreeze
name = "Slime Freeze"
id = "m_freeze"
required_reagents = list("plasma" = 1)
required_container = /obj/item/slime_extract/darkblue
required_other = 1
-/datum/chemical_reaction/slimefreeze/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimefreeze/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/turf/T = get_turf(holder.my_atom)
T.visible_message("The slime extract begins to vibrate adorably!")
addtimer(src, "freeze", 50, FALSE, holder)
-/datum/chemical_reaction/slimefreeze/proc/freeze(datum/reagents/holder)
+ spawn(60)
+ ..()
+
+/datum/chemical_reaction/slime/slimefreeze/proc/freeze(datum/reagents/holder)
if(holder && holder.my_atom)
var/turf/open/T = get_turf(holder.my_atom)
if(istype(T))
T.atmos_spawn_air("freon=50;TEMP=120")
-/datum/chemical_reaction/slimefireproof
+
+/datum/chemical_reaction/slime/slimefireproof
name = "Slime Fireproof"
id = "m_fireproof"
required_reagents = list("water" = 1)
required_container = /obj/item/slime_extract/darkblue
required_other = 1
-/datum/chemical_reaction/slimefireproof/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimefireproof/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/obj/item/slimepotion/fireproof/P = new /obj/item/slimepotion/fireproof
P.loc = get_turf(holder.my_atom)
+ ..()
//Orange
-/datum/chemical_reaction/slimecasp
+/datum/chemical_reaction/slime/slimecasp
name = "Slime Capsaicin Oil"
id = "m_capsaicinoil"
results = list("capsaicin" = 10)
@@ -286,31 +317,33 @@
required_container = /obj/item/slime_extract/orange
required_other = 1
-/datum/chemical_reaction/slimecasp/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimecasp/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
+ ..()
-/datum/chemical_reaction/slimefire
+/datum/chemical_reaction/slime/slimefire
name = "Slime fire"
id = "m_fire"
required_reagents = list("plasma" = 1)
required_container = /obj/item/slime_extract/orange
required_other = 1
-/datum/chemical_reaction/slimefire/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimefire/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/turf/TU = get_turf(holder.my_atom)
TU.visible_message("The slime extract begins to vibrate adorably!")
addtimer(src, "slime_burn", 50, FALSE, holder)
+ spawn(60)
+ ..()
-
-/datum/chemical_reaction/slimefire/proc/slime_burn(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimefire/proc/slime_burn(datum/reagents/holder)
if(holder && holder.my_atom)
var/turf/open/T = get_turf(holder.my_atom)
if(istype(T))
T.atmos_spawn_air("plasma=50;TEMP=1000")
-/datum/chemical_reaction/slimesmoke
+/datum/chemical_reaction/slime/slimesmoke
name = "Slime Smoke"
id = "m_smoke"
results = list("phosphorus" = 10, "potassium" = 10, "sugar" = 10)
@@ -318,64 +351,69 @@
required_container = /obj/item/slime_extract/orange
required_other = 1
-/datum/chemical_reaction/slimesmoke/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimesmoke/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
+ ..()
//Yellow
-/datum/chemical_reaction/slimeoverload
+/datum/chemical_reaction/slime/slimeoverload
name = "Slime EMP"
id = "m_emp"
required_reagents = list("blood" = 1)
required_container = /obj/item/slime_extract/yellow
required_other = 1
-/datum/chemical_reaction/slimeoverload/on_reaction(datum/reagents/holder, created_volume)
+/datum/chemical_reaction/slime/slimeoverload/on_reaction(datum/reagents/holder, created_volume)
feedback_add_details("slime_cores_used","[type]")
empulse(get_turf(holder.my_atom), 3, 7)
+ ..()
-/datum/chemical_reaction/slimecell
+/datum/chemical_reaction/slime/slimecell
name = "Slime Powercell"
id = "m_cell"
required_reagents = list("plasma" = 1)
required_container = /obj/item/slime_extract/yellow
required_other = 1
-/datum/chemical_reaction/slimecell/on_reaction(datum/reagents/holder, created_volume)
+/datum/chemical_reaction/slime/slimecell/on_reaction(datum/reagents/holder, created_volume)
feedback_add_details("slime_cores_used","[type]")
var/obj/item/weapon/stock_parts/cell/high/slime/P = new /obj/item/weapon/stock_parts/cell/high/slime
P.loc = get_turf(holder.my_atom)
+ ..()
-/datum/chemical_reaction/slimeglow
+/datum/chemical_reaction/slime/slimeglow
name = "Slime Glow"
id = "m_glow"
required_reagents = list("water" = 1)
required_container = /obj/item/slime_extract/yellow
required_other = 1
-/datum/chemical_reaction/slimeglow/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimeglow/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/turf/T = get_turf(holder.my_atom)
T.visible_message("The slime begins to emit a soft light. Squeezing it will cause it to grow brightly.")
var/obj/item/device/flashlight/slime/F = new /obj/item/device/flashlight/slime
F.loc = get_turf(holder.my_atom)
+ ..()
//Purple
-/datum/chemical_reaction/slimepsteroid
+/datum/chemical_reaction/slime/slimepsteroid
name = "Slime Steroid"
id = "m_steroid"
required_reagents = list("plasma" = 1)
required_container = /obj/item/slime_extract/purple
required_other = 1
-/datum/chemical_reaction/slimepsteroid/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimepsteroid/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/obj/item/slimepotion/steroid/P = new /obj/item/slimepotion/steroid
P.loc = get_turf(holder.my_atom)
+ ..()
-/datum/chemical_reaction/slimejam
+/datum/chemical_reaction/slime/slimejam
name = "Slime Jam"
id = "m_jam"
results = list("slimejelly" = 10)
@@ -383,91 +421,98 @@
required_container = /obj/item/slime_extract/purple
required_other = 1
-/datum/chemical_reaction/slimejam/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimejam/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
+ ..()
//Dark Purple
-/datum/chemical_reaction/slimeplasma
+/datum/chemical_reaction/slime/slimeplasma
name = "Slime Plasma"
id = "m_plasma"
required_reagents = list("plasma" = 1)
required_container = /obj/item/slime_extract/darkpurple
required_other = 1
-/datum/chemical_reaction/slimeplasma/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimeplasma/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/turf/location = get_turf(holder.my_atom)
new /obj/item/stack/sheet/mineral/plasma (location, 3)
+ ..()
//Red
-/datum/chemical_reaction/slimemutator
+/datum/chemical_reaction/slime/slimemutator
name = "Slime Mutator"
id = "m_slimemutator"
required_reagents = list("plasma" = 1)
required_container = /obj/item/slime_extract/red
required_other = 1
-/datum/chemical_reaction/slimemutator/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimemutator/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/obj/item/slimepotion/mutator/P = new /obj/item/slimepotion/mutator
P.loc = get_turf(holder.my_atom)
+ ..()
-/datum/chemical_reaction/slimebloodlust
+/datum/chemical_reaction/slime/slimebloodlust
name = "Bloodlust"
id = "m_bloodlust"
required_reagents = list("blood" = 1)
required_container = /obj/item/slime_extract/red
required_other = 1
-/datum/chemical_reaction/slimebloodlust/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimebloodlust/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
for(var/mob/living/simple_animal/slime/slime in viewers(get_turf(holder.my_atom), null))
slime.rabid = 1
slime.visible_message("The [slime] is driven into a frenzy!")
+ ..()
-/datum/chemical_reaction/slimespeed
+/datum/chemical_reaction/slime/slimespeed
name = "Slime Speed"
id = "m_speed"
required_reagents = list("water" = 1)
required_container = /obj/item/slime_extract/red
required_other = 1
-/datum/chemical_reaction/slimespeed/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimespeed/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/obj/item/slimepotion/speed/P = new /obj/item/slimepotion/speed
P.loc = get_turf(holder.my_atom)
+ ..()
//Pink
-/datum/chemical_reaction/docility
+/datum/chemical_reaction/slime/docility
name = "Docility Potion"
id = "m_potion"
required_reagents = list("plasma" = 1)
required_container = /obj/item/slime_extract/pink
required_other = 1
-/datum/chemical_reaction/docility/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/docility/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/obj/item/slimepotion/docility/P = new /obj/item/slimepotion/docility
P.loc = get_turf(holder.my_atom)
+ ..()
-/datum/chemical_reaction/gender
+/datum/chemical_reaction/slime/gender
name = "Gender Potion"
id = "m_gender"
required_reagents = list("blood" = 1)
required_container = /obj/item/slime_extract/pink
required_other = 1
-/datum/chemical_reaction/gender/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/gender/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/obj/item/slimepotion/genderchange/G = new /obj/item/slimepotion/genderchange
G.loc = get_turf(holder.my_atom)
+ ..()
//Black
-/datum/chemical_reaction/slimemutate2
+/datum/chemical_reaction/slime/slimemutate2
name = "Advanced Mutation Toxin"
id = "mutationtoxin2"
results = list("amutationtoxin" = 1)
@@ -475,18 +520,19 @@
required_other = 1
required_container = /obj/item/slime_extract/black
-/datum/chemical_reaction/slimemutate2/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimemutate2/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
+ ..()
//Oil
-/datum/chemical_reaction/slimeexplosion
+/datum/chemical_reaction/slime/slimeexplosion
name = "Slime Explosion"
id = "m_explosion"
required_reagents = list("plasma" = 1)
required_container = /obj/item/slime_extract/oil
required_other = 1
-/datum/chemical_reaction/slimeexplosion/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimeexplosion/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/turf/T = get_turf(holder.my_atom)
var/lastkey = holder.my_atom.fingerprintslast
@@ -498,13 +544,15 @@
log_game("Slime Explosion reaction started at [T.loc.name] ([T.x],[T.y],[T.z]). Last Fingerprint: [lastkey ? lastkey : "N/A"].")
T.visible_message("The slime extract begins to vibrate violently !")
addtimer(src, "boom", 50, FALSE, holder)
+ spawn(60)
+ ..()
-/datum/chemical_reaction/slimeexplosion/proc/boom(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimeexplosion/proc/boom(datum/reagents/holder)
if(holder && holder.my_atom)
explosion(get_turf(holder.my_atom), 1 ,3, 6)
-/datum/chemical_reaction/slimecornoil
+/datum/chemical_reaction/slime/slimecornoil
name = "Slime Corn Oil"
id = "m_cornoil"
results = list("cornoil" = 10)
@@ -512,194 +560,208 @@
required_container = /obj/item/slime_extract/oil
required_other = 1
-/datum/chemical_reaction/slimecornoil/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimecornoil/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
+ ..()
//Light Pink
-/datum/chemical_reaction/slimepotion2
+/datum/chemical_reaction/slime/slimepotion2
name = "Slime Potion 2"
id = "m_potion2"
required_container = /obj/item/slime_extract/lightpink
required_reagents = list("plasma" = 1)
required_other = 1
-/datum/chemical_reaction/slimepotion2/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimepotion2/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/obj/item/slimepotion/sentience/P = new /obj/item/slimepotion/sentience
P.loc = get_turf(holder.my_atom)
+ ..()
//Adamantine
-/datum/chemical_reaction/slimegolem
+/datum/chemical_reaction/slime/slimegolem
name = "Slime Golem"
id = "m_golem"
required_reagents = list("plasma" = 1)
required_container = /obj/item/slime_extract/adamantine
required_other = 1
-/datum/chemical_reaction/slimegolem/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimegolem/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/obj/effect/golemrune/Z = new /obj/effect/golemrune
Z.loc = get_turf(holder.my_atom)
notify_ghosts("Golem rune created in [get_area(Z)].", 'sound/effects/ghost2.ogg', source = Z)
+ ..()
//Bluespace
-/datum/chemical_reaction/slimefloor2
+/datum/chemical_reaction/slime/slimefloor2
name = "Bluespace Floor"
id = "m_floor2"
required_reagents = list("blood" = 1)
required_container = /obj/item/slime_extract/bluespace
required_other = 1
-/datum/chemical_reaction/slimefloor2/on_reaction(datum/reagents/holder, created_volume)
+/datum/chemical_reaction/slime/slimefloor2/on_reaction(datum/reagents/holder, created_volume)
feedback_add_details("slime_cores_used","[type]")
var/obj/item/stack/tile/bluespace/P = new /obj/item/stack/tile/bluespace
P.amount = 25
P.loc = get_turf(holder.my_atom)
+ ..()
-/datum/chemical_reaction/slimecrystal
+/datum/chemical_reaction/slime/slimecrystal
name = "Slime Crystal"
id = "m_crystal"
required_reagents = list("plasma" = 1)
required_container = /obj/item/slime_extract/bluespace
required_other = 1
-/datum/chemical_reaction/slimecrystal/on_reaction(datum/reagents/holder, created_volume)
+/datum/chemical_reaction/slime/slimecrystal/on_reaction(datum/reagents/holder, created_volume)
feedback_add_details("slime_cores_used","[type]")
if(holder.my_atom)
var/obj/item/weapon/ore/bluespace_crystal/BC = new(get_turf(holder.my_atom))
BC.visible_message("The [BC.name] appears out of thin air!")
+ ..()
//Cerulean
-/datum/chemical_reaction/slimepsteroid2
+/datum/chemical_reaction/slime/slimepsteroid2
name = "Slime Steroid 2"
id = "m_steroid2"
required_reagents = list("plasma" = 1)
required_container = /obj/item/slime_extract/cerulean
required_other = 1
-/datum/chemical_reaction/slimepsteroid2/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimepsteroid2/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/obj/item/slimepotion/enhancer/P = new /obj/item/slimepotion/enhancer
P.loc = get_turf(holder.my_atom)
+ ..()
-/datum/chemical_reaction/slime_territory
+/datum/chemical_reaction/slime/slime_territory
name = "Slime Territory"
id = "s_territory"
required_reagents = list("blood" = 1)
required_container = /obj/item/slime_extract/cerulean
required_other = 1
-/datum/chemical_reaction/slime_territory/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slime_territory/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/obj/item/areaeditor/blueprints/slime/P = new /obj/item/areaeditor/blueprints/slime
P.loc = get_turf(holder.my_atom)
+ ..()
//Sepia
-/datum/chemical_reaction/slimestop
+/datum/chemical_reaction/slime/slimestop
name = "Slime Stop"
id = "m_stop"
required_reagents = list("plasma" = 1)
required_container = /obj/item/slime_extract/sepia
required_other = 1
-/datum/chemical_reaction/slimestop/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimestop/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/mob/mob = get_mob_by_key(holder.my_atom.fingerprintslast)
var/obj/effect/timestop/T = new /obj/effect/timestop
T.loc = get_turf(holder.my_atom)
T.immune += mob
T.timestop()
+ ..()
-/datum/chemical_reaction/slimecamera
+/datum/chemical_reaction/slime/slimecamera
name = "Slime Camera"
id = "m_camera"
required_reagents = list("water" = 1)
required_container = /obj/item/slime_extract/sepia
required_other = 1
-/datum/chemical_reaction/slimecamera/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimecamera/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/obj/item/device/camera/P = new /obj/item/device/camera
P.loc = get_turf(holder.my_atom)
var/obj/item/device/camera_film/Z = new /obj/item/device/camera_film
Z.loc = get_turf(holder.my_atom)
+ ..()
-/datum/chemical_reaction/slimefloor
+/datum/chemical_reaction/slime/slimefloor
name = "Sepia Floor"
id = "m_floor"
required_reagents = list("blood" = 1)
required_container = /obj/item/slime_extract/sepia
required_other = 1
-/datum/chemical_reaction/slimefloor/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimefloor/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/obj/item/stack/tile/sepia/P = new /obj/item/stack/tile/sepia
P.amount = 25
P.loc = get_turf(holder.my_atom)
+ ..()
//Pyrite
-/datum/chemical_reaction/slimepaint
+/datum/chemical_reaction/slime/slimepaint
name = "Slime Paint"
id = "s_paint"
required_reagents = list("plasma" = 1)
required_container = /obj/item/slime_extract/pyrite
required_other = 1
-/datum/chemical_reaction/slimepaint/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimepaint/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/list/paints = subtypesof(/obj/item/weapon/paint)
var/chosen = pick(paints)
var/obj/P = new chosen
if(P)
P.loc = get_turf(holder.my_atom)
+ ..()
-/datum/chemical_reaction/slimecrayon
+/datum/chemical_reaction/slime/slimecrayon
name = "Slime Crayon"
id = "s_crayon"
required_reagents = list("blood" = 1)
required_container = /obj/item/slime_extract/pyrite
required_other = 1
-/datum/chemical_reaction/slimecrayon/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimecrayon/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/list/crayons = difflist(subtypesof(/obj/item/toy/crayon),typesof(/obj/item/toy/crayon/spraycan))
var/chosen = pick(crayons)
var/obj/P = new chosen
if(P)
P.loc = get_turf(holder.my_atom)
+ ..()
//Rainbow :o)
-/datum/chemical_reaction/slimeRNG
+/datum/chemical_reaction/slime/slimeRNG
name = "Random Core"
id = "slimerng"
required_reagents = list("plasma" = 1)
required_other = 1
required_container = /obj/item/slime_extract/rainbow
-/datum/chemical_reaction/slimeRNG/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slimeRNG/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/mob/living/simple_animal/slime/random/S
S = new(get_turf(holder.my_atom))
S.visible_message("Infused with plasma, the \
core begins to quiver and grow, and soon a new baby slime emerges \
from it!")
+ ..()
-/datum/chemical_reaction/slime_transfer
+/datum/chemical_reaction/slime/slime_transfer
name = "Transfer Potion"
id = "slimetransfer"
required_reagents = list("blood" = 1)
required_other = 1
required_container = /obj/item/slime_extract/rainbow
-/datum/chemical_reaction/slime_transfer/on_reaction(datum/reagents/holder)
+/datum/chemical_reaction/slime/slime_transfer/on_reaction(datum/reagents/holder)
feedback_add_details("slime_cores_used","[type]")
var/obj/item/slimepotion/transference/P = new /obj/item/slimepotion/transference
P.loc = get_turf(holder.my_atom)
+ ..()
diff --git a/code/modules/recycling/disposal-structures.dm b/code/modules/recycling/disposal-structures.dm
index 0389b87fd99..0e8751652fc 100644
--- a/code/modules/recycling/disposal-structures.dm
+++ b/code/modules/recycling/disposal-structures.dm
@@ -292,13 +292,6 @@
return 0
. = ..()
-/obj/structure/disposalpipe/fire_act(exposed_temperature, exposed_volume)
- var/turf/T = src.loc
- if(T && T.intact) //protected from fire when hidden behind a floor.
- return
- ..()
-
-
//attack by item
//weldingtool: unfasten and convert to obj/disposalconstruct
diff --git a/code/modules/research/designs/autolathe_designs.dm b/code/modules/research/designs/autolathe_designs.dm
index 5ccea90968e..1768b908766 100644
--- a/code/modules/research/designs/autolathe_designs.dm
+++ b/code/modules/research/designs/autolathe_designs.dm
@@ -499,7 +499,7 @@
name = "Light tube"
id = "light_tube"
build_type = AUTOLATHE
- materials = list(MAT_METAL = 60, MAT_GLASS = 100)
+ materials = list(MAT_GLASS = 100)
build_path = /obj/item/weapon/light/tube
category = list("initial", "Construction")
@@ -507,7 +507,7 @@
name = "Light bulb"
id = "light_bulb"
build_type = AUTOLATHE
- materials = list(MAT_METAL = 60, MAT_GLASS = 100)
+ materials = list(MAT_GLASS = 100)
build_path = /obj/item/weapon/light/bulb
category = list("initial", "Construction")
diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm
index 8afa443751b..b0ee4fc1f62 100644
--- a/code/modules/research/xenobiology/xenobiology.dm
+++ b/code/modules/research/xenobiology/xenobiology.dm
@@ -625,13 +625,6 @@
turf_type = /turf/open/floor/bluespace
-/turf/open/floor/bluespace
- slowdown = -1
- icon_state = "bluespace"
- desc = "Through a series of micro-teleports these tiles let people move at incredible speeds"
- floor_tile = /obj/item/stack/tile/bluespace
-
-
/obj/item/stack/tile/sepia
name = "sepia floor tile"
singular_name = "floor tile"
@@ -648,13 +641,6 @@
turf_type = /turf/open/floor/sepia
-/turf/open/floor/sepia
- slowdown = 2
- icon_state = "sepia"
- desc = "Time seems to flow very slowly around these tiles"
- floor_tile = /obj/item/stack/tile/sepia
-
-
/obj/item/areaeditor/blueprints/slime
name = "cerulean prints"
desc = "A one use yet of blueprints made of jelly like organic material. Renaming an area to 'Xenobiology Lab' will extend the reach of the management console."
diff --git a/code/modules/shuttle/shuttle.dm b/code/modules/shuttle/shuttle.dm
index 770a1673ac2..d513b4c3dd5 100644
--- a/code/modules/shuttle/shuttle.dm
+++ b/code/modules/shuttle/shuttle.dm
@@ -669,22 +669,3 @@
. += " towards [dst ? dst.name : "unknown location"] ([timeLeft(600)] minutes)"
#undef DOCKING_PORT_HIGHLIGHT
-
-/turf/proc/copyTurf(turf/T)
- if(T.type != type)
- var/obj/O
- if(underlays.len) //we have underlays, which implies some sort of transparency, so we want to a snapshot of the previous turf as an underlay
- O = new()
- O.underlays.Add(T)
- T.ChangeTurf(type)
- if(underlays.len)
- T.underlays = O.underlays
- if(T.icon_state != icon_state)
- T.icon_state = icon_state
- if(T.icon != icon)
- T.icon = icon
- if(T.color != color)
- T.color = color
- if(T.dir != dir)
- T.setDir(dir)
- return T
diff --git a/html/changelog.html b/html/changelog.html
index 47b7b615a98..c0816186853 100644
--- a/html/changelog.html
+++ b/html/changelog.html
@@ -73,6 +73,7 @@
- Flora now spawns in lavaland tunnels, they can be harvested with a knife.
- Flora have a range of effects, be careful what you eat!
+ - You harvest flora on lavaland with your hands, not a knife. My bad.
Shadowlight213 updated:
diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml
index 36dd6056668..762ecd34217 100644
--- a/html/changelogs/.all_changelog.yml
+++ b/html/changelogs/.all_changelog.yml
@@ -7354,5 +7354,6 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py.
Papa Bones:
- rscadd: Flora now spawns in lavaland tunnels, they can be harvested with a knife.
- rscadd: Flora have a range of effects, be careful what you eat!
+ - bugfix: You harvest flora on lavaland with your hands, not a knife. My bad.
Shadowlight213:
- rscadd: Cargo can order the antimatter engine
diff --git a/html/changelogs/AutoChangeLog-pr-20856.yml b/html/changelogs/AutoChangeLog-pr-20856.yml
new file mode 100644
index 00000000000..a47371122b1
--- /dev/null
+++ b/html/changelogs/AutoChangeLog-pr-20856.yml
@@ -0,0 +1,4 @@
+author: "Joan"
+delete-after: True
+changes:
+ - rscadd: "You can now deconstruct AI cores that contain no actual AI."
diff --git a/html/changelogs/AutoChangeLog-pr-20892.yml b/html/changelogs/AutoChangeLog-pr-20892.yml
new file mode 100644
index 00000000000..c0a05434653
--- /dev/null
+++ b/html/changelogs/AutoChangeLog-pr-20892.yml
@@ -0,0 +1,4 @@
+author: "WJohnston"
+delete-after: True
+changes:
+ - imageadd: "Recolored and resprited candles and ID cards. Folders should have improved color contrast."
diff --git a/html/changelogs/AutoChangeLog-pr-20899.yml b/html/changelogs/AutoChangeLog-pr-20899.yml
new file mode 100644
index 00000000000..562d06b64bc
--- /dev/null
+++ b/html/changelogs/AutoChangeLog-pr-20899.yml
@@ -0,0 +1,4 @@
+author: "Cyberboss"
+delete-after: True
+changes:
+ - bugfix: "Fixed motion alarms instantly triggering and de/un/re/triggering"
diff --git a/html/changelogs/AutoChangeLog-pr-20902.yml b/html/changelogs/AutoChangeLog-pr-20902.yml
new file mode 100644
index 00000000000..c65a18392fc
--- /dev/null
+++ b/html/changelogs/AutoChangeLog-pr-20902.yml
@@ -0,0 +1,4 @@
+author: "XDTM"
+delete-after: True
+changes:
+ - rscadd: "Exhausted slime extracts will now dissolve instead of leaving useless used slime extracts."
diff --git a/html/changelogs/AutoChangeLog-pr-20908.yml b/html/changelogs/AutoChangeLog-pr-20908.yml
new file mode 100644
index 00000000000..4099b4dc807
--- /dev/null
+++ b/html/changelogs/AutoChangeLog-pr-20908.yml
@@ -0,0 +1,4 @@
+author: "Cyberboss"
+delete-after: True
+changes:
+ - bugfix: "Airlock speed mode now works"
diff --git a/html/changelogs/AutoChangeLog-pr-20909.yml b/html/changelogs/AutoChangeLog-pr-20909.yml
new file mode 100644
index 00000000000..859f249f215
--- /dev/null
+++ b/html/changelogs/AutoChangeLog-pr-20909.yml
@@ -0,0 +1,5 @@
+author: "XDTM"
+delete-after: True
+changes:
+ - tweak: "Airlocks are now immune to any damage below 20, to prevent pickaxe prison breaks."
+ - tweak: "High-Security Airlocks, such as the vault or the AI core's airlocks, are now immune to any damage below 30."
diff --git a/html/changelogs/AutoChangeLog-pr-20921.yml b/html/changelogs/AutoChangeLog-pr-20921.yml
deleted file mode 100644
index 231f35236a7..00000000000
--- a/html/changelogs/AutoChangeLog-pr-20921.yml
+++ /dev/null
@@ -1,4 +0,0 @@
-author: "Papa Bones"
-delete-after: True
-changes:
- - bugfix: "You harvest flora on lavaland with your hands, not a knife. My bad."
diff --git a/icons/mob/animal.dmi b/icons/mob/animal.dmi
index 3f81210caf9..84ee80c19f0 100644
Binary files a/icons/mob/animal.dmi and b/icons/mob/animal.dmi differ
diff --git a/icons/mob/augments.dmi b/icons/mob/augments.dmi
index 7ab1b3893d2..5bdfc04f2dc 100644
Binary files a/icons/mob/augments.dmi and b/icons/mob/augments.dmi differ
diff --git a/icons/obj/aicards.dmi b/icons/obj/aicards.dmi
index 423623ee482..163dbd6bee6 100644
Binary files a/icons/obj/aicards.dmi and b/icons/obj/aicards.dmi differ
diff --git a/icons/obj/ammo.dmi b/icons/obj/ammo.dmi
index 756d94b9496..07958edf38c 100644
Binary files a/icons/obj/ammo.dmi and b/icons/obj/ammo.dmi differ
diff --git a/icons/obj/bloodpack.dmi b/icons/obj/bloodpack.dmi
index bd1995d1633..423b5bb641e 100644
Binary files a/icons/obj/bloodpack.dmi and b/icons/obj/bloodpack.dmi differ
diff --git a/icons/obj/bureaucracy.dmi b/icons/obj/bureaucracy.dmi
index dd9987eaf53..38acefd77e8 100644
Binary files a/icons/obj/bureaucracy.dmi and b/icons/obj/bureaucracy.dmi differ
diff --git a/icons/obj/candle.dmi b/icons/obj/candle.dmi
index d42fe176c88..8206cc7312f 100644
Binary files a/icons/obj/candle.dmi and b/icons/obj/candle.dmi differ
diff --git a/icons/obj/card.dmi b/icons/obj/card.dmi
index 30878cd97e3..b95421888f6 100644
Binary files a/icons/obj/card.dmi and b/icons/obj/card.dmi differ
diff --git a/tgstation.dme b/tgstation.dme
index 577697aa0de..e8b2b6d2c4f 100644
--- a/tgstation.dme
+++ b/tgstation.dme
@@ -829,20 +829,27 @@
#include "code\game\turfs\closed.dm"
#include "code\game\turfs\open.dm"
#include "code\game\turfs\turf.dm"
+#include "code\game\turfs\simulated\chasm.dm"
#include "code\game\turfs\simulated\dirtystation.dm"
#include "code\game\turfs\simulated\floor.dm"
+#include "code\game\turfs\simulated\minerals.dm"
#include "code\game\turfs\simulated\river.dm"
#include "code\game\turfs\simulated\walls.dm"
-#include "code\game\turfs\simulated\walls_mineral.dm"
-#include "code\game\turfs\simulated\walls_misc.dm"
-#include "code\game\turfs\simulated\walls_reinforced.dm"
#include "code\game\turfs\simulated\floor\fancy_floor.dm"
#include "code\game\turfs\simulated\floor\light_floor.dm"
#include "code\game\turfs\simulated\floor\mineral_floor.dm"
#include "code\game\turfs\simulated\floor\misc_floor.dm"
#include "code\game\turfs\simulated\floor\plasteel_floor.dm"
#include "code\game\turfs\simulated\floor\plating.dm"
+#include "code\game\turfs\simulated\floor\reinf_floor.dm"
#include "code\game\turfs\simulated\floor\warning.dm"
+#include "code\game\turfs\simulated\floor\plating\asteroid.dm"
+#include "code\game\turfs\simulated\floor\plating\lava.dm"
+#include "code\game\turfs\simulated\floor\plating\misc_plating.dm"
+#include "code\game\turfs\simulated\wall\mineral_walls.dm"
+#include "code\game\turfs\simulated\wall\misc_walls.dm"
+#include "code\game\turfs\simulated\wall\reinf_walls.dm"
+#include "code\game\turfs\simulated\wall\shuttle_walls.dm"
#include "code\game\turfs\space\space.dm"
#include "code\game\turfs\space\transit.dm"
#include "code\js\byjax.dm"
@@ -1272,14 +1279,12 @@
#include "code\modules\mining\machine_vending.dm"
#include "code\modules\mining\mine_areas.dm"
#include "code\modules\mining\mine_items.dm"
-#include "code\modules\mining\mine_turfs.dm"
#include "code\modules\mining\minebot.dm"
#include "code\modules\mining\mint.dm"
#include "code\modules\mining\money_bag.dm"
#include "code\modules\mining\ores_coins.dm"
#include "code\modules\mining\satchel_ore_boxdm.dm"
#include "code\modules\mining\shelters.dm"
-#include "code\modules\mining\laborcamp\laborminerals.dm"
#include "code\modules\mining\laborcamp\laborshuttle.dm"
#include "code\modules\mining\laborcamp\laborstacker.dm"
#include "code\modules\mining\lavaland\ash_flora.dm"
@@ -1629,7 +1634,6 @@
#include "code\modules\power\apc.dm"
#include "code\modules\power\cable.dm"
#include "code\modules\power\cell.dm"
-#include "code\modules\power\engine.dm"
#include "code\modules\power\generator.dm"
#include "code\modules\power\gravitygenerator.dm"
#include "code\modules\power\lighting.dm"