mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-30 08:37:43 +01:00
Turns transparency for turfs into an element, and gives it to datum materials. (#54250)
This commit is contained in:
@@ -16,7 +16,7 @@
|
||||
/turf/open/floor/wood,
|
||||
/area/ruin/unpowered)
|
||||
"d" = (
|
||||
/turf/open/transparent/openspace/icemoon,
|
||||
/turf/open/openspace/icemoon,
|
||||
/area/icemoon/surface/outdoors)
|
||||
"e" = (
|
||||
/obj/item/clothing/suit/hooded/explorer,
|
||||
|
||||
+2
-2
@@ -33,7 +33,7 @@
|
||||
"Linkage": null,
|
||||
"Gravity": true,
|
||||
"Ice Ruins Underground": true,
|
||||
"Baseturf": "/turf/open/transparent/openspace/icemoon"
|
||||
"Baseturf": "/turf/open/openspace/icemoon"
|
||||
},
|
||||
{
|
||||
"Down": -1,
|
||||
@@ -42,7 +42,7 @@
|
||||
"Gravity": true,
|
||||
"Ice Ruins": true,
|
||||
"Weather_Snowstorm": true,
|
||||
"Baseturf": "/turf/open/transparent/openspace/icemoon"
|
||||
"Baseturf": "/turf/open/openspace/icemoon"
|
||||
}
|
||||
],
|
||||
"minetype": "none",
|
||||
|
||||
@@ -931,7 +931,7 @@
|
||||
/obj/machinery/light/small{
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/transparent/openspace/icemoon,
|
||||
/turf/open/openspace/icemoon,
|
||||
/area/security/execution/transfer)
|
||||
"acb" = (
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
@@ -1128,7 +1128,7 @@
|
||||
id = "executionflash";
|
||||
pixel_x = 25
|
||||
},
|
||||
/turf/open/transparent/openspace/icemoon,
|
||||
/turf/open/openspace/icemoon,
|
||||
/area/security/execution/transfer)
|
||||
"acB" = (
|
||||
/obj/effect/turf_decal/stripes/end{
|
||||
@@ -7525,7 +7525,7 @@
|
||||
/obj/structure/railing{
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/quartermaster/storage)
|
||||
"aqv" = (
|
||||
/obj/machinery/door/airlock/external{
|
||||
@@ -7869,7 +7869,7 @@
|
||||
/turf/open/floor/plasteel,
|
||||
/area/crew_quarters/fitness)
|
||||
"arm" = (
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/quartermaster/storage)
|
||||
"arn" = (
|
||||
/obj/structure/closet/athletic_mixed,
|
||||
@@ -8088,7 +8088,7 @@
|
||||
/obj/structure/railing{
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/quartermaster/storage)
|
||||
"arR" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden/layer2,
|
||||
@@ -10863,7 +10863,7 @@
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/quartermaster/storage)
|
||||
"ayj" = (
|
||||
/obj/structure/table,
|
||||
@@ -17620,7 +17620,7 @@
|
||||
/obj/machinery/light{
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/hydroponics)
|
||||
"aNO" = (
|
||||
/obj/machinery/light/small{
|
||||
@@ -18029,7 +18029,7 @@
|
||||
/obj/machinery/camera{
|
||||
c_tag = "Hydroponics North"
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/hydroponics)
|
||||
"aOS" = (
|
||||
/obj/structure/disposalpipe/segment,
|
||||
@@ -18061,7 +18061,7 @@
|
||||
/area/hallway/secondary/entry)
|
||||
"aOZ" = (
|
||||
/obj/structure/lattice/catwalk,
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/hydroponics)
|
||||
"aPa" = (
|
||||
/obj/structure/disposalpipe/segment{
|
||||
@@ -18132,7 +18132,7 @@
|
||||
/obj/machinery/light/small{
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/transparent/openspace/icemoon,
|
||||
/turf/open/openspace/icemoon,
|
||||
/area/security/execution/transfer)
|
||||
"aPk" = (
|
||||
/turf/open/floor/plasteel/chapel{
|
||||
@@ -20003,7 +20003,7 @@
|
||||
/turf/open/floor/plasteel,
|
||||
/area/security/prison)
|
||||
"aUi" = (
|
||||
/turf/open/transparent/glass,
|
||||
/turf/open/floor/glass,
|
||||
/area/hydroponics)
|
||||
"aUl" = (
|
||||
/obj/structure/chair/office{
|
||||
@@ -20119,7 +20119,7 @@
|
||||
pixel_x = 24
|
||||
},
|
||||
/obj/structure/lattice/catwalk,
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/hydroponics)
|
||||
"aUA" = (
|
||||
/obj/structure/table/wood,
|
||||
@@ -20604,16 +20604,16 @@
|
||||
/obj/structure/railing{
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/transparent/glass,
|
||||
/turf/open/floor/glass,
|
||||
/area/hydroponics)
|
||||
"aVJ" = (
|
||||
/obj/machinery/light{
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/transparent/glass,
|
||||
/turf/open/floor/glass,
|
||||
/area/hydroponics)
|
||||
"aVK" = (
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/hydroponics)
|
||||
"aVL" = (
|
||||
/obj/structure/disposalpipe/sorting/mail/flip{
|
||||
@@ -20628,7 +20628,7 @@
|
||||
dir = 4
|
||||
},
|
||||
/obj/structure/lattice/catwalk,
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/hydroponics)
|
||||
"aVN" = (
|
||||
/obj/structure/disposalpipe/segment{
|
||||
@@ -20941,7 +20941,7 @@
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/port)
|
||||
"aWA" = (
|
||||
/turf/open/transparent/openspace/icemoon,
|
||||
/turf/open/openspace/icemoon,
|
||||
/area/security/execution/transfer)
|
||||
"aWC" = (
|
||||
/obj/structure/cable,
|
||||
@@ -21371,7 +21371,7 @@
|
||||
/obj/structure/railing{
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/hydroponics)
|
||||
"aXp" = (
|
||||
/obj/machinery/door/airlock{
|
||||
@@ -21867,7 +21867,7 @@
|
||||
"aYy" = (
|
||||
/obj/structure/closet/l3closet/scientist,
|
||||
/obj/item/extinguisher,
|
||||
/turf/open/transparent/glass/reinforced,
|
||||
/turf/open/floor/glass/reinforced,
|
||||
/area/science/xenobiology)
|
||||
"aYz" = (
|
||||
/obj/structure/disposalpipe/segment{
|
||||
@@ -27269,7 +27269,7 @@
|
||||
/turf/open/floor/plasteel,
|
||||
/area/security/checkpoint/medical)
|
||||
"blq" = (
|
||||
/turf/open/transparent/openspace/icemoon,
|
||||
/turf/open/openspace/icemoon,
|
||||
/area/icemoon/surface/outdoors)
|
||||
"blr" = (
|
||||
/obj/machinery/computer/card/minor/cmo,
|
||||
@@ -36517,7 +36517,7 @@
|
||||
/obj/machinery/light{
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/science/xenobiology)
|
||||
"bJI" = (
|
||||
/obj/structure/disposalpipe/segment,
|
||||
@@ -36805,7 +36805,7 @@
|
||||
/obj/structure/disposalpipe/segment{
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/transparent/openspace/icemoon,
|
||||
/turf/open/openspace/icemoon,
|
||||
/area/icemoon/surface/outdoors)
|
||||
"bKL" = (
|
||||
/obj/structure/disposalpipe/segment{
|
||||
@@ -36908,7 +36908,7 @@
|
||||
/obj/effect/turf_decal/stripes/line{
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/transparent/glass/reinforced,
|
||||
/turf/open/floor/glass/reinforced,
|
||||
/area/science/xenobiology)
|
||||
"bLc" = (
|
||||
/obj/machinery/computer/security/telescreen{
|
||||
@@ -38940,18 +38940,18 @@
|
||||
/turf/open/floor/plasteel,
|
||||
/area/security/checkpoint/engineering)
|
||||
"bRT" = (
|
||||
/turf/open/transparent/glass/reinforced,
|
||||
/turf/open/floor/glass/reinforced,
|
||||
/area/science/xenobiology)
|
||||
"bRY" = (
|
||||
/obj/structure/lattice/catwalk,
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/science/xenobiology)
|
||||
"bSa" = (
|
||||
/obj/structure/lattice/catwalk,
|
||||
/obj/structure/railing{
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/science/xenobiology)
|
||||
"bSc" = (
|
||||
/obj/structure/table,
|
||||
@@ -49391,7 +49391,7 @@
|
||||
/obj/structure/railing{
|
||||
dir = 10
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/storage/mining)
|
||||
"ekN" = (
|
||||
/obj/effect/turf_decal/tile/green,
|
||||
@@ -49554,7 +49554,7 @@
|
||||
dir = 8;
|
||||
network = list("ss13","rd","xeno_pens")
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/science/xenobiology)
|
||||
"feO" = (
|
||||
/obj/structure/disposalpipe/segment{
|
||||
@@ -50201,7 +50201,7 @@
|
||||
/obj/structure/railing{
|
||||
dir = 6
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/storage/mining)
|
||||
"gWd" = (
|
||||
/obj/structure/cable,
|
||||
@@ -50276,7 +50276,7 @@
|
||||
/area/crew_quarters/heads/captain)
|
||||
"heL" = (
|
||||
/obj/structure/closet/secure_closet/cytology,
|
||||
/turf/open/transparent/glass/reinforced,
|
||||
/turf/open/floor/glass/reinforced,
|
||||
/area/science/xenobiology)
|
||||
"hgK" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/supply/hidden/layer4{
|
||||
@@ -50388,7 +50388,7 @@
|
||||
/obj/machinery/light{
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/science/xenobiology)
|
||||
"hFg" = (
|
||||
/obj/machinery/door/airlock/external{
|
||||
@@ -50520,7 +50520,7 @@
|
||||
id = "publicElevator"
|
||||
},
|
||||
/obj/machinery/light/floor,
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/storage/mining)
|
||||
"ibG" = (
|
||||
/obj/machinery/nanite_programmer,
|
||||
@@ -50927,7 +50927,7 @@
|
||||
/obj/structure/lattice/catwalk,
|
||||
/obj/structure/window/reinforced,
|
||||
/obj/structure/reagent_dispensers/watertank,
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/science/xenobiology)
|
||||
"jqx" = (
|
||||
/obj/structure/railing/corner{
|
||||
@@ -51671,7 +51671,7 @@
|
||||
pixel_y = -24
|
||||
},
|
||||
/obj/machinery/light,
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/science/xenobiology)
|
||||
"kKU" = (
|
||||
/obj/effect/decal/cleanable/cobweb,
|
||||
@@ -51977,7 +51977,7 @@
|
||||
/obj/structure/extinguisher_cabinet{
|
||||
pixel_x = -27
|
||||
},
|
||||
/turf/open/transparent/glass/reinforced,
|
||||
/turf/open/floor/glass/reinforced,
|
||||
/area/science/xenobiology)
|
||||
"lzt" = (
|
||||
/obj/item/soap/deluxe,
|
||||
@@ -52148,7 +52148,7 @@
|
||||
/obj/structure/railing{
|
||||
dir = 9
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/storage/mining)
|
||||
"lTQ" = (
|
||||
/obj/vehicle/ridden/wheelchair{
|
||||
@@ -52187,7 +52187,7 @@
|
||||
dir = 1
|
||||
},
|
||||
/obj/structure/lattice/catwalk,
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/science/xenobiology)
|
||||
"lZG" = (
|
||||
/obj/effect/turf_decal/tile/blue,
|
||||
@@ -52339,7 +52339,7 @@
|
||||
/obj/machinery/light{
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/hydroponics)
|
||||
"muM" = (
|
||||
/obj/structure/cable,
|
||||
@@ -52675,11 +52675,11 @@
|
||||
/turf/open/floor/plating,
|
||||
/area/maintenance/starboard/aft)
|
||||
"nka" = (
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/science/xenobiology)
|
||||
"nlo" = (
|
||||
/obj/structure/industrial_lift,
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/storage/mining)
|
||||
"nlN" = (
|
||||
/obj/effect/turf_decal/tile/yellow,
|
||||
@@ -52925,7 +52925,7 @@
|
||||
c_tag = "Xenobiology Lab Entrance";
|
||||
network = list("ss13","rd")
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/science/xenobiology)
|
||||
"nLS" = (
|
||||
/obj/machinery/door/airlock/research{
|
||||
@@ -53245,7 +53245,7 @@
|
||||
/obj/structure/railing{
|
||||
dir = 5
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/storage/mining)
|
||||
"oHU" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/general/visible{
|
||||
@@ -53498,7 +53498,7 @@
|
||||
/obj/machinery/light{
|
||||
dir = 1
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/science/xenobiology)
|
||||
"pnD" = (
|
||||
/obj/structure/table/glass,
|
||||
@@ -53651,7 +53651,7 @@
|
||||
dir = 8;
|
||||
network = list("ss13","rd","xeno_pens")
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/science/xenobiology)
|
||||
"pBF" = (
|
||||
/obj/effect/turf_decal/trimline/blue/filled/line,
|
||||
@@ -55273,7 +55273,7 @@
|
||||
pixel_y = -22
|
||||
},
|
||||
/obj/machinery/light,
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/science/xenobiology)
|
||||
"ulo" = (
|
||||
/obj/effect/turf_decal/delivery,
|
||||
@@ -56283,7 +56283,7 @@
|
||||
/obj/machinery/firealarm{
|
||||
pixel_y = 24
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/science/xenobiology)
|
||||
"wUs" = (
|
||||
/obj/structure/closet/secure_closet/detective,
|
||||
@@ -56560,7 +56560,7 @@
|
||||
/obj/structure/rack,
|
||||
/obj/item/storage/box/lights/tubes,
|
||||
/obj/item/crowbar/red,
|
||||
/turf/open/transparent/glass/reinforced,
|
||||
/turf/open/floor/glass/reinforced,
|
||||
/area/science/xenobiology)
|
||||
"xzN" = (
|
||||
/obj/machinery/door/airlock/external{
|
||||
@@ -56592,7 +56592,7 @@
|
||||
/obj/machinery/light{
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/science/xenobiology)
|
||||
"xCR" = (
|
||||
/obj/effect/turf_decal/stripes/line{
|
||||
@@ -56859,7 +56859,7 @@
|
||||
/obj/structure/railing{
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/science/xenobiology)
|
||||
"ydc" = (
|
||||
/obj/structure/cable,
|
||||
@@ -56957,7 +56957,7 @@
|
||||
dir = 4;
|
||||
network = list("ss13","rd","xeno_pens")
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/science/xenobiology)
|
||||
|
||||
(1,1,1) = {"
|
||||
|
||||
@@ -2699,7 +2699,7 @@
|
||||
/turf/open/floor/plasteel,
|
||||
/area/mine/living_quarters)
|
||||
"kw" = (
|
||||
/turf/open/transparent/openspace/icemoon,
|
||||
/turf/open/openspace/icemoon,
|
||||
/area/storage/mining)
|
||||
"ky" = (
|
||||
/obj/machinery/light/small{
|
||||
@@ -5107,7 +5107,7 @@
|
||||
/turf/open/floor/plasteel/dark,
|
||||
/area/storage/mining)
|
||||
"Ma" = (
|
||||
/turf/open/transparent/openspace/icemoon,
|
||||
/turf/open/openspace/icemoon,
|
||||
/area/icemoon/underground/explored)
|
||||
"Mk" = (
|
||||
/obj/machinery/camera{
|
||||
|
||||
@@ -103,7 +103,7 @@
|
||||
/turf/open/floor/plasteel,
|
||||
/area/engine/gravity_generator)
|
||||
"au" = (
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/space)
|
||||
"av" = (
|
||||
/obj/structure/stairs/north,
|
||||
@@ -1030,7 +1030,7 @@
|
||||
},
|
||||
/area/hallway/secondary/service)
|
||||
"eC" = (
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/maintenance/department/bridge)
|
||||
"eD" = (
|
||||
/obj/effect/turf_decal/stripes/asteroid/line{
|
||||
@@ -1139,7 +1139,7 @@
|
||||
/area/engine/storage)
|
||||
"fp" = (
|
||||
/obj/structure/lattice/catwalk,
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/engine/storage)
|
||||
"gK" = (
|
||||
/obj/machinery/atmospherics/components/unary/portables_connector/visible{
|
||||
@@ -1198,7 +1198,7 @@
|
||||
/turf/open/floor/plating,
|
||||
/area/construction)
|
||||
"iu" = (
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/hallway/secondary/service)
|
||||
"iH" = (
|
||||
/obj/effect/turf_decal/stripes/white/line,
|
||||
@@ -1294,7 +1294,7 @@
|
||||
},
|
||||
/area/hallway/secondary/service)
|
||||
"nx" = (
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/space/nearstation)
|
||||
"nz" = (
|
||||
/obj/machinery/light{
|
||||
@@ -1346,10 +1346,10 @@
|
||||
/obj/machinery/light{
|
||||
dir = 4
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/hallway/secondary/service)
|
||||
"qo" = (
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/engine/storage)
|
||||
"qx" = (
|
||||
/obj/structure/railing/corner{
|
||||
@@ -1372,7 +1372,7 @@
|
||||
/obj/machinery/light{
|
||||
dir = 8
|
||||
},
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/engine/storage)
|
||||
"rN" = (
|
||||
/obj/machinery/atmospherics/pipe/manifold/supply/hidden{
|
||||
@@ -1485,7 +1485,7 @@
|
||||
/area/storage/primary)
|
||||
"xO" = (
|
||||
/obj/structure/lattice,
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/engine/storage)
|
||||
"yl" = (
|
||||
/obj/structure/cable,
|
||||
@@ -1562,7 +1562,7 @@
|
||||
/area/construction)
|
||||
"Bk" = (
|
||||
/obj/structure/grille,
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/space/nearstation)
|
||||
"Bm" = (
|
||||
/obj/machinery/light{
|
||||
@@ -1754,7 +1754,7 @@
|
||||
"Ob" = (
|
||||
/obj/structure/lattice,
|
||||
/obj/structure/grille,
|
||||
/turf/open/transparent/openspace,
|
||||
/turf/open/openspace,
|
||||
/area/space/nearstation)
|
||||
"Og" = (
|
||||
/obj/machinery/airalarm/directional/north,
|
||||
|
||||
@@ -11,12 +11,12 @@
|
||||
{
|
||||
"Up": 1,
|
||||
"Down": -1,
|
||||
"Baseturf": "/turf/open/transparent/openspace",
|
||||
"Baseturf": "/turf/open/openspace",
|
||||
"Linkage": "Cross"
|
||||
},
|
||||
{
|
||||
"Down": -1,
|
||||
"Baseturf": "/turf/open/transparent/openspace",
|
||||
"Baseturf": "/turf/open/openspace",
|
||||
"Linkage": "Cross"
|
||||
}
|
||||
]
|
||||
|
||||
@@ -229,7 +229,9 @@
|
||||
#define COMSIG_TURF_CHANGE "turf_change"
|
||||
///from base of atom/has_gravity(): (atom/asker, list/forced_gravities)
|
||||
#define COMSIG_TURF_HAS_GRAVITY "turf_has_gravity"
|
||||
///from base of turf/New(): (turf/source, direction)
|
||||
///from base of turf/multiz_turf_del(): (turf/source, direction)
|
||||
#define COMSIG_TURF_MULTIZ_DEL "turf_multiz_del"
|
||||
///from base of turf/multiz_turf_new: (turf/source, direction)
|
||||
#define COMSIG_TURF_MULTIZ_NEW "turf_multiz_new"
|
||||
|
||||
// /atom/movable signals
|
||||
|
||||
@@ -41,7 +41,7 @@ DEFINE_BITFIELD(smoothing_flags, list(
|
||||
#define SMOOTH_GROUP_TURF_OPEN S_TURF(0) ///turf/open
|
||||
#define SMOOTH_GROUP_TURF_CHASM S_TURF(1) ///turf/open/chasm, /turf/open/floor/fakepit
|
||||
#define SMOOTH_GROUP_FLOOR_LAVA S_TURF(2) ///turf/open/lava/smooth
|
||||
#define SMOOTH_GROUP_FLOOR_TRANSPARENT_GLASS S_TURF(3) ///turf/open/transparent/glass
|
||||
#define SMOOTH_GROUP_FLOOR_TRANSPARENT_GLASS S_TURF(3) ///turf/open/floor/glass
|
||||
|
||||
#define SMOOTH_GROUP_OPEN_FLOOR S_TURF(4) ///turf/open/floor
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ GLOBAL_LIST_INIT(turfs_without_ground, typecacheof(list(
|
||||
/turf/open/chasm,
|
||||
/turf/open/lava,
|
||||
/turf/open/water,
|
||||
/turf/open/transparent/openspace
|
||||
/turf/open/openspace
|
||||
)))
|
||||
|
||||
#define isgroundlessturf(A) (is_type_in_typecache(A, GLOB.turfs_without_ground))
|
||||
@@ -41,7 +41,7 @@ GLOBAL_LIST_INIT(turfs_without_ground, typecacheof(list(
|
||||
|
||||
#define isplatingturf(A) (istype(A, /turf/open/floor/plating))
|
||||
|
||||
#define istransparentturf(A) (istype(A, /turf/open/transparent))
|
||||
#define istransparentturf(A) (HAS_TRAIT(A, TURF_Z_TRANSPARENT_TRAIT))
|
||||
|
||||
//Mobs
|
||||
#define isliving(A) (istype(A, /mob/living))
|
||||
|
||||
@@ -354,6 +354,8 @@ Remember to update _globalvars/traits.dm if you're adding/removing/renaming trai
|
||||
#define HANDCUFFED_TRAIT "handcuffed"
|
||||
/// Trait granted by [/obj/item/warpwhistle]
|
||||
#define WARPWHISTLE_TRAIT "warpwhistle"
|
||||
///Turf trait for when a turf is transparent
|
||||
#define TURF_Z_TRANSPARENT_TRAIT "turf_z_transparent"
|
||||
/// Trait applied by by [/datum/component/soulstoned]
|
||||
#define SOULSTONE_TRAIT "soulstone"
|
||||
/// Trait applied to slimes by low temperature
|
||||
|
||||
@@ -102,7 +102,7 @@ SUBSYSTEM_DEF(mapping)
|
||||
// needs to be whitelisted for underground too so place_below ruins work
|
||||
seedRuins(ice_ruins, CONFIG_GET(number/icemoon_budget), list(/area/icemoon/surface/outdoors/unexplored, /area/icemoon/underground/unexplored), ice_ruins_templates)
|
||||
for (var/ice_z in ice_ruins)
|
||||
spawn_rivers(ice_z, 4, /turf/open/transparent/openspace/icemoon, /area/icemoon/surface/outdoors/unexplored/rivers)
|
||||
spawn_rivers(ice_z, 4, /turf/open/openspace/icemoon, /area/icemoon/surface/outdoors/unexplored/rivers)
|
||||
|
||||
var/list/ice_ruins_underground = levels_by_trait(ZTRAIT_ICE_RUINS_UNDERGROUND)
|
||||
if (ice_ruins_underground.len)
|
||||
|
||||
@@ -0,0 +1,75 @@
|
||||
/datum/element/turf_z_transparency
|
||||
var/show_bottom_level = FALSE
|
||||
|
||||
///This proc sets up the signals to handle updating viscontents when turfs above/below update. Handle plane and layer here too so that they don't cover other obs/turfs in Dream Maker
|
||||
/datum/element/turf_z_transparency/Attach(datum/target, show_bottom_level = TRUE)
|
||||
. = ..()
|
||||
if(!isturf(target))
|
||||
return ELEMENT_INCOMPATIBLE
|
||||
|
||||
var/turf/our_turf = target
|
||||
|
||||
src.show_bottom_level = show_bottom_level
|
||||
|
||||
our_turf.plane = OPENSPACE_PLANE
|
||||
our_turf.layer = OPENSPACE_LAYER
|
||||
|
||||
RegisterSignal(target, COMSIG_TURF_MULTIZ_DEL, .proc/on_multiz_turf_del)
|
||||
RegisterSignal(target, COMSIG_TURF_MULTIZ_NEW, .proc/on_multiz_turf_new)
|
||||
|
||||
ADD_TRAIT(our_turf, TURF_Z_TRANSPARENT_TRAIT, TURF_TRAIT)
|
||||
|
||||
|
||||
update_multiz(our_turf, TRUE, TRUE)
|
||||
|
||||
/datum/element/turf_z_transparency/Detach(datum/source, force)
|
||||
. = ..()
|
||||
var/turf/our_turf = source
|
||||
our_turf.vis_contents.len = 0
|
||||
REMOVE_TRAIT(our_turf, TURF_Z_TRANSPARENT_TRAIT, TURF_TRAIT)
|
||||
|
||||
///Updates the viscontents or underlays below this tile.
|
||||
/datum/element/turf_z_transparency/proc/update_multiz(turf/our_turf, prune_on_fail = FALSE, init = FALSE)
|
||||
var/turf/below_turf = our_turf.below()
|
||||
if(!below_turf)
|
||||
our_turf.vis_contents.len = 0
|
||||
if(!show_bottom_level(our_turf) && prune_on_fail) //If we cant show whats below, and we prune on fail, change the turf to plating as a fallback
|
||||
our_turf.ChangeTurf(/turf/open/floor/plating, flags = CHANGETURF_INHERIT_AIR)
|
||||
return FALSE
|
||||
if(init)
|
||||
our_turf.vis_contents += below_turf
|
||||
if(isclosedturf(our_turf)) //Show girders below closed turfs
|
||||
var/mutable_appearance/girder_underlay = mutable_appearance('icons/obj/structures.dmi', "girder", layer = TURF_LAYER-0.01)
|
||||
girder_underlay.appearance_flags = RESET_ALPHA | RESET_COLOR
|
||||
our_turf.underlays += girder_underlay
|
||||
var/mutable_appearance/plating_underlay = mutable_appearance('icons/turf/floors.dmi', "plating", layer = TURF_LAYER-0.02)
|
||||
plating_underlay = RESET_ALPHA | RESET_COLOR
|
||||
our_turf.underlays += plating_underlay
|
||||
return TRUE
|
||||
|
||||
/datum/element/turf_z_transparency/proc/on_multiz_turf_del(turf/our_turf, turf/T, dir)
|
||||
SIGNAL_HANDLER
|
||||
if(dir != DOWN)
|
||||
return
|
||||
update_multiz(our_turf)
|
||||
|
||||
/datum/element/turf_z_transparency/proc/on_multiz_turf_new(turf/our_turf, turf/T, dir)
|
||||
SIGNAL_HANDLER
|
||||
if(dir != DOWN)
|
||||
return
|
||||
update_multiz(our_turf)
|
||||
|
||||
///Called when there is no real turf below this turf
|
||||
/datum/element/turf_z_transparency/proc/show_bottom_level(turf/our_turf)
|
||||
if(!show_bottom_level)
|
||||
return FALSE
|
||||
var/turf/path = SSmapping.level_trait(our_turf.z, ZTRAIT_BASETURF) || /turf/open/space
|
||||
if(!ispath(path))
|
||||
path = text2path(path)
|
||||
if(!ispath(path))
|
||||
warning("Z-level [our_turf.z] has invalid baseturf '[SSmapping.level_trait(our_turf.z, ZTRAIT_BASETURF)]'")
|
||||
path = /turf/open/space
|
||||
var/mutable_appearance/underlay_appearance = mutable_appearance(initial(path.icon), initial(path.icon_state), layer = TURF_LAYER-0.02, plane = PLANE_SPACE)
|
||||
underlay_appearance.appearance_flags = RESET_ALPHA | RESET_COLOR
|
||||
our_turf.underlays += underlay_appearance
|
||||
return TRUE
|
||||
@@ -58,6 +58,8 @@ Simple datum which is instanced once per type and is used for every object of sa
|
||||
ADD_KEEP_TOGETHER(source, MATERIAL_SOURCE(src))
|
||||
source.filters += cached_texture_filter
|
||||
|
||||
if(alpha < 255)
|
||||
source.opacity = FALSE
|
||||
if(material_flags & MATERIAL_ADD_PREFIX)
|
||||
source.name = "[name] [source.name]"
|
||||
|
||||
@@ -107,13 +109,14 @@ Simple datum which is instanced once per type and is used for every object of sa
|
||||
|
||||
/datum/material/proc/on_applied_turf(turf/T, amount, material_flags)
|
||||
if(isopenturf(T))
|
||||
if(!turf_sound_override)
|
||||
return
|
||||
var/turf/open/O = T
|
||||
O.footstep = turf_sound_override
|
||||
O.barefootstep = turf_sound_override
|
||||
O.clawfootstep = turf_sound_override
|
||||
O.heavyfootstep = turf_sound_override
|
||||
if(turf_sound_override)
|
||||
var/turf/open/O = T
|
||||
O.footstep = turf_sound_override
|
||||
O.barefootstep = turf_sound_override
|
||||
O.clawfootstep = turf_sound_override
|
||||
O.heavyfootstep = turf_sound_override
|
||||
if(alpha < 255)
|
||||
T.AddElement(/datum/element/turf_z_transparency, TRUE)
|
||||
return
|
||||
|
||||
///This proc is called when the material is removed from an object.
|
||||
@@ -144,7 +147,8 @@ Simple datum which is instanced once per type and is used for every object of sa
|
||||
o.throwforce = initial(o.throwforce)
|
||||
|
||||
/datum/material/proc/on_removed_turf(turf/T, amount, material_flags)
|
||||
return
|
||||
if(alpha)
|
||||
RemoveElement(/datum/element/turf_z_transparency, FALSE)
|
||||
|
||||
/**
|
||||
* This proc is called when the mat is found in an item that's consumed by accident. see /obj/item/proc/on_accidental_consumption.
|
||||
|
||||
+1
-5
@@ -436,10 +436,6 @@
|
||||
M.forceMove(src)
|
||||
parts_list.Cut()
|
||||
|
||||
///Hook for multiz???
|
||||
/atom/proc/update_multiz(prune_on_fail = FALSE)
|
||||
return FALSE
|
||||
|
||||
///Take air from the passed in gas mixture datum
|
||||
/atom/proc/assume_air(datum/gas_mixture/giver)
|
||||
qdel(giver)
|
||||
@@ -1583,7 +1579,7 @@
|
||||
|
||||
if(isspaceturf(T)) // Turf never has gravity
|
||||
return 0
|
||||
if(istype(T, /turf/open/transparent/openspace)) //openspace in a space area doesn't get gravity
|
||||
if(istype(T, /turf/open/openspace)) //openspace in a space area doesn't get gravity
|
||||
if(istype(get_area(T), /area/space))
|
||||
return 0
|
||||
|
||||
|
||||
@@ -141,7 +141,7 @@
|
||||
/turf/open/space,
|
||||
/turf/open/chasm,
|
||||
/turf/open/lava,
|
||||
/turf/open/transparent/openspace))
|
||||
/turf/open/openspace))
|
||||
|
||||
set_base_icon()
|
||||
|
||||
|
||||
@@ -118,7 +118,7 @@
|
||||
var/turf/T = get_step_multiz(lift_platform, check_dir)
|
||||
if(!T)//the edges of multi-z maps
|
||||
return FALSE
|
||||
if(check_dir == DOWN && !istype(get_turf(lift_platform), /turf/open/transparent/openspace))
|
||||
if(check_dir == DOWN && !istype(get_turf(lift_platform), /turf/open/openspace))
|
||||
return FALSE
|
||||
return TRUE
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
#define STAIR_TERMINATOR_YES 2
|
||||
|
||||
// dir determines the direction of travel to go upwards
|
||||
// stairs require /turf/open/transparent/openspace as the tile above them to work, unless your stairs have 'force_open_above' set to TRUE
|
||||
// stairs require /turf/open/openspace as the tile above them to work, unless your stairs have 'force_open_above' set to TRUE
|
||||
// multiple stair objects can be chained together; the Z level transition will happen on the final stair object in the chain
|
||||
|
||||
/obj/structure/stairs
|
||||
@@ -12,7 +12,7 @@
|
||||
icon_state = "stairs"
|
||||
anchored = TRUE
|
||||
|
||||
var/force_open_above = FALSE // replaces the turf above this stair obj with /turf/open/transparent/openspace
|
||||
var/force_open_above = FALSE // replaces the turf above this stair obj with /turf/open/openspace
|
||||
var/terminator_mode = STAIR_TERMINATOR_AUTOMATIC
|
||||
var/turf/listeningTo
|
||||
|
||||
@@ -107,22 +107,22 @@
|
||||
/obj/structure/stairs/proc/build_signal_listener()
|
||||
if(listeningTo)
|
||||
UnregisterSignal(listeningTo, COMSIG_TURF_MULTIZ_NEW)
|
||||
var/turf/open/transparent/openspace/T = get_step_multiz(get_turf(src), UP)
|
||||
var/turf/open/openspace/T = get_step_multiz(get_turf(src), UP)
|
||||
RegisterSignal(T, COMSIG_TURF_MULTIZ_NEW, .proc/on_multiz_new)
|
||||
listeningTo = T
|
||||
|
||||
/obj/structure/stairs/proc/force_open_above()
|
||||
var/turf/open/transparent/openspace/T = get_step_multiz(get_turf(src), UP)
|
||||
var/turf/open/openspace/T = get_step_multiz(get_turf(src), UP)
|
||||
if(T && !istype(T))
|
||||
T.ChangeTurf(/turf/open/transparent/openspace, flags = CHANGETURF_INHERIT_AIR)
|
||||
T.ChangeTurf(/turf/open/openspace, flags = CHANGETURF_INHERIT_AIR)
|
||||
|
||||
/obj/structure/stairs/proc/on_multiz_new(turf/source, dir)
|
||||
SIGNAL_HANDLER
|
||||
|
||||
if(dir == UP)
|
||||
var/turf/open/transparent/openspace/T = get_step_multiz(get_turf(src), UP)
|
||||
var/turf/open/openspace/T = get_step_multiz(get_turf(src), UP)
|
||||
if(T && !istype(T))
|
||||
T.ChangeTurf(/turf/open/transparent/openspace, flags = CHANGETURF_INHERIT_AIR)
|
||||
T.ChangeTurf(/turf/open/openspace, flags = CHANGETURF_INHERIT_AIR)
|
||||
|
||||
/obj/structure/stairs/intercept_zImpact(atom/movable/AM, levels = 1)
|
||||
. = ..()
|
||||
|
||||
+2
-2
@@ -40,14 +40,14 @@ falloff_distance - Distance at which falloff begins. Sound is at peak volume (in
|
||||
if(!ignore_walls) //these sounds don't carry through walls
|
||||
listeners = listeners & hearers(maxdistance,turf_source)
|
||||
|
||||
if(istransparentturf(above_turf))
|
||||
if(above_turf && istransparentturf(above_turf))
|
||||
listeners += hearers(maxdistance,above_turf)
|
||||
|
||||
if(below_turf && istransparentturf(turf_source))
|
||||
listeners += hearers(maxdistance,below_turf)
|
||||
|
||||
else
|
||||
if(istransparentturf(above_turf))
|
||||
if(above_turf && istransparentturf(above_turf))
|
||||
listeners += SSmobs.clients_by_zlevel[above_turf.z]
|
||||
|
||||
if(below_turf && istransparentturf(turf_source))
|
||||
|
||||
@@ -199,7 +199,7 @@ GLOBAL_LIST_INIT(megafauna_spawn_list, list(/mob/living/simple_animal/hostile/me
|
||||
name = "snow"
|
||||
desc = "Looks cold."
|
||||
icon = 'icons/turf/snow.dmi'
|
||||
baseturfs = /turf/open/transparent/openspace/icemoon
|
||||
baseturfs = /turf/open/openspace/icemoon
|
||||
icon_state = "snow"
|
||||
icon_plating = "snow"
|
||||
initial_gas_mix = ICEMOON_DEFAULT_ATMOS
|
||||
@@ -466,7 +466,7 @@ GLOBAL_LIST_INIT(megafauna_spawn_list, list(/mob/living/simple_animal/hostile/me
|
||||
return FALSE
|
||||
|
||||
/turf/open/floor/plating/asteroid/snow/icemoon
|
||||
baseturfs = /turf/open/transparent/openspace/icemoon
|
||||
baseturfs = /turf/open/openspace/icemoon
|
||||
initial_gas_mix = ICEMOON_DEFAULT_ATMOS
|
||||
slowdown = 0
|
||||
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
/turf/open/floor/glass
|
||||
name = "Glass floor"
|
||||
desc = "Dont jump on it, or do, I'm not your mom."
|
||||
icon = 'icons/turf/floors/glass.dmi'
|
||||
icon_state = "glass-0"
|
||||
base_icon_state = "glass"
|
||||
baseturfs = /turf/open/openspace
|
||||
intact = FALSE //this means wires go on top
|
||||
smoothing_flags = SMOOTH_BITMASK
|
||||
smoothing_groups = list(SMOOTH_GROUP_TURF_OPEN, SMOOTH_GROUP_FLOOR_TRANSPARENT_GLASS)
|
||||
canSmoothWith = list(SMOOTH_GROUP_FLOOR_TRANSPARENT_GLASS)
|
||||
footstep = FOOTSTEP_PLATING
|
||||
barefootstep = FOOTSTEP_HARD_BAREFOOT
|
||||
clawfootstep = FOOTSTEP_HARD_CLAW
|
||||
heavyfootstep = FOOTSTEP_GENERIC_HEAVY
|
||||
|
||||
/turf/open/floor/glass/Initialize()
|
||||
icon_state = "" //Prevent the normal icon from appearing behind the smooth overlays
|
||||
..()
|
||||
return INITIALIZE_HINT_LATELOAD
|
||||
|
||||
/turf/open/floor/glass/LateInitialize()
|
||||
. = ..()
|
||||
AddElement(/datum/element/turf_z_transparency, TRUE)
|
||||
|
||||
/turf/open/floor/glass/reinforced
|
||||
name = "Reinforced glass floor"
|
||||
desc = "Do jump on it, it can take it."
|
||||
icon = 'icons/turf/floors/reinf_glass.dmi'
|
||||
icon_state = "reinf_glass-0"
|
||||
base_icon_state = "reinf_glass"
|
||||
@@ -13,44 +13,42 @@ GLOBAL_DATUM_INIT(openspace_backdrop_one_for_all, /atom/movable/openspace_backdr
|
||||
//I don't know why the others are aligned but I shall do the same.
|
||||
vis_flags = VIS_INHERIT_ID
|
||||
|
||||
/turf/open/transparent/openspace
|
||||
/turf/open/openspace
|
||||
name = "open space"
|
||||
desc = "Watch your step!"
|
||||
icon_state = "transparent"
|
||||
baseturfs = /turf/open/transparent/openspace
|
||||
baseturfs = /turf/open/openspace
|
||||
CanAtmosPassVertical = ATMOS_PASS_YES
|
||||
baseturfs = /turf/open/openspace
|
||||
intact = FALSE //this means wires go on top
|
||||
//mouse_opacity = MOUSE_OPACITY_TRANSPARENT
|
||||
var/can_cover_up = TRUE
|
||||
var/can_build_on = TRUE
|
||||
|
||||
/turf/open/transparent/openspace/airless
|
||||
/turf/open/openspace/airless
|
||||
initial_gas_mix = AIRLESS_ATMOS
|
||||
|
||||
/turf/open/transparent/openspace/debug/update_multiz()
|
||||
..()
|
||||
return TRUE
|
||||
|
||||
///No bottom level for openspace.
|
||||
/turf/open/transparent/openspace/show_bottom_level()
|
||||
return FALSE
|
||||
|
||||
/turf/open/transparent/openspace/Initialize() // handle plane and layer here so that they don't cover other obs/turfs in Dream Maker
|
||||
/turf/open/openspace/Initialize() // handle plane and layer here so that they don't cover other obs/turfs in Dream Maker
|
||||
. = ..()
|
||||
|
||||
vis_contents += GLOB.openspace_backdrop_one_for_all //Special grey square for projecting backdrop darkness filter on it.
|
||||
return INITIALIZE_HINT_LATELOAD
|
||||
|
||||
/turf/open/transparent/openspace/can_have_cabling()
|
||||
/turf/open/openspace/LateInitialize()
|
||||
. = ..()
|
||||
AddElement(/datum/element/turf_z_transparency, FALSE)
|
||||
|
||||
/turf/open/openspace/can_have_cabling()
|
||||
if(locate(/obj/structure/lattice/catwalk, src))
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
/turf/open/transparent/openspace/zAirIn()
|
||||
/turf/open/openspace/zAirIn()
|
||||
return TRUE
|
||||
|
||||
/turf/open/transparent/openspace/zAirOut()
|
||||
/turf/open/openspace/zAirOut()
|
||||
return TRUE
|
||||
|
||||
/turf/open/transparent/openspace/zPassIn(atom/movable/A, direction, turf/source)
|
||||
/turf/open/openspace/zPassIn(atom/movable/A, direction, turf/source)
|
||||
if(direction == DOWN)
|
||||
for(var/obj/O in contents)
|
||||
if(O.obj_flags & BLOCK_Z_IN_DOWN)
|
||||
@@ -63,7 +61,7 @@ GLOBAL_DATUM_INIT(openspace_backdrop_one_for_all, /atom/movable/openspace_backdr
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
/turf/open/transparent/openspace/zPassOut(atom/movable/A, direction, turf/destination)
|
||||
/turf/open/openspace/zPassOut(atom/movable/A, direction, turf/destination)
|
||||
if(A.anchored)
|
||||
return FALSE
|
||||
if(direction == DOWN)
|
||||
@@ -78,13 +76,13 @@ GLOBAL_DATUM_INIT(openspace_backdrop_one_for_all, /atom/movable/openspace_backdr
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
/turf/open/transparent/openspace/proc/CanCoverUp()
|
||||
/turf/open/openspace/proc/CanCoverUp()
|
||||
return can_cover_up
|
||||
|
||||
/turf/open/transparent/openspace/proc/CanBuildHere()
|
||||
/turf/open/openspace/proc/CanBuildHere()
|
||||
return can_build_on
|
||||
|
||||
/turf/open/transparent/openspace/attackby(obj/item/C, mob/user, params)
|
||||
/turf/open/openspace/attackby(obj/item/C, mob/user, params)
|
||||
..()
|
||||
if(!CanBuildHere())
|
||||
return
|
||||
@@ -127,7 +125,7 @@ GLOBAL_DATUM_INIT(openspace_backdrop_one_for_all, /atom/movable/openspace_backdr
|
||||
else
|
||||
to_chat(user, "<span class='warning'>The plating is going to need some support! Place metal rods first.</span>")
|
||||
|
||||
/turf/open/transparent/openspace/rcd_vals(mob/user, obj/item/construction/rcd/the_rcd)
|
||||
/turf/open/openspace/rcd_vals(mob/user, obj/item/construction/rcd/the_rcd)
|
||||
if(!CanBuildHere())
|
||||
return FALSE
|
||||
|
||||
@@ -140,7 +138,7 @@ GLOBAL_DATUM_INIT(openspace_backdrop_one_for_all, /atom/movable/openspace_backdr
|
||||
return list("mode" = RCD_FLOORWALL, "delay" = 0, "cost" = 3)
|
||||
return FALSE
|
||||
|
||||
/turf/open/transparent/openspace/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, passed_mode)
|
||||
/turf/open/openspace/rcd_act(mob/user, obj/item/construction/rcd/the_rcd, passed_mode)
|
||||
switch(passed_mode)
|
||||
if(RCD_FLOORWALL)
|
||||
to_chat(user, "<span class='notice'>You build a floor.</span>")
|
||||
@@ -148,13 +146,13 @@ GLOBAL_DATUM_INIT(openspace_backdrop_one_for_all, /atom/movable/openspace_backdr
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
/turf/open/transparent/openspace/icemoon
|
||||
/turf/open/openspace/icemoon
|
||||
name = "ice chasm"
|
||||
baseturfs = /turf/open/transparent/openspace/icemoon
|
||||
baseturfs = /turf/open/openspace/icemoon
|
||||
initial_gas_mix = ICEMOON_DEFAULT_ATMOS
|
||||
var/replacement_turf = /turf/open/floor/plating/asteroid/snow/icemoon
|
||||
|
||||
/turf/open/transparent/openspace/icemoon/Initialize()
|
||||
/turf/open/openspace/icemoon/Initialize()
|
||||
. = ..()
|
||||
var/turf/T = below()
|
||||
if(T.flags_1 & NO_RUINS_1)
|
||||
@@ -165,5 +163,5 @@ GLOBAL_DATUM_INIT(openspace_backdrop_one_for_all, /atom/movable/openspace_backdr
|
||||
var/turf/closed/mineral/M = T
|
||||
M.mineralAmt = 0
|
||||
M.gets_drilled()
|
||||
baseturfs = /turf/open/transparent/openspace/icemoon //This is to ensure that IF random turf generation produces a openturf, there won't be other turfs assigned other than openspace.
|
||||
baseturfs = /turf/open/openspace/icemoon //This is to ensure that IF random turf generation produces a openturf, there won't be other turfs assigned other than openspace.
|
||||
|
||||
|
||||
@@ -63,6 +63,13 @@
|
||||
if (opacity)
|
||||
directional_opacity = ALL_CARDINALS
|
||||
|
||||
var/turf/T = SSmapping.get_turf_above(src)
|
||||
if(T)
|
||||
T.multiz_turf_new(src, DOWN)
|
||||
T = SSmapping.get_turf_below(src)
|
||||
if(T)
|
||||
T.multiz_turf_new(src, UP)
|
||||
|
||||
ComponentInitialize()
|
||||
|
||||
return INITIALIZE_HINT_NORMAL
|
||||
|
||||
@@ -1,77 +0,0 @@
|
||||
/turf/open/transparent
|
||||
baseturfs = /turf/open/transparent/openspace
|
||||
intact = FALSE //this means wires go on top
|
||||
|
||||
/turf/open/transparent/Initialize() // handle plane and layer here so that they don't cover other obs/turfs in Dream Maker
|
||||
. = ..()
|
||||
plane = OPENSPACE_PLANE
|
||||
layer = OPENSPACE_LAYER
|
||||
|
||||
return INITIALIZE_HINT_LATELOAD
|
||||
|
||||
/turf/open/transparent/LateInitialize()
|
||||
update_multiz(TRUE, TRUE)
|
||||
|
||||
/turf/open/transparent/Destroy()
|
||||
vis_contents.len = 0
|
||||
return ..()
|
||||
|
||||
/turf/open/transparent/update_multiz(prune_on_fail = FALSE, init = FALSE)
|
||||
. = ..()
|
||||
var/turf/T = below()
|
||||
if(!T)
|
||||
vis_contents.len = 0
|
||||
if(!show_bottom_level() && prune_on_fail) //If we cant show whats below, and we prune on fail, change the turf to plating as a fallback
|
||||
ChangeTurf(/turf/open/floor/plating, flags = CHANGETURF_INHERIT_AIR)
|
||||
return FALSE
|
||||
if(init)
|
||||
vis_contents += T
|
||||
return TRUE
|
||||
|
||||
/turf/open/transparent/multiz_turf_del(turf/T, dir)
|
||||
if(dir != DOWN)
|
||||
return
|
||||
update_multiz()
|
||||
|
||||
/turf/open/transparent/multiz_turf_new(turf/T, dir)
|
||||
if(dir != DOWN)
|
||||
return
|
||||
update_multiz()
|
||||
|
||||
///Called when there is no real turf below this turf
|
||||
/turf/open/transparent/proc/show_bottom_level()
|
||||
var/turf/path = SSmapping.level_trait(z, ZTRAIT_BASETURF) || /turf/open/space
|
||||
if(!ispath(path))
|
||||
path = text2path(path)
|
||||
if(!ispath(path))
|
||||
warning("Z-level [z] has invalid baseturf '[SSmapping.level_trait(z, ZTRAIT_BASETURF)]'")
|
||||
path = /turf/open/space
|
||||
var/mutable_appearance/underlay_appearance = mutable_appearance(initial(path.icon), initial(path.icon_state), layer = TURF_LAYER, plane = PLANE_SPACE)
|
||||
underlays += underlay_appearance
|
||||
return TRUE
|
||||
|
||||
|
||||
/turf/open/transparent/glass
|
||||
name = "Glass floor"
|
||||
desc = "Dont jump on it, or do, I'm not your mom."
|
||||
icon = 'icons/turf/floors/glass.dmi'
|
||||
icon_state = "glass-0"
|
||||
base_icon_state = "glass"
|
||||
smoothing_flags = SMOOTH_BITMASK
|
||||
smoothing_groups = list(SMOOTH_GROUP_TURF_OPEN, SMOOTH_GROUP_FLOOR_TRANSPARENT_GLASS)
|
||||
canSmoothWith = list(SMOOTH_GROUP_FLOOR_TRANSPARENT_GLASS)
|
||||
footstep = FOOTSTEP_PLATING
|
||||
barefootstep = FOOTSTEP_HARD_BAREFOOT
|
||||
clawfootstep = FOOTSTEP_HARD_CLAW
|
||||
heavyfootstep = FOOTSTEP_GENERIC_HEAVY
|
||||
|
||||
/turf/open/transparent/glass/Initialize()
|
||||
icon_state = "" //Prevent the normal icon from appearing behind the smooth overlays
|
||||
return ..()
|
||||
|
||||
/turf/open/transparent/glass/reinforced
|
||||
name = "Reinforced glass floor"
|
||||
desc = "Do jump on it, it can take it."
|
||||
icon = 'icons/turf/floors/reinf_glass.dmi'
|
||||
icon_state = "reinf_glass-0"
|
||||
base_icon_state = "reinf_glass"
|
||||
@@ -111,11 +111,10 @@ GLOBAL_LIST_EMPTY(station_turfs)
|
||||
var/turf/T = SSmapping.get_turf_above(src)
|
||||
if(T)
|
||||
T.multiz_turf_new(src, DOWN)
|
||||
SEND_SIGNAL(T, COMSIG_TURF_MULTIZ_NEW, src, DOWN)
|
||||
T = SSmapping.get_turf_below(src)
|
||||
if(T)
|
||||
T.multiz_turf_new(src, UP)
|
||||
SEND_SIGNAL(T, COMSIG_TURF_MULTIZ_NEW, src, UP)
|
||||
|
||||
|
||||
if (opacity)
|
||||
directional_opacity = ALL_CARDINALS
|
||||
@@ -162,8 +161,10 @@ GLOBAL_LIST_EMPTY(station_turfs)
|
||||
user.Move_Pulled(src)
|
||||
|
||||
/turf/proc/multiz_turf_del(turf/T, dir)
|
||||
SEND_SIGNAL(src, COMSIG_TURF_MULTIZ_DEL, T, dir)
|
||||
|
||||
/turf/proc/multiz_turf_new(turf/T, dir)
|
||||
SEND_SIGNAL(src, COMSIG_TURF_MULTIZ_NEW, T, dir)
|
||||
|
||||
///returns if the turf has something dense inside it. if exclude_mobs is true, skips dense mobs like fat yoshi.
|
||||
/turf/proc/is_blocked_turf(exclude_mobs)
|
||||
|
||||
@@ -78,7 +78,7 @@
|
||||
toggle()
|
||||
|
||||
/obj/structure/pitgrate/proc/update_openspace()
|
||||
var/turf/open/transparent/openspace/T = get_turf(src)
|
||||
var/turf/open/openspace/T = get_turf(src)
|
||||
if(!istype(T))
|
||||
return
|
||||
//Simple way to keep plane conflicts away, could probably be upgraded to something less nuclear with 513
|
||||
|
||||
@@ -183,7 +183,7 @@
|
||||
var/clone_area = SSmapping.RequestBlockReservation(size_x * 2 + 1, size_y * 2 + 1)
|
||||
for(var/turf/placeholder in block(locate(target_turf.x - size_x, target_turf.y - size_y, target_turf.z), locate(target_turf.x + size_x, target_turf.y + size_y, target_turf.z)))
|
||||
var/turf/T = placeholder
|
||||
while(istype(T, /turf/open/transparent/openspace)) //Multi-z photography
|
||||
while(istype(T, /turf/open/openspace)) //Multi-z photography
|
||||
T = SSmapping.get_turf_below(T)
|
||||
if(!T)
|
||||
break
|
||||
|
||||
+2
-1
@@ -587,6 +587,7 @@
|
||||
#include "code\datums\elements\squish.dm"
|
||||
#include "code\datums\elements\swabbable.dm"
|
||||
#include "code\datums\elements\tool_flash.dm"
|
||||
#include "code\datums\elements\turf_transparency.dm"
|
||||
#include "code\datums\elements\undertile.dm"
|
||||
#include "code\datums\elements\update_icon_blocker.dm"
|
||||
#include "code\datums\elements\update_icon_updates_onmob.dm"
|
||||
@@ -1313,10 +1314,10 @@
|
||||
#include "code\game\turfs\open\chasm.dm"
|
||||
#include "code\game\turfs\open\dirtystation.dm"
|
||||
#include "code\game\turfs\open\floor.dm"
|
||||
#include "code\game\turfs\open\glass.dm"
|
||||
#include "code\game\turfs\open\lava.dm"
|
||||
#include "code\game\turfs\open\openspace.dm"
|
||||
#include "code\game\turfs\open\river.dm"
|
||||
#include "code\game\turfs\open\transparent.dm"
|
||||
#include "code\game\turfs\open\water.dm"
|
||||
#include "code\game\turfs\open\floor\fancy_floor.dm"
|
||||
#include "code\game\turfs\open\floor\hull.dm"
|
||||
|
||||
Reference in New Issue
Block a user