diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md
index 79083339ae34..e711d1a72069 100644
--- a/.github/CONTRIBUTING.md
+++ b/.github/CONTRIBUTING.md
@@ -288,10 +288,10 @@ Usage of this system is mandatory for any `Topic()` calls, and will produce erro
```dm
//Bad
-"Link!"
+"Link!"
//Good
-"Link!"
+"Link!"
```
### Use `var/name` format when declaring variables
diff --git a/.gitignore b/.gitignore
index e020ce07f19f..de2fcefe7bb2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -69,5 +69,8 @@ $RECYCLE.BIN
# Linux libs
/*.so
+# VIM swap files.
+*.swp
+
# SS220 EDIT
sound/tts_cache/*
diff --git a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_althland_excavation.dmm b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_althland_excavation.dmm
index 1505811a8c4e..1e3b9a3be133 100644
--- a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_althland_excavation.dmm
+++ b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_althland_excavation.dmm
@@ -797,6 +797,9 @@
/obj/effect/turf_decal/delivery/white,
/turf/simulated/floor/plating/airless,
/area/ruin/unpowered/althland_excavation)
+"oh" = (
+/turf/simulated/mineral/volcanic/lava_land_surface,
+/area/lavaland/surface/outdoors)
"or" = (
/obj/structure/railing/corner{
dir = 8
@@ -1271,6 +1274,9 @@
nitrogen = 0
},
/area/lavaland/surface/outdoors)
+"Mm" = (
+/turf/simulated/floor/plating/asteroid/basalt/lava_land_surface,
+/area/lavaland/surface/outdoors)
"MT" = (
/obj/structure/grille/broken,
/obj/effect/decal/cleanable/glass,
@@ -1564,6 +1570,19 @@
/area/ruin/unpowered/althland_excavation)
(1,1,1) = {"
+oh
+oh
+oh
+oh
+oh
+oh
+oh
+oh
+oh
+Mm
+Mm
+Mm
+Mm
Ei
Ei
Ei
@@ -1575,6 +1594,25 @@ Ei
Ei
Ei
Ei
+Mm
+Mm
+oh
+oh
+oh
+oh
+"}
+(2,1,1) = {"
+oh
+oh
+oh
+oh
+Mm
+Mm
+Mm
+Mm
+Mm
+Mm
+Mm
TN
TN
TN
@@ -1591,17 +1629,17 @@ Ei
Ei
Ei
Ei
-Ei
-Ei
-Ei
+oh
+oh
+oh
"}
-(2,1,1) = {"
-Ei
-Ei
-Ei
-Ei
-Ei
-Ei
+(3,1,1) = {"
+oh
+oh
+Mm
+Mm
+Mm
+Mm
TN
TN
TN
@@ -1624,14 +1662,14 @@ Ei
Ei
Ei
Ei
-Ei
-Ei
+oh
+oh
"}
-(3,1,1) = {"
-Ei
-Ei
-Ei
-Ei
+(4,1,1) = {"
+oh
+Mm
+Mm
+Mm
TN
TN
TN
@@ -1656,13 +1694,13 @@ TN
TN
Ei
Ei
-Ei
-Ei
+Mm
+Mm
"}
-(4,1,1) = {"
-Ei
-Ei
-Ei
+(5,1,1) = {"
+oh
+Mm
+Mm
TN
sp
aU
@@ -1689,11 +1727,11 @@ TN
TN
Ei
Ei
-Ei
+Mm
"}
-(5,1,1) = {"
-Ei
-Ei
+(6,1,1) = {"
+Mm
+Mm
TN
TN
Ri
@@ -1723,9 +1761,9 @@ bm
Ei
Ei
"}
-(6,1,1) = {"
-Ei
-Ei
+(7,1,1) = {"
+Mm
+Mm
TN
PL
BZ
@@ -1755,8 +1793,8 @@ bm
Ei
Ei
"}
-(7,1,1) = {"
-Ei
+(8,1,1) = {"
+Mm
TN
TN
pE
@@ -1787,8 +1825,8 @@ Ei
Ei
Ei
"}
-(8,1,1) = {"
-Ei
+(9,1,1) = {"
+Mm
TN
sp
bC
@@ -1819,8 +1857,8 @@ aB
Ei
Ei
"}
-(9,1,1) = {"
-Ei
+(10,1,1) = {"
+Mm
TN
TN
TN
@@ -1851,8 +1889,8 @@ Ei
bm
Ei
"}
-(10,1,1) = {"
-Ei
+(11,1,1) = {"
+Mm
TN
ct
Pe
@@ -1883,8 +1921,8 @@ Ei
bm
Ei
"}
-(11,1,1) = {"
-Ei
+(12,1,1) = {"
+Mm
TN
pC
yb
@@ -1915,7 +1953,7 @@ Ei
TN
Ei
"}
-(12,1,1) = {"
+(13,1,1) = {"
Ei
TN
TN
@@ -1945,9 +1983,9 @@ Ei
Ei
Ei
TN
-Ei
+Mm
"}
-(13,1,1) = {"
+(14,1,1) = {"
Ei
TN
aU
@@ -1977,9 +2015,9 @@ XS
Ei
Ei
TN
-Ei
+Mm
"}
-(14,1,1) = {"
+(15,1,1) = {"
Ei
TN
Yz
@@ -2009,9 +2047,9 @@ Ei
Ei
Ei
TN
-Ei
+Mm
"}
-(15,1,1) = {"
+(16,1,1) = {"
Ei
TN
TN
@@ -2041,9 +2079,9 @@ Ei
BW
aB
TN
-Ei
+Mm
"}
-(16,1,1) = {"
+(17,1,1) = {"
Ei
TN
Ei
@@ -2073,9 +2111,9 @@ mK
uG
BW
TN
-Ei
+Mm
"}
-(17,1,1) = {"
+(18,1,1) = {"
Ei
bm
Ei
@@ -2105,9 +2143,9 @@ BW
LK
PM
TN
-Ei
+Mm
"}
-(18,1,1) = {"
+(19,1,1) = {"
Ei
bm
Ei
@@ -2137,9 +2175,9 @@ aB
BW
KU
TN
-Ei
+Mm
"}
-(19,1,1) = {"
+(20,1,1) = {"
Ei
TN
Ei
@@ -2169,9 +2207,9 @@ aB
aB
uG
TN
-Ei
+Mm
"}
-(20,1,1) = {"
+(21,1,1) = {"
Ei
TN
TN
@@ -2201,9 +2239,9 @@ aB
aB
aB
TN
-Ei
+Mm
"}
-(21,1,1) = {"
+(22,1,1) = {"
Ei
TN
ao
@@ -2233,9 +2271,9 @@ BW
TJ
BW
TN
-Ei
+Mm
"}
-(22,1,1) = {"
+(23,1,1) = {"
Ei
TN
at
@@ -2265,9 +2303,9 @@ mh
mK
uG
TN
-Ei
+Mm
"}
-(23,1,1) = {"
+(24,1,1) = {"
Ei
TN
aG
@@ -2297,10 +2335,10 @@ mh
mh
Gc
TN
-Ei
+Mm
"}
-(24,1,1) = {"
-Ei
+(25,1,1) = {"
+Mm
TN
TN
bU
@@ -2329,11 +2367,11 @@ gg
bN
TN
TN
-Ei
+Mm
"}
-(25,1,1) = {"
-Ei
-Ei
+(26,1,1) = {"
+Mm
+Mm
TN
az
DS
@@ -2360,12 +2398,12 @@ jL
Nv
jS
TN
-Ei
-Ei
+Mm
+Mm
"}
-(26,1,1) = {"
-Ei
-Ei
+(27,1,1) = {"
+oh
+Mm
TN
TN
ap
@@ -2392,13 +2430,13 @@ bL
YE
TN
TN
-Ei
-Ei
+Mm
+Mm
"}
-(27,1,1) = {"
-Ei
-Ei
-Ei
+(28,1,1) = {"
+oh
+Mm
+Mm
TN
TN
iA
@@ -2423,15 +2461,15 @@ kh
aE
TN
TN
-Ei
-Ei
-Ei
+Mm
+Mm
+oh
"}
-(28,1,1) = {"
-Ei
-Ei
-Ei
-Ei
+(29,1,1) = {"
+oh
+Mm
+Mm
+Mm
TN
TN
TN
@@ -2454,18 +2492,18 @@ TN
TN
TN
TN
-Ei
-Ei
-Ei
-Ei
+Mm
+Mm
+oh
+oh
"}
-(29,1,1) = {"
-Ei
-Ei
-Ei
-Ei
-Ei
-Ei
+(30,1,1) = {"
+oh
+oh
+Mm
+Mm
+Mm
+Mm
TN
TN
TN
@@ -2484,25 +2522,25 @@ TN
TN
TN
TN
-Ei
-Ei
-Ei
-Ei
-Ei
-Ei
+Mm
+Mm
+Mm
+oh
+oh
+oh
"}
-(30,1,1) = {"
-Ei
-Ei
-Ei
-Ei
-Ei
-Ei
-Ei
-Ei
-Ei
-Ei
-Ei
+(31,1,1) = {"
+oh
+oh
+oh
+Mm
+Mm
+Mm
+Mm
+Mm
+Mm
+Mm
+Mm
TN
TN
TN
@@ -2512,14 +2550,14 @@ TN
TN
TN
TN
-Ei
-Ei
-Ei
-Ei
-Ei
-Ei
-Ei
-Ei
-Ei
-Ei
+Mm
+Mm
+Mm
+Mm
+Mm
+oh
+oh
+oh
+oh
+oh
"}
diff --git a/_maps/map_files/RandomRuins/SpaceRuins/meatpackers.dmm b/_maps/map_files/RandomRuins/SpaceRuins/meatpackers.dmm
index 6a22394fcae0..067579f3be83 100644
--- a/_maps/map_files/RandomRuins/SpaceRuins/meatpackers.dmm
+++ b/_maps/map_files/RandomRuins/SpaceRuins/meatpackers.dmm
@@ -1277,10 +1277,6 @@
icon_state = "0-2"
},
/obj/structure/cable,
-/obj/structure/cable{
- d2 = 2;
- icon_state = "0-2"
- },
/turf/simulated/floor/plating,
/area/ruin/unpowered/BMPship/Aft)
"eg" = (
@@ -1602,7 +1598,6 @@
outputting = 0
},
/obj/structure/cable,
-/obj/structure/cable,
/turf/simulated/floor/plating,
/area/ruin/unpowered/BMPship/Aft)
"fb" = (
diff --git a/_maps/map_files/RandomRuins/SpaceRuins/oldstation.dmm b/_maps/map_files/RandomRuins/SpaceRuins/oldstation.dmm
index b491af4be5c1..6ba4f2256a0f 100644
--- a/_maps/map_files/RandomRuins/SpaceRuins/oldstation.dmm
+++ b/_maps/map_files/RandomRuins/SpaceRuins/oldstation.dmm
@@ -1330,6 +1330,7 @@
},
/obj/effect/decal/cleanable/dirt,
/obj/effect/decal/cleanable/dirt,
+/obj/item/storage/bag/plants/seed_sorting_tray,
/turf/simulated/floor/plasteel,
/area/ruin/ancientstation/hydroponics)
"dT" = (
@@ -4192,6 +4193,7 @@
/obj/item/reagent_containers/spray/weedspray,
/obj/item/reagent_containers/spray/pestspray,
/obj/item/reagent_containers/spray/cleaner,
+/obj/item/reagent_containers/glass/bottle/nutrient/mut,
/turf/simulated/floor/plating,
/area/ruin/ancientstation)
"kh" = (
diff --git a/_maps/map_files/RandomRuins/SpaceRuins/onehalf.dmm b/_maps/map_files/RandomRuins/SpaceRuins/onehalf.dmm
index 89dd8083a442..9cca10a32392 100644
--- a/_maps/map_files/RandomRuins/SpaceRuins/onehalf.dmm
+++ b/_maps/map_files/RandomRuins/SpaceRuins/onehalf.dmm
@@ -1136,20 +1136,6 @@
/obj/item/storage/firstaid,
/turf/simulated/floor/plasteel,
/area/ruin/space/onehalf/abandonedbridge)
-"df" = (
-/obj/structure/lattice,
-/obj/structure/cable{
- d1 = 1;
- d2 = 2;
- icon_state = "1-2"
- },
-/obj/structure/cable{
- d1 = 1;
- d2 = 2;
- icon_state = "1-2"
- },
-/turf/template_noop,
-/area/space/nearstation)
"dg" = (
/obj/structure/girder/reinforced,
/obj/item/stack/sheet/plasteel,
@@ -1190,26 +1176,6 @@
/obj/effect/spawner/window/reinforced/grilled,
/turf/simulated/floor/plating,
/area/ruin/space/onehalf/abandonedbridge)
-"dm" = (
-/obj/structure/cable{
- d1 = 4;
- d2 = 8;
- icon_state = "4-8";
- tag = ""
- },
-/obj/structure/cable{
- d1 = 4;
- d2 = 8;
- icon_state = "4-8";
- tag = ""
- },
-/obj/machinery/door/poddoor/preopen{
- id_tag = "onehalf bridge";
- name = "bridge blast door"
- },
-/obj/effect/spawner/window/reinforced/grilled,
-/turf/simulated/floor/plating,
-/area/ruin/space/onehalf/abandonedbridge)
"dn" = (
/obj/effect/spawner/window/reinforced/grilled,
/obj/structure/cable{
@@ -1796,7 +1762,7 @@ Ab
cr
cW
ch
-dm
+dl
ac
aa
"}
@@ -1905,7 +1871,7 @@ ai
ai
ai
cZ
-df
+ai
ai
af
aa
diff --git a/_maps/map_files/RandomRuins/SpaceRuins/ussp.dmm b/_maps/map_files/RandomRuins/SpaceRuins/ussp.dmm
index c0a150801e61..f6febf659647 100644
--- a/_maps/map_files/RandomRuins/SpaceRuins/ussp.dmm
+++ b/_maps/map_files/RandomRuins/SpaceRuins/ussp.dmm
@@ -3010,20 +3010,6 @@
},
/turf/simulated/floor/plasteel/grimy,
/area/ruin/space/derelict/crew_quarters)
-"hp" = (
-/obj/machinery/power/solar,
-/obj/structure/cable{
- d2 = 4;
- icon_state = "0-4"
- },
-/obj/structure/cable{
- d2 = 4;
- icon_state = "0-4"
- },
-/turf/simulated/floor/plasteel/airless{
- icon_state = "solarpanel"
- },
-/area/ruin/space/derelict/solar_control)
"hq" = (
/obj/item/stack/ore/uranium,
/turf/template_noop,
@@ -7502,7 +7488,6 @@
"sp" = (
/obj/machinery/power/solar/fake,
/obj/structure/cable,
-/obj/structure/cable,
/turf/simulated/floor/plasteel/airless{
icon_state = "solarpanel"
},
@@ -7537,7 +7522,6 @@
/turf/template_noop,
/area/ruin/space/derelict/solar_control)
"st" = (
-/obj/structure/cable,
/obj/machinery/power/tracker,
/obj/structure/cable,
/turf/simulated/floor/plasteel/airless{
@@ -7575,6 +7559,13 @@
},
/turf/simulated/wall/mineral/titanium/nodecon/nodiagonal,
/area/ruin/space/derelict/arrival)
+"NK" = (
+/obj/structure/cable{
+ d2 = 8;
+ icon_state = "0-8"
+ },
+/turf/template_noop,
+/area/template_noop)
"Oh" = (
/obj/effect/spawner/airlock/w_to_e{
req_access_txt = 0
@@ -14166,7 +14157,7 @@ ac
ac
ac
ac
-ac
+NK
ac
ac
ac
@@ -14356,18 +14347,18 @@ ac
ac
ac
ac
-hp
-hp
-hp
-hp
-hp
+hs
+hs
+hs
+hs
+hs
ac
jO
ac
jO
ag
hs
-hp
+hs
hs
hs
hs
diff --git a/_maps/map_files/generic/Lavaland.dmm b/_maps/map_files/generic/Lavaland.dmm
index 9769e9b96be6..03e670f9f511 100644
--- a/_maps/map_files/generic/Lavaland.dmm
+++ b/_maps/map_files/generic/Lavaland.dmm
@@ -788,11 +788,6 @@
},
/area/mine/laborcamp/security)
"cz" = (
-/obj/structure/cable{
- d1 = 1;
- d2 = 2;
- icon_state = "1-2"
- },
/obj/structure/cable{
d1 = 1;
d2 = 2;
diff --git a/_maps/map_files/stations/boxstation.dmm b/_maps/map_files/stations/boxstation.dmm
index ee9f6ef44eb3..57c028ebbfc1 100644
--- a/_maps/map_files/stations/boxstation.dmm
+++ b/_maps/map_files/stations/boxstation.dmm
@@ -17393,6 +17393,7 @@
name = "south bump";
pixel_y = -24
},
+/obj/item/storage/bag/plants/seed_sorting_tray,
/turf/simulated/floor/plasteel{
dir = 4;
icon_state = "green"
@@ -17627,6 +17628,7 @@
/obj/machinery/light{
dir = 4
},
+/obj/item/reagent_containers/glass/bottle/nutrient/mut,
/turf/simulated/floor/plasteel{
dir = 4;
icon_state = "green"
@@ -83589,6 +83591,7 @@
/obj/item/shovel/spade,
/obj/item/shovel/spade,
/obj/item/plant_analyzer,
+/obj/item/storage/bag/plants/seed_sorting_tray,
/turf/simulated/floor/grass,
/area/station/security/permabrig)
"sGj" = (
diff --git a/_maps/map_files/stations/cerestation.dmm b/_maps/map_files/stations/cerestation.dmm
index 9350ae3cd1f3..2a03e9c68b61 100644
--- a/_maps/map_files/stations/cerestation.dmm
+++ b/_maps/map_files/stations/cerestation.dmm
@@ -7908,6 +7908,7 @@
/obj/item/reagent_containers/glass/bottle/nutrient/ez,
/obj/item/reagent_containers/spray/pestspray,
/obj/item/reagent_containers/spray/plantbgone,
+/obj/item/reagent_containers/glass/bottle/nutrient/mut,
/turf/simulated/floor/grass/jungle,
/area/station/hallway/secondary/garden)
"aYc" = (
@@ -7917,6 +7918,7 @@
/obj/item/reagent_containers/glass/bucket,
/obj/item/storage/bag/plants/portaseeder,
/obj/item/reagent_containers/glass/bucket,
+/obj/item/storage/bag/plants/seed_sorting_tray,
/turf/simulated/floor/grass/jungle,
/area/station/hallway/secondary/garden)
"aYd" = (
@@ -43324,6 +43326,7 @@
/obj/item/plant_analyzer,
/obj/item/cultivator,
/obj/item/reagent_containers/spray/plantbgone,
+/obj/item/storage/bag/plants/seed_sorting_tray,
/turf/simulated/floor/plasteel{
dir = 4;
icon_state = "green"
diff --git a/_maps/map_files/stations/deltastation.dmm b/_maps/map_files/stations/deltastation.dmm
index 271ea9bf8c8b..548b6ba2425d 100644
--- a/_maps/map_files/stations/deltastation.dmm
+++ b/_maps/map_files/stations/deltastation.dmm
@@ -9366,6 +9366,7 @@
/obj/structure/cable,
/obj/effect/decal/cleanable/dirt,
/obj/effect/turf_decal/delivery/hollow,
+/obj/item/reagent_containers/glass/bottle/nutrient/mut,
/turf/simulated/floor/plasteel,
/area/station/maintenance/abandoned_garden)
"aHr" = (
@@ -9676,6 +9677,7 @@
"aIl" = (
/obj/item/reagent_containers/glass/bottle/nutrient/ez,
/obj/item/reagent_containers/glass/bottle/nutrient/ez,
+/obj/item/storage/bag/plants/seed_sorting_tray,
/turf/simulated/floor/plasteel{
icon_state = "red"
},
@@ -61698,13 +61700,21 @@
/turf/simulated/floor/plasteel,
/area/station/hallway/primary/aft/south)
"dHO" = (
+/obj/effect/spawner/window/reinforced/grilled,
+/obj/structure/cable{
+ d1 = 2;
+ d2 = 8;
+ icon_state = "2-8"
+ },
/obj/structure/cable{
d1 = 1;
- d2 = 2;
- icon_state = "1-2"
+ d2 = 8;
+ icon_state = "1-8"
+ },
+/obj/structure/cable{
+ d2 = 8;
+ icon_state = "0-8"
},
-/obj/structure/cable,
-/obj/effect/spawner/window/reinforced/grilled,
/turf/simulated/floor/plating,
/area/station/hallway/secondary/exit)
"dHQ" = (
@@ -63938,16 +63948,6 @@
/obj/item/crowbar/red,
/turf/simulated/floor/plasteel/dark,
/area/station/maintenance/apmaint)
-"dSB" = (
-/obj/machinery/atmospherics/unary/portables_connector{
- dir = 8
- },
-/obj/machinery/atmospherics/portable/canister/air,
-/obj/effect/turf_decal/stripes/line{
- dir = 10
- },
-/turf/simulated/floor/plasteel,
-/area/station/hallway/secondary/exit)
"dSD" = (
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 4
@@ -66421,6 +66421,16 @@
/obj/effect/decal/cleanable/dirt,
/turf/simulated/wall,
/area/station/legal/lawoffice)
+"evE" = (
+/obj/structure/cable{
+ d1 = 1;
+ d2 = 2;
+ icon_state = "1-2"
+ },
+/obj/structure/cable,
+/obj/effect/spawner/window/reinforced/grilled,
+/turf/simulated/floor/plating,
+/area/station/hallway/secondary/exit)
"evX" = (
/obj/structure/cable,
/obj/effect/spawner/window/reinforced/grilled,
@@ -66555,6 +66565,22 @@
icon_state = "yellowcorner"
},
/area/station/hallway/primary/port/east)
+"ezr" = (
+/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
+ dir = 6
+ },
+/obj/structure/cable{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/structure/cable{
+ d1 = 2;
+ d2 = 4;
+ icon_state = "2-4"
+ },
+/turf/simulated/floor/plasteel/white,
+/area/station/medical/virology)
"ezR" = (
/obj/effect/decal/cleanable/dirt,
/turf/simulated/floor/plasteel{
@@ -71015,6 +71041,16 @@
},
/turf/simulated/floor/plating,
/area/station/command/office/rd)
+"hli" = (
+/obj/machinery/atmospherics/unary/portables_connector{
+ dir = 8
+ },
+/obj/machinery/atmospherics/portable/canister/air,
+/obj/effect/turf_decal/stripes/line{
+ dir = 10
+ },
+/turf/simulated/floor/plasteel,
+/area/station/hallway/secondary/exit)
"hly" = (
/obj/structure/table/wood,
/turf/simulated/floor/plasteel/dark,
@@ -73732,6 +73768,10 @@
icon_state = "bar"
},
/area/station/service/kitchen)
+"iVe" = (
+/obj/effect/spawner/airlock,
+/turf/simulated/wall,
+/area/station/service/chapel/office)
"iVg" = (
/obj/machinery/economy/atm/directional/west,
/turf/simulated/floor/plasteel{
@@ -75552,15 +75592,6 @@
icon_state = "whiteblue"
},
/area/station/medical/storage)
-"kdg" = (
-/obj/structure/sign/vacuum{
- pixel_x = -32
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 8
- },
-/turf/simulated/floor/plasteel,
-/area/station/hallway/secondary/exit)
"kdm" = (
/obj/machinery/power/apc/critical/directional/north,
/obj/machinery/firealarm{
@@ -75661,6 +75692,15 @@
},
/turf/simulated/floor/plasteel/dark,
/area/station/medical/morgue)
+"kfC" = (
+/obj/structure/sign/vacuum{
+ pixel_x = -32
+ },
+/obj/effect/turf_decal/stripes/line{
+ dir = 8
+ },
+/turf/simulated/floor/plasteel,
+/area/station/hallway/secondary/exit)
"kfT" = (
/obj/structure/cable{
d2 = 4;
@@ -82346,22 +82386,6 @@
icon_state = "red"
},
/area/station/security/permabrig)
-"ogR" = (
-/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
- dir = 6
- },
-/obj/structure/cable{
- d1 = 4;
- d2 = 8;
- icon_state = "4-8"
- },
-/obj/structure/cable{
- d1 = 2;
- d2 = 4;
- icon_state = "2-4"
- },
-/turf/simulated/floor/plasteel/white,
-/area/station/medical/virology)
"ogX" = (
/obj/machinery/camera{
c_tag = "Experimentation Lab Office";
@@ -91308,6 +91332,21 @@
},
/turf/simulated/floor/plasteel,
/area/station/science/research)
+"tjT" = (
+/obj/item/radio/intercom{
+ name = "west bump";
+ pixel_x = -28
+ },
+/obj/machinery/newscaster{
+ dir = 1;
+ name = "south bump";
+ pixel_y = -28
+ },
+/obj/effect/turf_decal/stripes/line{
+ dir = 10
+ },
+/turf/simulated/floor/plasteel,
+/area/station/hallway/secondary/exit)
"tkb" = (
/obj/machinery/atmospherics/pipe/simple/hidden/supply{
dir = 6
@@ -91840,24 +91879,6 @@
icon_state = "yellowcorner"
},
/area/station/hallway/primary/port/west)
-"tEp" = (
-/obj/effect/spawner/window/reinforced/grilled,
-/obj/structure/cable{
- d1 = 2;
- d2 = 8;
- icon_state = "2-8"
- },
-/obj/structure/cable{
- d1 = 1;
- d2 = 8;
- icon_state = "1-8"
- },
-/obj/structure/cable{
- d2 = 8;
- icon_state = "0-8"
- },
-/turf/simulated/floor/plating,
-/area/station/hallway/secondary/exit)
"tEw" = (
/obj/structure/showcase{
density = 0;
@@ -92355,21 +92376,6 @@
/obj/effect/spawner/window/reinforced/grilled,
/turf/simulated/floor/plating,
/area/station/security/prison/cell_block)
-"tSp" = (
-/obj/item/radio/intercom{
- name = "west bump";
- pixel_x = -28
- },
-/obj/machinery/newscaster{
- dir = 1;
- name = "south bump";
- pixel_y = -28
- },
-/obj/effect/turf_decal/stripes/line{
- dir = 10
- },
-/turf/simulated/floor/plasteel,
-/area/station/hallway/secondary/exit)
"tSt" = (
/obj/structure/table,
/obj/item/reagent_containers/drinks/drinkingglass{
@@ -93009,10 +93015,6 @@
icon_state = "darkred"
},
/area/station/security/processing)
-"uil" = (
-/obj/effect/spawner/airlock,
-/turf/simulated/wall,
-/area/station/service/chapel/office)
"uit" = (
/obj/machinery/atmospherics/unary/vent_pump{
dir = 4;
@@ -136691,7 +136693,7 @@ dIx
dIx
dIx
dIx
-uil
+iVe
abj
aaa
aaa
@@ -137202,7 +137204,7 @@ dPM
dkq
dSs
dSP
-dSB
+hli
dIH
dIH
dIH
@@ -137460,8 +137462,8 @@ dNa
dXJ
dKo
dUj
-kdg
-tSp
+kfC
+tjT
dIH
abj
aaa
@@ -140531,9 +140533,9 @@ pIY
kuJ
kpd
kpd
-tEp
-dHO
dHO
+evE
+evE
tJT
dKQ
jpk
@@ -149016,7 +149018,7 @@ dGw
dGw
hGZ
qgr
-ogR
+ezr
wWW
qfH
sRk
diff --git a/_maps/map_files/stations/metastation.dmm b/_maps/map_files/stations/metastation.dmm
index 05463f4ee2d4..1d78a0d6871b 100644
--- a/_maps/map_files/stations/metastation.dmm
+++ b/_maps/map_files/stations/metastation.dmm
@@ -22737,6 +22737,7 @@
},
/obj/item/reagent_containers/glass/bottle/nutrient/ez,
/obj/item/reagent_containers/spray/plantbgone,
+/obj/item/reagent_containers/glass/bottle/nutrient/mut,
/turf/simulated/floor/plasteel,
/area/station/hallway/secondary/garden)
"bBN" = (
@@ -23451,17 +23452,6 @@
icon_state = "neutral"
},
/area/station/hallway/secondary/garden)
-"bDJ" = (
-/obj/structure/table,
-/obj/item/hatchet,
-/obj/item/crowbar,
-/obj/item/plant_analyzer,
-/obj/item/reagent_containers/glass/bucket,
-/obj/item/cultivator,
-/obj/item/paper/hydroponics,
-/obj/machinery/alarm/directional/east,
-/turf/simulated/floor/plasteel,
-/area/station/hallway/secondary/garden)
"bDL" = (
/obj/structure/cable{
d1 = 1;
@@ -35222,15 +35212,6 @@
"cvo" = (
/turf/simulated/wall/r_wall,
/area/station/maintenance/medmaint)
-"cvu" = (
-/obj/machinery/alarm/directional/north,
-/obj/structure/window/reinforced{
- dir = 4
- },
-/obj/structure/flora/ausbushes/fernybush,
-/obj/structure/flora/ausbushes/ppflowers,
-/turf/simulated/floor/grass/no_creep,
-/area/station/science/research)
"cvw" = (
/obj/structure/disposalpipe/segment,
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
@@ -38062,16 +38043,11 @@
/turf/simulated/floor/plasteel,
/area/station/hallway/secondary/exit)
"cGz" = (
-/obj/structure/extinguisher_cabinet{
- name = "west bump";
- pixel_x = -27
- },
-/obj/structure/window/reinforced{
- dir = 4
+/obj/machinery/economy/vending/scidrobe,
+/turf/simulated/floor/plasteel{
+ dir = 4;
+ icon_state = "whitepurplecorner"
},
-/obj/structure/flora/ausbushes/fernybush,
-/obj/structure/flora/ausbushes/ppflowers,
-/turf/simulated/floor/grass/no_creep,
/area/station/science/research)
"cGA" = (
/obj/structure/chair/comfy/black{
@@ -45501,6 +45477,7 @@
name = "processing tint control";
pixel_x = -6;
pixel_y = 24;
+ range = 4;
req_access_txt = "63"
},
/obj/machinery/light_switch{
@@ -47558,25 +47535,6 @@
},
/turf/simulated/floor/engine,
/area/station/science/test_chamber)
-"eIe" = (
-/obj/machinery/firealarm{
- dir = 4;
- name = "east bump";
- pixel_x = 24
- },
-/obj/structure/disposalpipe/segment,
-/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
-/obj/machinery/atmospherics/pipe/simple/hidden/supply,
-/obj/structure/cable{
- d1 = 1;
- d2 = 2;
- icon_state = "1-2"
- },
-/turf/simulated/floor/plasteel{
- dir = 8;
- icon_state = "whitepurple"
- },
-/area/station/science/research)
"eIj" = (
/obj/structure/table/wood,
/obj/item/folder/blue,
@@ -55721,6 +55679,18 @@
},
/turf/simulated/floor/plating,
/area/station/security/brig)
+"hUK" = (
+/obj/structure/table,
+/obj/item/hatchet,
+/obj/item/crowbar,
+/obj/item/plant_analyzer,
+/obj/item/reagent_containers/glass/bucket,
+/obj/item/cultivator,
+/obj/item/paper/hydroponics,
+/obj/item/storage/bag/plants/seed_sorting_tray,
+/obj/machinery/alarm/directional/east,
+/turf/simulated/floor/plasteel,
+/area/station/hallway/secondary/garden)
"hVa" = (
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/turf/simulated/floor/plasteel,
@@ -65264,23 +65234,6 @@
icon_state = "dark"
},
/area/station/security/storage)
-"lTc" = (
-/obj/machinery/light{
- dir = 4
- },
-/obj/structure/disposalpipe/segment,
-/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
-/obj/machinery/atmospherics/pipe/simple/hidden/supply,
-/obj/structure/cable{
- d1 = 1;
- d2 = 2;
- icon_state = "1-2"
- },
-/turf/simulated/floor/plasteel{
- dir = 8;
- icon_state = "whitepurple"
- },
-/area/station/science/research)
"lTB" = (
/obj/item/clothing/gloves/color/latex,
/obj/structure/rack,
@@ -66569,6 +66522,17 @@
/obj/machinery/atmospherics/pipe/simple/hidden/purple,
/turf/simulated/floor/engine,
/area/station/science/test_chamber)
+"myX" = (
+/obj/machinery/light{
+ dir = 4
+ },
+/obj/structure/window/reinforced{
+ dir = 8
+ },
+/obj/structure/flora/ausbushes/ppflowers,
+/obj/structure/flora/ausbushes/fullgrass,
+/turf/simulated/floor/grass/no_creep,
+/area/station/science/research)
"myY" = (
/obj/machinery/atmospherics/pipe/manifold/hidden/supply,
/turf/simulated/floor/plasteel,
@@ -73158,6 +73122,31 @@
/obj/effect/spawner/random_spawners/oil_maybe,
/turf/simulated/floor/plasteel,
/area/station/maintenance/fsmaint)
+"pmd" = (
+/obj/structure/disposalpipe/segment{
+ dir = 4
+ },
+/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
+ dir = 4
+ },
+/obj/machinery/atmospherics/pipe/simple/hidden/supply{
+ dir = 4
+ },
+/obj/structure/cable{
+ d1 = 4;
+ d2 = 8;
+ icon_state = "4-8"
+ },
+/obj/machinery/newscaster{
+ dir = 1;
+ name = "south bump";
+ pixel_y = -28
+ },
+/turf/simulated/floor/plasteel{
+ dir = 1;
+ icon_state = "whitepurple"
+ },
+/area/station/science/research)
"pmE" = (
/obj/machinery/atmospherics/pipe/simple/visible/yellow{
dir = 4
@@ -73855,7 +73844,7 @@
"pCf" = (
/obj/machinery/hologram/holopad,
/turf/simulated/floor/plasteel{
- dir = 4;
+ dir = 5;
icon_state = "whitepurple"
},
/area/station/science/research)
@@ -77202,14 +77191,6 @@
},
/turf/simulated/floor/plasteel,
/area/station/hallway/primary/central/north)
-"qXr" = (
-/obj/structure/window/reinforced{
- dir = 4
- },
-/obj/structure/flora/ausbushes/fernybush,
-/obj/structure/flora/ausbushes/ppflowers,
-/turf/simulated/floor/grass/no_creep,
-/area/station/science/research)
"qXK" = (
/obj/machinery/atmospherics/pipe/simple/visible/yellow,
/turf/simulated/floor/plasteel{
@@ -82271,8 +82252,10 @@
},
/area/station/supply/office)
"taP" = (
-/obj/machinery/status_display{
- pixel_x = -32
+/obj/machinery/firealarm{
+ dir = 8;
+ name = "west bump";
+ pixel_x = -24
},
/turf/simulated/floor/plasteel{
dir = 4;
@@ -82916,10 +82899,10 @@
/turf/simulated/floor/plating,
/area/station/maintenance/apmaint)
"tnN" = (
-/obj/item/kirbyplants/plant24,
/obj/machinery/camera{
c_tag = "Science Hallway - Research";
- network = list("Research","SS13")
+ network = list("Research","SS13");
+ dir = 9
},
/obj/structure/disposalpipe/segment{
dir = 2;
@@ -82936,6 +82919,10 @@
d2 = 8;
icon_state = "2-8"
},
+/obj/structure/extinguisher_cabinet{
+ name = "north bump";
+ pixel_y = 30
+ },
/turf/simulated/floor/plasteel{
dir = 8;
icon_state = "whitepurplecorner"
@@ -85368,6 +85355,16 @@
icon_state = "dark"
},
/area/station/medical/surgery/observation)
+"uxo" = (
+/obj/machinery/status_display{
+ layer = 4;
+ pixel_y = 32
+ },
+/obj/item/kirbyplants/plant24,
+/turf/simulated/floor/plasteel{
+ icon_state = "whitepurplecorner"
+ },
+/area/station/science/research)
"uxy" = (
/obj/machinery/atmospherics/binary/pump{
dir = 0;
@@ -85659,6 +85656,7 @@
name = "north bump";
pixel_y = 24
},
+/obj/item/storage/bag/plants/seed_sorting_tray,
/turf/simulated/floor/plasteel{
dir = 5;
icon_state = "green"
@@ -88949,11 +88947,6 @@
/turf/simulated/floor/grass/no_creep,
/area/station/security/permabrig)
"waj" = (
-/obj/machinery/newscaster{
- dir = 8;
- name = "east bump";
- pixel_x = 28
- },
/obj/structure/disposalpipe/segment,
/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{
dir = 4
@@ -89524,7 +89517,7 @@
icon_state = "1-4"
},
/turf/simulated/floor/plasteel{
- icon_state = "whitepurplecorner"
+ icon_state = "whitepurple"
},
/area/station/science/research)
"woK" = (
@@ -89994,6 +89987,17 @@
icon_state = "white"
},
/area/station/science/xenobiology)
+"wzb" = (
+/obj/structure/window/reinforced{
+ dir = 1
+ },
+/obj/structure/window/reinforced{
+ dir = 8
+ },
+/obj/structure/flora/ausbushes/fernybush,
+/obj/structure/flora/ausbushes/ppflowers,
+/turf/simulated/floor/grass/no_creep,
+/area/station/science/research)
"wzx" = (
/obj/machinery/atmospherics/pipe/simple/hidden/cyan{
dir = 5
@@ -90752,9 +90756,6 @@
/turf/simulated/floor/plating,
/area/station/maintenance/fsmaint)
"wTJ" = (
-/obj/machinery/light{
- dir = 1
- },
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 4
},
@@ -90766,6 +90767,9 @@
d2 = 8;
icon_state = "4-8"
},
+/obj/machinery/light{
+ dir = 1
+ },
/turf/simulated/floor/plasteel{
icon_state = "whitepurple"
},
@@ -93440,6 +93444,14 @@
icon_state = "yellow"
},
/area/station/engineering/break_room)
+"xYS" = (
+/obj/structure/window/reinforced{
+ dir = 8
+ },
+/obj/structure/flora/ausbushes/fernybush,
+/obj/structure/flora/ausbushes/ppflowers,
+/turf/simulated/floor/grass/no_creep,
+/area/station/science/research)
"xZa" = (
/obj/structure/plasticflaps{
opacity = 1
@@ -111884,7 +111896,7 @@ cdT
cdT
cdT
cdT
-bDJ
+hUK
bBK
iWb
uiO
@@ -123734,8 +123746,8 @@ cic
fHG
fpM
cfw
-cvu
-qXr
+uxo
+qnt
cGz
cJp
qcw
@@ -123992,7 +124004,7 @@ bUy
fPC
uVF
wos
-qnt
+cwR
pCf
taP
pnh
@@ -124508,8 +124520,8 @@ cvl
wTJ
cwR
wIT
-eIe
-lTc
+cOZ
+cOZ
waj
des
fWN
@@ -124765,9 +124777,9 @@ bWe
mfG
cwR
cxP
-lAX
-lAX
-lAX
+wzb
+myX
+xYS
lAX
cfw
gTS
@@ -125021,10 +125033,10 @@ cut
soO
nry
cwR
-cxP
-eZW
-lJA
-rfD
+pmd
+lAX
+lAX
+lAX
lAX
uws
bGl
@@ -125280,8 +125292,8 @@ tnN
lGC
gcy
eZW
-keQ
-keQ
+lJA
+rfD
lAX
gEt
bGl
diff --git a/_maps/map_files220/generic/centcomm.dmm b/_maps/map_files220/generic/centcomm.dmm
index 2f1c97b030e7..53e627e5e73a 100644
--- a/_maps/map_files220/generic/centcomm.dmm
+++ b/_maps/map_files220/generic/centcomm.dmm
@@ -30095,7 +30095,7 @@
/turf/simulated/floor/carpet/black,
/area/centcom/ss220/general)
"uRC" = (
-/obj/machinery/chem_dispenser/botanical/upgraded,
+/obj/machinery/chem_dispenser/upgraded,
/turf/simulated/floor/wood/fancy/oak,
/area/centcom/ss220/evac)
"uRG" = (
diff --git a/_maps/map_files220/stations/boxstation.dmm b/_maps/map_files220/stations/boxstation.dmm
index 31adba32f197..979a34eca967 100644
--- a/_maps/map_files220/stations/boxstation.dmm
+++ b/_maps/map_files220/stations/boxstation.dmm
@@ -14847,6 +14847,9 @@
/obj/item/plant_analyzer,
/obj/item/radio/intercom/directional/east,
/obj/machinery/light_switch/south,
+/obj/item/storage/bag/plants/seed_sorting_tray{
+ pixel_y = 20
+ },
/turf/simulated/floor/plasteel{
dir = 4;
icon_state = "green"
@@ -15042,6 +15045,10 @@
pixel_x = -4
},
/obj/machinery/light/directional/east,
+/obj/item/reagent_containers/glass/bottle/nutrient/mut{
+ pixel_x = 1;
+ pixel_y = 6
+ },
/turf/simulated/floor/plasteel{
dir = 4;
icon_state = "green"
@@ -71680,7 +71687,7 @@
/area/station/medical/chemistry)
"nnj" = (
/obj/effect/turf_decal/delivery/green,
-/obj/machinery/chem_dispenser/botanical,
+/obj/machinery/chem_dispenser,
/turf/simulated/floor/plasteel{
icon_state = "dark"
},
@@ -86588,6 +86595,7 @@
/obj/item/shovel/spade,
/obj/item/shovel/spade,
/obj/item/plant_analyzer,
+/obj/item/storage/bag/plants/seed_sorting_tray,
/turf/simulated/floor/grass,
/area/station/security/permabrig)
"sFQ" = (
diff --git a/_maps/map_files220/stations/deltastation.dmm b/_maps/map_files220/stations/deltastation.dmm
index f5e69e94ec4a..b2d45d24c6c4 100644
--- a/_maps/map_files220/stations/deltastation.dmm
+++ b/_maps/map_files220/stations/deltastation.dmm
@@ -23725,11 +23725,6 @@
pixel_y = -25;
name = "custom placement"
},
-/obj/structure/cable{
- d1 = 1;
- d2 = 8;
- icon_state = "1-8"
- },
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
dir = 9
},
@@ -54828,11 +54823,6 @@
/obj/effect/mapping_helpers/airlock/welded,
/obj/machinery/door/airlock/psych,
/obj/effect/mapping_helpers/airlock/autoname,
-/obj/structure/cable{
- d1 = 4;
- d2 = 8;
- icon_state = "4-8"
- },
/obj/effect/mapping_helpers/airlock/access/any/medical/psychology,
/turf/simulated/floor/wood/oak,
/area/station/medical/patients_rooms)
@@ -60706,11 +60696,6 @@
icon_state = "0-2"
},
/obj/structure/disposalpipe/segment,
-/obj/structure/cable{
- d1 = 1;
- d2 = 2;
- icon_state = "1-2"
- },
/turf/simulated/floor/plating,
/area/station/security/permabrig)
"hWP" = (
@@ -61985,11 +61970,6 @@
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/structure/disposalpipe/segment,
/obj/machinery/door/firedoor,
-/obj/structure/cable{
- d1 = 1;
- d2 = 4;
- icon_state = "1-4"
- },
/obj/structure/disposalpipe/segment,
/obj/structure/cable{
d1 = 1;
@@ -80334,11 +80314,6 @@
},
/area/station/science/genetics)
"obO" = (
-/obj/structure/cable{
- d1 = 2;
- d2 = 8;
- icon_state = "2-8"
- },
/obj/machinery/atmospherics/pipe/manifold/hidden{
dir = 1
},
@@ -86456,7 +86431,7 @@
/area/station/hallway/secondary/exit)
"pYO" = (
/obj/effect/turf_decal/delivery,
-/obj/machinery/chem_dispenser/botanical,
+/obj/machinery/chem_dispenser,
/obj/machinery/requests_console{
department = "Hydroponics";
departmentType = 2;
@@ -96139,11 +96114,6 @@
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/machinery/door/firedoor,
-/obj/structure/cable{
- d1 = 1;
- d2 = 2;
- icon_state = "1-2"
- },
/obj/machinery/door/airlock/bathroom{
id = "toilet2";
id_tag = "toilet2"
@@ -98093,10 +98063,23 @@
"tGh" = (
/obj/effect/turf_decal/delivery/hollow,
/obj/structure/table,
-/obj/item/reagent_containers/spray/plantbgone,
-/obj/item/reagent_containers/spray/plantbgone,
-/obj/item/reagent_containers/spray/plantbgone,
/obj/machinery/firealarm/directional/east,
+/obj/item/reagent_containers/glass/bottle/nutrient/mut{
+ pixel_x = -4;
+ pixel_y = 2
+ },
+/obj/item/reagent_containers/spray/plantbgone{
+ pixel_y = 10;
+ pixel_x = 6
+ },
+/obj/item/reagent_containers/spray/plantbgone{
+ pixel_x = 6;
+ pixel_y = 4
+ },
+/obj/item/reagent_containers/spray/plantbgone{
+ pixel_x = 6;
+ pixel_y = -2
+ },
/turf/simulated/floor/plasteel/dark,
/area/station/service/hydroponics)
"tGN" = (
@@ -102910,6 +102893,7 @@
d2 = 8;
icon_state = "1-8"
},
+/obj/item/storage/bag/plants/seed_sorting_tray,
/turf/simulated/floor/plasteel,
/area/station/security/permabrig)
"vhM" = (
@@ -106599,11 +106583,6 @@
icon_state = "1-2"
},
/obj/structure/disposalpipe/segment,
-/obj/structure/cable{
- d1 = 1;
- d2 = 2;
- icon_state = "1-2"
- },
/obj/effect/mapping_helpers/airlock/access/any/security/general,
/turf/simulated/floor/plasteel,
/area/station/maintenance/dormitory_maintenance)
diff --git a/_maps/map_files220/stations/metastation.dmm b/_maps/map_files220/stations/metastation.dmm
index 449ea4aaefdf..20bc7dbd29e1 100644
--- a/_maps/map_files220/stations/metastation.dmm
+++ b/_maps/map_files220/stations/metastation.dmm
@@ -7204,11 +7204,6 @@
/turf/simulated/floor/plasteel,
/area/station/supply/miningdock)
"aKg" = (
-/obj/structure/cable/yellow{
- d1 = 1;
- d2 = 2;
- icon_state = "1-2"
- },
/obj/machinery/door/firedoor,
/obj/machinery/door/airlock/public/glass,
/obj/effect/mapping_helpers/airlock/autoname,
@@ -18872,11 +18867,6 @@
/area/station/security/permabrig)
"bsb" = (
/obj/item/folder/white,
-/obj/structure/cable/yellow{
- d1 = 1;
- d2 = 2;
- icon_state = "1-2"
- },
/obj/machinery/light/directional/west,
/obj/structure/cable/yellow{
d1 = 1;
@@ -22208,6 +22198,11 @@
},
/obj/item/reagent_containers/glass/bottle/nutrient/ez,
/obj/item/reagent_containers/spray/plantbgone,
+/obj/item/storage/bag/plants/seed_sorting_tray,
+/obj/item/reagent_containers/glass/bottle/nutrient/mut{
+ pixel_x = -4;
+ pixel_y = 2
+ },
/turf/simulated/floor/plasteel,
/area/station/hallway/secondary/garden)
"bBN" = (
@@ -29911,7 +29906,7 @@
"cbP" = (
/obj/effect/turf_decal/delivery/hollow,
/obj/effect/decal/cleanable/dirt,
-/obj/machinery/chem_dispenser/botanical,
+/obj/machinery/chem_dispenser,
/turf/simulated/floor/plasteel{
dir = 5;
icon_state = "greenblue"
@@ -45543,13 +45538,14 @@
/obj/machinery/camera{
c_tag = "Brig Prisoner Processing"
},
+/obj/machinery/light_switch/north{
+ pixel_x = 6
+ },
/obj/machinery/button/windowtint/north{
id = "Processing";
pixel_x = -6;
- req_access_txt = "63"
- },
-/obj/machinery/light_switch/north{
- pixel_x = 6
+ req_access_txt = "63";
+ range = 4
},
/turf/simulated/floor/plasteel{
dir = 1;
@@ -48018,11 +48014,6 @@
/obj/effect/turf_decal/delivery,
/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers,
/obj/machinery/atmospherics/pipe/simple/hidden/supply,
-/obj/structure/cable/yellow{
- d1 = 1;
- d2 = 2;
- icon_state = "1-2"
- },
/obj/structure/cable/yellow{
d1 = 1;
d2 = 2;
@@ -67193,11 +67184,6 @@
/turf/simulated/floor/plating,
/area/station/maintenance/xenobio_south)
"nDu" = (
-/obj/structure/cable/yellow{
- d1 = 1;
- d2 = 2;
- icon_state = "1-2"
- },
/obj/machinery/firealarm/directional/west,
/obj/structure/cable/yellow{
d1 = 1;
@@ -70826,11 +70812,6 @@
},
/area/station/medical/medbay)
"pAO" = (
-/obj/structure/cable/yellow{
- d1 = 4;
- d2 = 8;
- icon_state = "4-8"
- },
/obj/machinery/door/airlock/maintenance,
/obj/effect/mapping_helpers/airlock/autoname,
/obj/machinery/atmospherics/pipe/simple/hidden/cyan{
@@ -81356,6 +81337,7 @@
/obj/item/plant_analyzer,
/obj/machinery/atmospherics/unary/vent_scrubber/on,
/obj/machinery/light_switch/north,
+/obj/item/storage/bag/plants/seed_sorting_tray,
/turf/simulated/floor/plasteel{
dir = 5;
icon_state = "green"
@@ -88118,28 +88100,6 @@
/obj/item/radio/intercom/directional/south,
/turf/simulated/floor/plasteel,
/area/station/security/brig)
-"xVd" = (
-/obj/structure/cable/yellow{
- d1 = 4;
- d2 = 8;
- icon_state = "4-8"
- },
-/obj/structure/cable/yellow{
- d1 = 4;
- d2 = 8;
- icon_state = "4-8"
- },
-/obj/machinery/atmospherics/pipe/simple/hidden/supply{
- dir = 4
- },
-/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{
- dir = 4
- },
-/obj/structure/disposalpipe/segment{
- dir = 4
- },
-/turf/simulated/floor/plasteel,
-/area/station/hallway/primary/starboard)
"xVB" = (
/obj/structure/kitchenspike_frame,
/obj/effect/decal/cleanable/blood/old,
@@ -128118,7 +128078,7 @@ bhU
aGX
bam
bnr
-xVd
+boY
lDD
aoG
bSG
diff --git a/code/__DEFINES/admin_defines.dm b/code/__DEFINES/admin_defines.dm
index 86805b43bc5a..1856a55e010a 100644
--- a/code/__DEFINES/admin_defines.dm
+++ b/code/__DEFINES/admin_defines.dm
@@ -46,26 +46,26 @@
#define R_HOST ((1<<18)-1) //17 bit bitmask, update me if we ever add more admin permissions. Sum of all permissions to allow easy setting.
-#define ADMIN_QUE(user,display) "[display]"
-#define ADMIN_FLW(user,display) "[display]"
-#define ADMIN_PP(user,display) "[display]"
-#define ADMIN_VV(atom,display) "[display]"
-#define ADMIN_SM(user,display) "[display]"
-#define ADMIN_TP(user,display) "[display]"
-#define ADMIN_ALERT(user, display) "[display]"
-#define ADMIN_BSA(user,display) "[display]"
-#define ADMIN_CENTCOM_REPLY(user,display) "[display]"
-#define ADMIN_SYNDICATE_REPLY(user,display) "[display]"
-#define ADMIN_SC(user,display) "[display]"
+#define ADMIN_QUE(user,display) "[display]"
+#define ADMIN_FLW(user,display) "[display]"
+#define ADMIN_PP(user,display) "[display]"
+#define ADMIN_VV(atom,display) "[display]"
+#define ADMIN_SM(user,display) "[display]"
+#define ADMIN_TP(user,display) "[display]"
+#define ADMIN_ALERT(user, display) "[display]"
+#define ADMIN_BSA(user,display) "[display]"
+#define ADMIN_CENTCOM_REPLY(user,display) "[display]"
+#define ADMIN_SYNDICATE_REPLY(user,display) "[display]"
+#define ADMIN_SC(user,display) "[display]"
#define ADMIN_LOOKUP(user) "[key_name_admin(user)]([ADMIN_QUE(user,"?")])"
#define ADMIN_LOOKUPFLW(user) "[key_name_admin(user)]([ADMIN_QUE(user,"?")]) ([ADMIN_FLW(user,"FLW")])"
#define ADMIN_FULLMONTY(user) "[key_name_admin(user)] ([ADMIN_QUE(user,"?")]) ([ADMIN_PP(user,"PP")]) ([ADMIN_VV(user,"VV")]) ([ADMIN_SM(user,"SM")]) ([ADMIN_FLW(user,"FLW")]) ([ADMIN_TP(user,"TP")])"
-#define ADMIN_JMP(src) "(JMP)"
+#define ADMIN_JMP(src) "(JMP)"
#define COORD(src) "[src ? "([src.x],[src.y],[src.z])" : "nonexistent location"]"
#define AREACOORD(src) "[src ? "[get_area_name(src, TRUE)] [COORD(src)]" : "nonexistent location" ]"
#define ADMIN_COORDJMP(src) "[src ? "[COORD(src)] [ADMIN_JMP(src)]" : "nonexistent location"]"
#define ADMIN_VERBOSEJMP(src) "[src ? "[AREACOORD(src)] [ADMIN_JMP(src)]" : "nonexistent location"]"
-#define ADMIN_SHOWDETAILS(mask, content) "[mask]"
+#define ADMIN_SHOWDETAILS(mask, content) "[mask]"
/// Note text for suppressed CID warning
#define CIDWARNING_SUPPRESSED_NOTETEXT "CID COUNT WARNING DISABLED - Delete this note to re-enable"
diff --git a/code/__DEFINES/dcs/signals.dm b/code/__DEFINES/dcs/signals.dm
index 58ac3dc04fa0..05150f925529 100644
--- a/code/__DEFINES/dcs/signals.dm
+++ b/code/__DEFINES/dcs/signals.dm
@@ -1041,3 +1041,6 @@
///from of mob/MouseDrop(): (/atom/over, /mob/user)
#define COMSIG_DO_MOB_STRIP "do_mob_strip"
+
+// Sent when a mob spawner is attacked directly or via projectile.
+#define COMSIG_SPAWNER_SET_TARGET "spawner_set_target"
diff --git a/code/__DEFINES/misc_defines.dm b/code/__DEFINES/misc_defines.dm
index d55ff8931d95..47d29be3c7e2 100644
--- a/code/__DEFINES/misc_defines.dm
+++ b/code/__DEFINES/misc_defines.dm
@@ -52,6 +52,9 @@
#define PRINTER_FONT "Times New Roman"
#define SIGNFONT "Times New Roman"
+/// Emoji icon set
+#define EMOJI_SET 'icons/ui_icons/emoji.dmi'
+
//some arbitrary defines to be used by self-pruning global lists. (see master_controller)
#define PROCESS_KILL 26 //Used to trigger removal from a processing list
@@ -185,8 +188,8 @@
#define SHOES_LAYER 28
#define GLOVES_LAYER 27
#define EARS_LAYER 26
-#define SUIT_LAYER 25
-#define BELT_LAYER 24 //Possible make this an overlay of somethign required to wear a belt?
+#define BELT_LAYER 25 //Possible make this an overlay of something required to wear a belt?
+#define SUIT_LAYER 24
#define SUIT_STORE_LAYER 23
#define BACK_LAYER 22
#define HEAD_ACCESSORY_LAYER 21
diff --git a/code/__HELPERS/lists.dm b/code/__HELPERS/lists.dm
index 5dc4df15beac..7a90a0543e5f 100644
--- a/code/__HELPERS/lists.dm
+++ b/code/__HELPERS/lists.dm
@@ -80,7 +80,7 @@
//Returns a list in plain english as a string
/proc/english_list(list/input, nothing_text = "nothing", and_text = " and ", comma_text = ", ", final_comma_text = "" )
- var/total = input.len
+ var/total = length(input)
if(!total)
return "[nothing_text]"
else if(total == 1)
diff --git a/code/__HELPERS/mob_helpers.dm b/code/__HELPERS/mob_helpers.dm
index 8054554c4119..654e404f47e9 100644
--- a/code/__HELPERS/mob_helpers.dm
+++ b/code/__HELPERS/mob_helpers.dm
@@ -310,8 +310,8 @@
var/area/A
if(isatom(MT) && !QDELETED(MT))
A = get_area(MT)
- else
- A = get_area(user)
+ else
+ A = get_area(user)
if(A && A.hide_attacklogs)
loglevel = ATKLOG_ALL
else if(istype(MT))
@@ -556,7 +556,7 @@ GLOBAL_LIST_EMPTY(do_after_once_tracker)
to_chat(user, "Name = [M.name]; Real_name = [M.real_name]; Mind_name = [M.mind?"[M.mind.name]":""]; Key = [M.key];")
to_chat(user, "Location = [location_description];")
to_chat(user, "[special_role_description]")
- to_chat(user, "(PM) ([ADMIN_PP(M,"PP")]) ([ADMIN_VV(M,"VV")]) ([ADMIN_TP(M,"TP")]) ([ADMIN_SM(M,"SM")]) ([ADMIN_FLW(M,"FLW")])")
+ to_chat(user, "(PM) ([ADMIN_PP(M,"PP")]) ([ADMIN_VV(M,"VV")]) ([ADMIN_TP(M,"TP")]) ([ADMIN_SM(M,"SM")]) ([ADMIN_FLW(M,"FLW")])")
// Gets the first mob contained in an atom, and warns the user if there's not exactly one
/proc/get_mob_in_atom_with_warning(atom/A, mob/user = usr)
diff --git a/code/__HELPERS/text.dm b/code/__HELPERS/text.dm
index f2d4cc4a0aa0..68320b724522 100644
--- a/code/__HELPERS/text.dm
+++ b/code/__HELPERS/text.dm
@@ -468,6 +468,8 @@
text = replacetext(text, "\[/i\]", "")
text = replacetext(text, "\[u\]", "")
text = replacetext(text, "\[/u\]", "")
+ text = replacetext(text, "\[s\]", "")
+ text = replacetext(text, "\[/s\]", "")
if(findtext(text, "\[signfont\]") || findtext(text, "\[/signfont\]")) // Make sure the text is there before giving off an error
if(check_rights(R_EVENT))
text = replacetext(text, "\[signfont\]", "")
diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm
index 30c72d110a78..49d666e63101 100644
--- a/code/__HELPERS/unsorted.dm
+++ b/code/__HELPERS/unsorted.dm
@@ -1252,7 +1252,7 @@ Standard way to write links -Sayu
/proc/topic_link(datum/D, arglist, content)
if(islist(arglist))
arglist = list2params(arglist)
- return "[content]"
+ return "[content]"
diff --git a/code/_globalvars/lists/misc_lists.dm b/code/_globalvars/lists/misc_lists.dm
index b4ac32d640cf..f12c6a8271fc 100644
--- a/code/_globalvars/lists/misc_lists.dm
+++ b/code/_globalvars/lists/misc_lists.dm
@@ -67,3 +67,6 @@ GLOBAL_LIST_EMPTY(looping_sounds)
/// List of possible crits from things tipping over
GLOBAL_LIST_EMPTY(tilt_crits)
+
+/// Stores a list of the cached seed icons. Used in the seed extractor and the gene modder
+GLOBAL_LIST_EMPTY(seeds_cached_base64_icons)
diff --git a/code/controllers/subsystem/SSdbcore.dm b/code/controllers/subsystem/SSdbcore.dm
index 03d147e9aaca..9299f8371065 100644
--- a/code/controllers/subsystem/SSdbcore.dm
+++ b/code/controllers/subsystem/SSdbcore.dm
@@ -463,7 +463,7 @@ SUBSYSTEM_DEF(dbcore)
// Just tells the admins if a query timed out, and asks if the server hung to help error reporting
/datum/db_query/proc/slow_query_check()
- message_admins("HEY! A database query timed out. Did the server just hang? \[YES\]|\[NO\]")
+ message_admins("HEY! A database query timed out. Did the server just hang? \[YES\]|\[NO\]")
/**
diff --git a/code/controllers/subsystem/SSdebugview.dm b/code/controllers/subsystem/SSdebugview.dm
index bfb8a8857c87..4d4547f5dd78 100644
--- a/code/controllers/subsystem/SSdebugview.dm
+++ b/code/controllers/subsystem/SSdebugview.dm
@@ -87,7 +87,7 @@ SUBSYSTEM_DEF(debugview)
if((SS.flags & SS_NO_FIRE) || !SS.can_fire)
continue
- html += "[SS.state_colour()]\[[SS.state_letter()]][SS.ss_id]\t[round(SS.cost, 1)]ms | [round(SS.tick_usage, 1)]% [SS.get_stat_details() ? "| [SS.get_stat_details()] " : ""]| VV Edit"
+ html += "[SS.state_colour()]\[[SS.state_letter()]][SS.ss_id]\t[round(SS.cost, 1)]ms | [round(SS.tick_usage, 1)]% [SS.get_stat_details() ? "| [SS.get_stat_details()] " : ""]| VV Edit"
popup.set_content(html.Join("
"))
popup.open(FALSE)
diff --git a/code/controllers/subsystem/SSevents.dm b/code/controllers/subsystem/SSevents.dm
index bd01160067cb..af184bc45c5b 100644
--- a/code/controllers/subsystem/SSevents.dm
+++ b/code/controllers/subsystem/SSevents.dm
@@ -101,11 +101,11 @@ SUBSYSTEM_DEF(events)
to_chat(world, message)
/datum/controller/subsystem/events/proc/GetInteractWindow()
- var/html = "Refresh"
+ var/html = "Refresh"
if(selected_event_container)
var/event_time = max(0, selected_event_container.next_event_time - world.time)
- html += "Back
"
+ html += "Back
"
html += "Time till start: [round(event_time / 600, 0.1)]
"
html += "
Name | Type | Weight | OneShot | ||||
[new_event.name ? new_event.name : "Enter Event"] | " - html += "[new_event.event_type ? new_event.event_type : "Select Type"] | " - html += "[new_event.weight ? new_event.weight : 0] | " - html += "[new_event.one_shot] | " + html += "[new_event.name ? new_event.name : "Enter Event"] | " + html += "[new_event.event_type ? new_event.event_type : "Select Type"] | " + html += "[new_event.weight ? new_event.weight : 0] | " + html += "[new_event.one_shot] | " html += "
ResolveDetails #[ticket.ticketNum] ([ticket.ingame_time_opened]) [ticket.ticketState == TICKET_STALE ? "STALE" : ""] | [makeUrlMessage(ticket, one_line = TRUE)] |
ResolveDetails #[ticket.ticketNum] ([ticket.ingame_time_opened]) [ticket.ticketState == TICKET_STALE ? "STALE" : ""] | [makeUrlMessage(ticket, one_line = TRUE)] |
ResolveDetails #[ticket.ticketNum] ([ticket.ingame_time_opened]) | [makeUrlMessage(ticket, one_line = TRUE)] |
ResolveDetails #[ticket.ticketNum] ([ticket.ingame_time_opened]) | [makeUrlMessage(ticket, one_line = TRUE)] |
ResolveDetails #[ticket.ticketNum] ([ticket.ingame_time_opened]) | [makeUrlMessage(ticket, one_line = TRUE)] |
ResolveDetails #[ticket.ticketNum] ([ticket.ingame_time_opened]) | [makeUrlMessage(ticket, one_line = TRUE)] |