Merge pull request #10238 from Ghommie/Ghommie-cit478
Brings in some mapping code updates.
This commit is contained in:
@@ -967,10 +967,6 @@
|
|||||||
},
|
},
|
||||||
/turf/open/floor/plating,
|
/turf/open/floor/plating,
|
||||||
/area/awaymission/cabin)
|
/area/awaymission/cabin)
|
||||||
"dw" = (
|
|
||||||
/obj/effect/mapping_helpers/planet_z,
|
|
||||||
/turf/closed/indestructible/rock/snow,
|
|
||||||
/area/space)
|
|
||||||
|
|
||||||
(1,1,1) = {"
|
(1,1,1) = {"
|
||||||
aa
|
aa
|
||||||
@@ -1227,7 +1223,7 @@ aa
|
|||||||
aa
|
aa
|
||||||
aa
|
aa
|
||||||
aa
|
aa
|
||||||
dw
|
aa
|
||||||
"}
|
"}
|
||||||
(2,1,1) = {"
|
(2,1,1) = {"
|
||||||
aa
|
aa
|
||||||
|
|||||||
@@ -4,9 +4,15 @@
|
|||||||
/turf/closed/indestructible/rock/snow,
|
/turf/closed/indestructible/rock/snow,
|
||||||
/area/awaymission/snowdin/cave/mountain)
|
/area/awaymission/snowdin/cave/mountain)
|
||||||
"ab" = (
|
"ab" = (
|
||||||
/obj/effect/mapping_helpers/planet_z,
|
/obj/effect/turf_decal/tile/neutral{
|
||||||
/turf/closed/indestructible/rock/snow,
|
dir = 1
|
||||||
/area/awaymission/snowdin/cave/mountain)
|
},
|
||||||
|
/obj/effect/turf_decal/tile/neutral{
|
||||||
|
dir = 8
|
||||||
|
},
|
||||||
|
/mob/living/simple_animal/hostile/netherworld/migo,
|
||||||
|
/turf/open/floor/plasteel,
|
||||||
|
/area/awaymission/snowdin/post/mining_dock)
|
||||||
"ac" = (
|
"ac" = (
|
||||||
/turf/closed/indestructible/rock/snow,
|
/turf/closed/indestructible/rock/snow,
|
||||||
/area/awaymission/snowdin/cave/mountain)
|
/area/awaymission/snowdin/cave/mountain)
|
||||||
@@ -10267,16 +10273,6 @@
|
|||||||
/obj/item/shard,
|
/obj/item/shard,
|
||||||
/turf/open/floor/plating,
|
/turf/open/floor/plating,
|
||||||
/area/awaymission/snowdin/post/mining_dock)
|
/area/awaymission/snowdin/post/mining_dock)
|
||||||
"xA" = (
|
|
||||||
/mob/living/simple_animal/hostile/netherworld/migo,
|
|
||||||
/obj/effect/turf_decal/tile/neutral{
|
|
||||||
dir = 1
|
|
||||||
},
|
|
||||||
/obj/effect/turf_decal/tile/neutral{
|
|
||||||
dir = 8
|
|
||||||
},
|
|
||||||
/turf/open/floor/plasteel,
|
|
||||||
/area/awaymission/snowdin/post/mining_dock)
|
|
||||||
"xB" = (
|
"xB" = (
|
||||||
/obj/effect/turf_decal/stripes/line{
|
/obj/effect/turf_decal/stripes/line{
|
||||||
dir = 4
|
dir = 4
|
||||||
@@ -16013,7 +16009,7 @@ ac
|
|||||||
ac
|
ac
|
||||||
"}
|
"}
|
||||||
(2,1,1) = {"
|
(2,1,1) = {"
|
||||||
ab
|
ac
|
||||||
ac
|
ac
|
||||||
ac
|
ac
|
||||||
ac
|
ac
|
||||||
@@ -66518,7 +66514,7 @@ wD
|
|||||||
wT
|
wT
|
||||||
xe
|
xe
|
||||||
xs
|
xs
|
||||||
xA
|
ab
|
||||||
xI
|
xI
|
||||||
xN
|
xN
|
||||||
wL
|
wL
|
||||||
|
|||||||
@@ -2251,10 +2251,6 @@
|
|||||||
initial_gas_mix = "n2=23;o2=14"
|
initial_gas_mix = "n2=23;o2=14"
|
||||||
},
|
},
|
||||||
/area/awaymission/caves/BMP_asteroid)
|
/area/awaymission/caves/BMP_asteroid)
|
||||||
"gW" = (
|
|
||||||
/obj/effect/mapping_helpers/planet_z,
|
|
||||||
/turf/closed/indestructible/rock,
|
|
||||||
/area/space/nearstation)
|
|
||||||
"gX" = (
|
"gX" = (
|
||||||
/obj/effect/baseturf_helper/lava,
|
/obj/effect/baseturf_helper/lava,
|
||||||
/turf/closed/mineral/volcanic,
|
/turf/closed/mineral/volcanic,
|
||||||
@@ -2536,7 +2532,7 @@ aa
|
|||||||
aa
|
aa
|
||||||
aa
|
aa
|
||||||
aa
|
aa
|
||||||
gW
|
aa
|
||||||
"}
|
"}
|
||||||
(2,1,1) = {"
|
(2,1,1) = {"
|
||||||
aa
|
aa
|
||||||
|
|||||||
@@ -7215,10 +7215,6 @@
|
|||||||
heat_capacity = 1e+006
|
heat_capacity = 1e+006
|
||||||
},
|
},
|
||||||
/area/awaymission/moonoutpost19/research)
|
/area/awaymission/moonoutpost19/research)
|
||||||
"oV" = (
|
|
||||||
/obj/effect/mapping_helpers/planet_z,
|
|
||||||
/turf/open/space,
|
|
||||||
/area/space)
|
|
||||||
"vV" = (
|
"vV" = (
|
||||||
/obj/machinery/door/airlock/external,
|
/obj/machinery/door/airlock/external,
|
||||||
/obj/effect/mapping_helpers/airlock/cyclelink_helper{
|
/obj/effect/mapping_helpers/airlock/cyclelink_helper{
|
||||||
@@ -7512,7 +7508,7 @@ aa
|
|||||||
aa
|
aa
|
||||||
aa
|
aa
|
||||||
aa
|
aa
|
||||||
oV
|
aa
|
||||||
"}
|
"}
|
||||||
(2,1,1) = {"
|
(2,1,1) = {"
|
||||||
aa
|
aa
|
||||||
|
|||||||
@@ -4,9 +4,15 @@
|
|||||||
/turf/closed/indestructible/rock/snow,
|
/turf/closed/indestructible/rock/snow,
|
||||||
/area/awaymission/snowdin/cave/mountain)
|
/area/awaymission/snowdin/cave/mountain)
|
||||||
"ab" = (
|
"ab" = (
|
||||||
/obj/effect/mapping_helpers/planet_z,
|
/obj/effect/turf_decal/tile/neutral{
|
||||||
/turf/closed/indestructible/rock/snow,
|
dir = 1
|
||||||
/area/awaymission/snowdin/cave/mountain)
|
},
|
||||||
|
/obj/effect/turf_decal/tile/neutral{
|
||||||
|
dir = 8
|
||||||
|
},
|
||||||
|
/mob/living/simple_animal/hostile/netherworld/migo,
|
||||||
|
/turf/open/floor/plasteel,
|
||||||
|
/area/awaymission/snowdin/post/mining_dock)
|
||||||
"ac" = (
|
"ac" = (
|
||||||
/turf/closed/indestructible/rock/snow,
|
/turf/closed/indestructible/rock/snow,
|
||||||
/area/awaymission/snowdin/cave/mountain)
|
/area/awaymission/snowdin/cave/mountain)
|
||||||
@@ -10331,16 +10337,6 @@
|
|||||||
/obj/item/shard,
|
/obj/item/shard,
|
||||||
/turf/open/floor/plating,
|
/turf/open/floor/plating,
|
||||||
/area/awaymission/snowdin/post/mining_dock)
|
/area/awaymission/snowdin/post/mining_dock)
|
||||||
"xA" = (
|
|
||||||
/mob/living/simple_animal/hostile/netherworld/migo,
|
|
||||||
/obj/effect/turf_decal/tile/neutral{
|
|
||||||
dir = 1
|
|
||||||
},
|
|
||||||
/obj/effect/turf_decal/tile/neutral{
|
|
||||||
dir = 8
|
|
||||||
},
|
|
||||||
/turf/open/floor/plasteel,
|
|
||||||
/area/awaymission/snowdin/post/mining_dock)
|
|
||||||
"xB" = (
|
"xB" = (
|
||||||
/obj/effect/turf_decal/stripes/line{
|
/obj/effect/turf_decal/stripes/line{
|
||||||
dir = 4
|
dir = 4
|
||||||
@@ -16108,7 +16104,7 @@ ac
|
|||||||
ac
|
ac
|
||||||
"}
|
"}
|
||||||
(2,1,1) = {"
|
(2,1,1) = {"
|
||||||
ab
|
ac
|
||||||
ac
|
ac
|
||||||
ac
|
ac
|
||||||
ac
|
ac
|
||||||
@@ -66613,7 +66609,7 @@ wD
|
|||||||
wT
|
wT
|
||||||
xe
|
xe
|
||||||
xs
|
xs
|
||||||
xA
|
ab
|
||||||
xI
|
xI
|
||||||
xN
|
xN
|
||||||
wL
|
wL
|
||||||
|
|||||||
@@ -5,6 +5,16 @@
|
|||||||
"ab" = (
|
"ab" = (
|
||||||
/turf/open/space,
|
/turf/open/space,
|
||||||
/area/space)
|
/area/space)
|
||||||
|
"ac" = (
|
||||||
|
/obj/effect/turf_decal/tile/blue{
|
||||||
|
dir = 1
|
||||||
|
},
|
||||||
|
/obj/effect/turf_decal/tile/blue{
|
||||||
|
dir = 8
|
||||||
|
},
|
||||||
|
/mob/living/simple_animal/hostile/syndicate/melee/sword,
|
||||||
|
/turf/open/floor/plasteel,
|
||||||
|
/area/awaymission/spacebattle/cruiser)
|
||||||
"ad" = (
|
"ad" = (
|
||||||
/obj/structure/shuttle/engine/propulsion/right{
|
/obj/structure/shuttle/engine/propulsion/right{
|
||||||
dir = 1
|
dir = 1
|
||||||
@@ -2597,16 +2607,6 @@
|
|||||||
/obj/effect/spawner/lootdrop/armory_contraband,
|
/obj/effect/spawner/lootdrop/armory_contraband,
|
||||||
/turf/open/floor/plating,
|
/turf/open/floor/plating,
|
||||||
/area/awaymission/spacebattle/cruiser)
|
/area/awaymission/spacebattle/cruiser)
|
||||||
"jK" = (
|
|
||||||
/mob/living/simple_animal/hostile/syndicate/melee/sword,
|
|
||||||
/obj/effect/turf_decal/tile/blue{
|
|
||||||
dir = 1
|
|
||||||
},
|
|
||||||
/obj/effect/turf_decal/tile/blue{
|
|
||||||
dir = 8
|
|
||||||
},
|
|
||||||
/turf/open/floor/plasteel,
|
|
||||||
/area/awaymission/spacebattle/cruiser)
|
|
||||||
"jL" = (
|
"jL" = (
|
||||||
/obj/machinery/door/poddoor{
|
/obj/machinery/door/poddoor{
|
||||||
id = "spacebattlearmory";
|
id = "spacebattlearmory";
|
||||||
@@ -2894,10 +2894,6 @@
|
|||||||
/obj/item/mecha_parts/mecha_equipment/weapon/energy/ion,
|
/obj/item/mecha_parts/mecha_equipment/weapon/energy/ion,
|
||||||
/turf/open/floor/plating,
|
/turf/open/floor/plating,
|
||||||
/area/awaymission/spacebattle/cruiser)
|
/area/awaymission/spacebattle/cruiser)
|
||||||
"kM" = (
|
|
||||||
/obj/effect/mapping_helpers/planet_z,
|
|
||||||
/turf/closed/mineral/random,
|
|
||||||
/area/space/nearstation)
|
|
||||||
"vw" = (
|
"vw" = (
|
||||||
/turf/closed/wall/mineral/plastitanium/nodiagonal,
|
/turf/closed/wall/mineral/plastitanium/nodiagonal,
|
||||||
/area/awaymission/spacebattle/syndicate5)
|
/area/awaymission/spacebattle/syndicate5)
|
||||||
@@ -3175,7 +3171,7 @@ aa
|
|||||||
aa
|
aa
|
||||||
aa
|
aa
|
||||||
aa
|
aa
|
||||||
kM
|
aa
|
||||||
"}
|
"}
|
||||||
(2,1,1) = {"
|
(2,1,1) = {"
|
||||||
aa
|
aa
|
||||||
@@ -35686,10 +35682,10 @@ eC
|
|||||||
cn
|
cn
|
||||||
fL
|
fL
|
||||||
cp
|
cp
|
||||||
jK
|
ac
|
||||||
fs
|
fs
|
||||||
fO
|
fO
|
||||||
jK
|
ac
|
||||||
eM
|
eM
|
||||||
eM
|
eM
|
||||||
eM
|
eM
|
||||||
|
|||||||
@@ -25,6 +25,9 @@
|
|||||||
"ag" = (
|
"ag" = (
|
||||||
/turf/closed/wall/mineral/titanium,
|
/turf/closed/wall/mineral/titanium,
|
||||||
/area/awaymission/undergroundoutpost45/central)
|
/area/awaymission/undergroundoutpost45/central)
|
||||||
|
"ah" = (
|
||||||
|
/turf/open/space,
|
||||||
|
/area/space/nearstation)
|
||||||
"aj" = (
|
"aj" = (
|
||||||
/obj/effect/decal/cleanable/dirt,
|
/obj/effect/decal/cleanable/dirt,
|
||||||
/turf/open/floor/plasteel{
|
/turf/open/floor/plasteel{
|
||||||
@@ -13945,10 +13948,6 @@
|
|||||||
temperature = 363.9
|
temperature = 363.9
|
||||||
},
|
},
|
||||||
/area/awaymission/undergroundoutpost45/caves)
|
/area/awaymission/undergroundoutpost45/caves)
|
||||||
"zi" = (
|
|
||||||
/obj/effect/mapping_helpers/planet_z,
|
|
||||||
/turf/open/space,
|
|
||||||
/area/space/nearstation)
|
|
||||||
"KE" = (
|
"KE" = (
|
||||||
/obj/machinery/atmospherics/components/unary/vent_pump/on{
|
/obj/machinery/atmospherics/components/unary/vent_pump/on{
|
||||||
dir = 4
|
dir = 4
|
||||||
@@ -14211,7 +14210,7 @@ aa
|
|||||||
aa
|
aa
|
||||||
aa
|
aa
|
||||||
aa
|
aa
|
||||||
zi
|
ah
|
||||||
"}
|
"}
|
||||||
(2,1,1) = {"
|
(2,1,1) = {"
|
||||||
aa
|
aa
|
||||||
|
|||||||
@@ -3571,14 +3571,6 @@
|
|||||||
},
|
},
|
||||||
/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
|
/turf/open/floor/plating/asteroid/basalt/lava_land_surface,
|
||||||
/area/lavaland/surface/outdoors)
|
/area/lavaland/surface/outdoors)
|
||||||
"Wt" = (
|
|
||||||
/obj/effect/baseturf_helper/lava_land/surface,
|
|
||||||
/turf/closed/wall,
|
|
||||||
/area/mine/laborcamp/security)
|
|
||||||
"Wz" = (
|
|
||||||
/obj/effect/mapping_helpers/planet_z,
|
|
||||||
/turf/open/lava/smooth/lava_land_surface,
|
|
||||||
/area/lavaland/surface/outdoors)
|
|
||||||
"WA" = (
|
"WA" = (
|
||||||
/obj/effect/mapping_helpers/airlock/cyclelink_helper{
|
/obj/effect/mapping_helpers/airlock/cyclelink_helper{
|
||||||
dir = 8
|
dir = 8
|
||||||
@@ -3630,26 +3622,6 @@
|
|||||||
},
|
},
|
||||||
/turf/open/floor/plasteel,
|
/turf/open/floor/plasteel,
|
||||||
/area/mine/production)
|
/area/mine/production)
|
||||||
"WF" = (
|
|
||||||
/obj/effect/baseturf_helper/lava_land/surface,
|
|
||||||
/turf/closed/wall,
|
|
||||||
/area/mine/laborcamp)
|
|
||||||
"WH" = (
|
|
||||||
/obj/effect/baseturf_helper/lava_land/surface,
|
|
||||||
/turf/closed/wall,
|
|
||||||
/area/mine/eva)
|
|
||||||
"WI" = (
|
|
||||||
/obj/effect/baseturf_helper/lava_land/surface,
|
|
||||||
/turf/closed/wall,
|
|
||||||
/area/mine/production)
|
|
||||||
"WJ" = (
|
|
||||||
/obj/effect/baseturf_helper/lava_land/surface,
|
|
||||||
/turf/closed/wall/r_wall,
|
|
||||||
/area/mine/maintenance)
|
|
||||||
"WK" = (
|
|
||||||
/obj/effect/baseturf_helper/lava_land/surface,
|
|
||||||
/turf/closed/wall,
|
|
||||||
/area/mine/living_quarters)
|
|
||||||
|
|
||||||
(1,1,1) = {"
|
(1,1,1) = {"
|
||||||
aa
|
aa
|
||||||
@@ -3906,7 +3878,7 @@ aj
|
|||||||
aj
|
aj
|
||||||
aj
|
aj
|
||||||
aj
|
aj
|
||||||
Wz
|
aj
|
||||||
"}
|
"}
|
||||||
(2,1,1) = {"
|
(2,1,1) = {"
|
||||||
aa
|
aa
|
||||||
@@ -8751,7 +8723,7 @@ aq
|
|||||||
WB
|
WB
|
||||||
aq
|
aq
|
||||||
bi
|
bi
|
||||||
WF
|
aq
|
||||||
WC
|
WC
|
||||||
aq
|
aq
|
||||||
bZ
|
bZ
|
||||||
@@ -9012,7 +8984,7 @@ az
|
|||||||
az
|
az
|
||||||
aq
|
aq
|
||||||
ca
|
ca
|
||||||
Wt
|
ca
|
||||||
ca
|
ca
|
||||||
aj
|
aj
|
||||||
aj
|
aj
|
||||||
@@ -12102,7 +12074,7 @@ ai
|
|||||||
cQ
|
cQ
|
||||||
dk
|
dk
|
||||||
dA
|
dA
|
||||||
WJ
|
cQ
|
||||||
ed
|
ed
|
||||||
er
|
er
|
||||||
eM
|
eM
|
||||||
@@ -13134,7 +13106,7 @@ dR
|
|||||||
ef
|
ef
|
||||||
es
|
es
|
||||||
dZ
|
dZ
|
||||||
WK
|
cM
|
||||||
fg
|
fg
|
||||||
cM
|
cM
|
||||||
cM
|
cM
|
||||||
@@ -20320,9 +20292,9 @@ bt
|
|||||||
bH
|
bH
|
||||||
bV
|
bV
|
||||||
cq
|
cq
|
||||||
WH
|
bf
|
||||||
|
bq
|
||||||
bq
|
bq
|
||||||
WI
|
|
||||||
db
|
db
|
||||||
bP
|
bP
|
||||||
bP
|
bP
|
||||||
|
|||||||
@@ -38,8 +38,6 @@ require only minor tweaks.
|
|||||||
#define ZTRAIT_SPACE_RUINS "Space Ruins"
|
#define ZTRAIT_SPACE_RUINS "Space Ruins"
|
||||||
#define ZTRAIT_LAVA_RUINS "Lava Ruins"
|
#define ZTRAIT_LAVA_RUINS "Lava Ruins"
|
||||||
#define ZTRAIT_ISOLATED_RUINS "Isolated Ruins" //Placing ruins on z levels with this trait will use turf reservation instead of usual placement.
|
#define ZTRAIT_ISOLATED_RUINS "Isolated Ruins" //Placing ruins on z levels with this trait will use turf reservation instead of usual placement.
|
||||||
// prevents certain turfs from being stripped by a singularity
|
|
||||||
#define ZTRAIT_PLANET "Planet"
|
|
||||||
|
|
||||||
// number - bombcap is multiplied by this before being applied to bombs
|
// number - bombcap is multiplied by this before being applied to bombs
|
||||||
#define ZTRAIT_BOMBCAP_MULTIPLIER "Bombcap Multiplier"
|
#define ZTRAIT_BOMBCAP_MULTIPLIER "Bombcap Multiplier"
|
||||||
@@ -60,11 +58,18 @@ require only minor tweaks.
|
|||||||
// CROSSLINKED - mixed in with the cross-linked space pool
|
// CROSSLINKED - mixed in with the cross-linked space pool
|
||||||
#define CROSSLINKED "Cross"
|
#define CROSSLINKED "Cross"
|
||||||
|
|
||||||
|
// string - type path of the z-level's baseturf (defaults to space)
|
||||||
|
#define ZTRAIT_BASETURF "Baseturf"
|
||||||
|
|
||||||
// default trait definitions, used by SSmapping
|
// default trait definitions, used by SSmapping
|
||||||
#define ZTRAITS_CENTCOM list(ZTRAIT_CENTCOM = TRUE)
|
#define ZTRAITS_CENTCOM list(ZTRAIT_CENTCOM = TRUE)
|
||||||
#define ZTRAITS_STATION list(ZTRAIT_LINKAGE = CROSSLINKED, ZTRAIT_STATION = TRUE)
|
#define ZTRAITS_STATION list(ZTRAIT_LINKAGE = CROSSLINKED, ZTRAIT_STATION = TRUE)
|
||||||
#define ZTRAITS_SPACE list(ZTRAIT_LINKAGE = CROSSLINKED, ZTRAIT_SPACE_RUINS = TRUE)
|
#define ZTRAITS_SPACE list(ZTRAIT_LINKAGE = CROSSLINKED, ZTRAIT_SPACE_RUINS = TRUE)
|
||||||
#define ZTRAITS_LAVALAND list(ZTRAIT_MINING = TRUE, ZTRAIT_LAVA_RUINS = TRUE, ZTRAIT_BOMBCAP_MULTIPLIER = 5)
|
#define ZTRAITS_LAVALAND list(\
|
||||||
|
ZTRAIT_MINING = TRUE, \
|
||||||
|
ZTRAIT_LAVA_RUINS = TRUE, \
|
||||||
|
ZTRAIT_BOMBCAP_MULTIPLIER = 5, \
|
||||||
|
ZTRAIT_BASETURF = /turf/open/lava/smooth/lava_land_surface)
|
||||||
#define ZTRAITS_REEBE list(ZTRAIT_REEBE = TRUE, ZTRAIT_BOMBCAP_MULTIPLIER = 0.5)
|
#define ZTRAITS_REEBE list(ZTRAIT_REEBE = TRUE, ZTRAIT_BOMBCAP_MULTIPLIER = 0.5)
|
||||||
|
|
||||||
#define DL_NAME "name"
|
#define DL_NAME "name"
|
||||||
|
|||||||
@@ -157,6 +157,8 @@
|
|||||||
WRITE_LOG(GLOB.config_error_log, text)
|
WRITE_LOG(GLOB.config_error_log, text)
|
||||||
SEND_TEXT(world.log, text)
|
SEND_TEXT(world.log, text)
|
||||||
|
|
||||||
|
/proc/log_mapping(text)
|
||||||
|
WRITE_LOG(GLOB.world_map_error_log, text)
|
||||||
|
|
||||||
/* For logging round startup. */
|
/* For logging round startup. */
|
||||||
/proc/start_log(log)
|
/proc/start_log(log)
|
||||||
|
|||||||
@@ -12,6 +12,3 @@
|
|||||||
#define is_reserved_level(z) SSmapping.level_trait(z, ZTRAIT_RESERVED)
|
#define is_reserved_level(z) SSmapping.level_trait(z, ZTRAIT_RESERVED)
|
||||||
|
|
||||||
#define is_away_level(z) SSmapping.level_trait(z, ZTRAIT_AWAY)
|
#define is_away_level(z) SSmapping.level_trait(z, ZTRAIT_AWAY)
|
||||||
|
|
||||||
// If true, the singularity cannot strip away asteroid turf on this Z
|
|
||||||
#define is_planet_level(z) SSmapping.level_trait(z, ZTRAIT_PLANET)
|
|
||||||
|
|||||||
@@ -28,6 +28,8 @@ GLOBAL_VAR(world_job_debug_log)
|
|||||||
GLOBAL_PROTECT(world_job_debug_log)
|
GLOBAL_PROTECT(world_job_debug_log)
|
||||||
GLOBAL_VAR(world_virus_log)
|
GLOBAL_VAR(world_virus_log)
|
||||||
GLOBAL_PROTECT(world_virus_log)
|
GLOBAL_PROTECT(world_virus_log)
|
||||||
|
GLOBAL_VAR(world_map_error_log)
|
||||||
|
GLOBAL_PROTECT(world_map_error_log)
|
||||||
|
|
||||||
GLOBAL_LIST_EMPTY(bombers)
|
GLOBAL_LIST_EMPTY(bombers)
|
||||||
GLOBAL_PROTECT(bombers)
|
GLOBAL_PROTECT(bombers)
|
||||||
|
|||||||
@@ -315,7 +315,7 @@ SUBSYSTEM_DEF(air)
|
|||||||
var/starting_ats = active_turfs.len
|
var/starting_ats = active_turfs.len
|
||||||
sleep(world.tick_lag)
|
sleep(world.tick_lag)
|
||||||
var/timer = world.timeofday
|
var/timer = world.timeofday
|
||||||
warning("There are [starting_ats] active turfs at roundstart, this is a mapping error caused by a difference of the air between the adjacent turfs. You can see its coordinates using \"Mapping -> Show roundstart AT list\" verb (debug verbs required)")
|
log_mapping("There are [starting_ats] active turfs at roundstart caused by a difference of the air between the adjacent turfs. You can see its coordinates using \"Mapping -> Show roundstart AT list\" verb (debug verbs required).")
|
||||||
for(var/turf/T in active_turfs)
|
for(var/turf/T in active_turfs)
|
||||||
GLOB.active_turfs_startlist += T
|
GLOB.active_turfs_startlist += T
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -47,7 +47,7 @@
|
|||||||
/atom/New(loc, ...)
|
/atom/New(loc, ...)
|
||||||
//atom creation method that preloads variables at creation
|
//atom creation method that preloads variables at creation
|
||||||
if(GLOB.use_preloader && (src.type == GLOB._preloader.target_path))//in case the instanciated atom is creating other atoms in New()
|
if(GLOB.use_preloader && (src.type == GLOB._preloader.target_path))//in case the instanciated atom is creating other atoms in New()
|
||||||
GLOB._preloader.load(src)
|
world.preloader_load(src)
|
||||||
|
|
||||||
if(datum_flags & DF_USE_TAG)
|
if(datum_flags & DF_USE_TAG)
|
||||||
GenerateTag()
|
GenerateTag()
|
||||||
|
|||||||
@@ -180,7 +180,7 @@
|
|||||||
limit--
|
limit--
|
||||||
while(!FoundDoor && limit)
|
while(!FoundDoor && limit)
|
||||||
if (!FoundDoor)
|
if (!FoundDoor)
|
||||||
log_world("### MAP WARNING, [src] at [AREACOORD(src)] failed to find a valid airlock to cyclelink with!")
|
log_mapping("[src] at [AREACOORD(src)] failed to find a valid airlock to cyclelink with!")
|
||||||
return
|
return
|
||||||
FoundDoor.cyclelinkedairlock = src
|
FoundDoor.cyclelinkedairlock = src
|
||||||
cyclelinkedairlock = FoundDoor
|
cyclelinkedairlock = FoundDoor
|
||||||
|
|||||||
@@ -36,7 +36,7 @@
|
|||||||
. = ..()
|
. = ..()
|
||||||
if(preload_cell_type)
|
if(preload_cell_type)
|
||||||
if(!ispath(preload_cell_type,/obj/item/stock_parts/cell))
|
if(!ispath(preload_cell_type,/obj/item/stock_parts/cell))
|
||||||
log_world("### MAP WARNING, [src] at [AREACOORD(src)] had an invalid preload_cell_type: [preload_cell_type].")
|
log_mapping("[src] at [AREACOORD(src)] had an invalid preload_cell_type: [preload_cell_type].")
|
||||||
else
|
else
|
||||||
cell = new preload_cell_type(src)
|
cell = new preload_cell_type(src)
|
||||||
update_icon()
|
update_icon()
|
||||||
|
|||||||
@@ -11,3 +11,8 @@
|
|||||||
/turf/baseturf_skipover/shuttle
|
/turf/baseturf_skipover/shuttle
|
||||||
name = "Shuttle baseturf skipover"
|
name = "Shuttle baseturf skipover"
|
||||||
desc = "Acts as the bottom of the shuttle, if this isn't here the shuttle floor is broken through."
|
desc = "Acts as the bottom of the shuttle, if this isn't here the shuttle floor is broken through."
|
||||||
|
|
||||||
|
/turf/baseturf_bottom
|
||||||
|
name = "Z-level baseturf placeholder"
|
||||||
|
desc = "Marker for z-level baseturf, usually resolves to space."
|
||||||
|
baseturfs = /turf/baseturf_bottom
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
// This is a list of turf types we dont want to assign to baseturfs unless through initialization or explicitly
|
// This is a list of turf types we dont want to assign to baseturfs unless through initialization or explicitly
|
||||||
GLOBAL_LIST_INIT(blacklisted_automated_baseturfs, typecacheof(list(
|
GLOBAL_LIST_INIT(blacklisted_automated_baseturfs, typecacheof(list(
|
||||||
/turf/open/space,
|
/turf/open/space,
|
||||||
|
/turf/baseturf_bottom
|
||||||
)))
|
)))
|
||||||
|
|
||||||
/turf/proc/empty(turf_type=/turf/open/space, baseturf_type, list/ignore_typecache, flags)
|
/turf/proc/empty(turf_type=/turf/open/space, baseturf_type, list/ignore_typecache, flags)
|
||||||
@@ -56,12 +57,20 @@ GLOBAL_LIST_INIT(blacklisted_automated_baseturfs, typecacheof(list(
|
|||||||
// Creates a new turf
|
// Creates a new turf
|
||||||
// new_baseturfs can be either a single type or list of types, formated the same as baseturfs. see turf.dm
|
// new_baseturfs can be either a single type or list of types, formated the same as baseturfs. see turf.dm
|
||||||
/turf/proc/ChangeTurf(path, list/new_baseturfs, flags)
|
/turf/proc/ChangeTurf(path, list/new_baseturfs, flags)
|
||||||
if(!path)
|
switch(path)
|
||||||
return
|
if(null)
|
||||||
if(path == /turf/open/space/basic)
|
return
|
||||||
// basic doesn't initialize and this will cause issues
|
if(/turf/baseturf_bottom)
|
||||||
// no warning though because this can happen naturaly as a result of it being built on top of
|
path = SSmapping.level_trait(z, ZTRAIT_BASETURF) || /turf/open/space
|
||||||
path = /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
|
||||||
|
if(/turf/open/space/basic)
|
||||||
|
// basic doesn't initialize and this will cause issues
|
||||||
|
// no warning though because this can happen naturaly as a result of it being built on top of
|
||||||
|
path = /turf/open/space
|
||||||
if(!GLOB.use_preloader && path == type && !(flags & CHANGETURF_FORCEOP)) // Don't no-op if the map loader requires it to be reconstructed
|
if(!GLOB.use_preloader && path == type && !(flags & CHANGETURF_FORCEOP)) // Don't no-op if the map loader requires it to be reconstructed
|
||||||
return src
|
return src
|
||||||
if(flags & CHANGETURF_SKIP)
|
if(flags & CHANGETURF_SKIP)
|
||||||
@@ -214,7 +223,7 @@ GLOBAL_LIST_INIT(blacklisted_automated_baseturfs, typecacheof(list(
|
|||||||
newT.assemble_baseturfs(initial(fake_turf_type.baseturfs)) // The baseturfs list is created like roundstart
|
newT.assemble_baseturfs(initial(fake_turf_type.baseturfs)) // The baseturfs list is created like roundstart
|
||||||
if(!length(newT.baseturfs))
|
if(!length(newT.baseturfs))
|
||||||
newT.baseturfs = list(baseturfs)
|
newT.baseturfs = list(baseturfs)
|
||||||
newT.baseturfs -= newT.baseturfs & GLOB.blacklisted_automated_baseturfs
|
newT.baseturfs -= GLOB.blacklisted_automated_baseturfs
|
||||||
newT.baseturfs.Insert(1, old_baseturfs) // The old baseturfs are put underneath
|
newT.baseturfs.Insert(1, old_baseturfs) // The old baseturfs are put underneath
|
||||||
return newT
|
return newT
|
||||||
if(!length(baseturfs))
|
if(!length(baseturfs))
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
name = "plating"
|
name = "plating"
|
||||||
icon_state = "plating"
|
icon_state = "plating"
|
||||||
intact = FALSE
|
intact = FALSE
|
||||||
baseturfs = /turf/open/space
|
baseturfs = /turf/baseturf_bottom
|
||||||
footstep = FOOTSTEP_PLATING
|
footstep = FOOTSTEP_PLATING
|
||||||
barefootstep = FOOTSTEP_HARD_BAREFOOT
|
barefootstep = FOOTSTEP_HARD_BAREFOOT
|
||||||
clawfootstep = FOOTSTEP_HARD_CLAW
|
clawfootstep = FOOTSTEP_HARD_CLAW
|
||||||
|
|||||||
@@ -76,11 +76,6 @@
|
|||||||
for(var/obj/item/stack/ore/O in src)
|
for(var/obj/item/stack/ore/O in src)
|
||||||
SEND_SIGNAL(W, COMSIG_PARENT_ATTACKBY, O)
|
SEND_SIGNAL(W, COMSIG_PARENT_ATTACKBY, O)
|
||||||
|
|
||||||
/turf/open/floor/plating/asteroid/singularity_act()
|
|
||||||
if(is_planet_level(z))
|
|
||||||
return ..()
|
|
||||||
ScrapeAway()
|
|
||||||
|
|
||||||
/turf/open/floor/plating/asteroid/ex_act(severity, target)
|
/turf/open/floor/plating/asteroid/ex_act(severity, target)
|
||||||
. = SEND_SIGNAL(src, COMSIG_ATOM_EX_ACT, severity, target)
|
. = SEND_SIGNAL(src, COMSIG_ATOM_EX_ACT, severity, target)
|
||||||
contents_explosion(severity, target)
|
contents_explosion(severity, target)
|
||||||
@@ -132,6 +127,7 @@
|
|||||||
|
|
||||||
/turf/open/floor/plating/asteroid/airless
|
/turf/open/floor/plating/asteroid/airless
|
||||||
initial_gas_mix = AIRLESS_ATMOS
|
initial_gas_mix = AIRLESS_ATMOS
|
||||||
|
baseturfs = /turf/open/floor/plating/asteroid/airless
|
||||||
turf_type = /turf/open/floor/plating/asteroid/airless
|
turf_type = /turf/open/floor/plating/asteroid/airless
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
// A list will be created in initialization that figures out the baseturf's baseturf etc.
|
// A list will be created in initialization that figures out the baseturf's baseturf etc.
|
||||||
// In the case of a list it is sorted from bottom layer to top.
|
// In the case of a list it is sorted from bottom layer to top.
|
||||||
// This shouldn't be modified directly, use the helper procs.
|
// This shouldn't be modified directly, use the helper procs.
|
||||||
var/list/baseturfs = /turf/open/space
|
var/list/baseturfs = /turf/baseturf_bottom
|
||||||
|
|
||||||
var/temperature = T20C
|
var/temperature = T20C
|
||||||
var/to_be_destroyed = 0 //Used for fire, if a melting temperature was reached, it will be destroyed
|
var/to_be_destroyed = 0 //Used for fire, if a melting temperature was reached, it will be destroyed
|
||||||
|
|||||||
@@ -108,6 +108,7 @@ GLOBAL_VAR(restart_counter)
|
|||||||
GLOB.world_href_log = "[GLOB.log_directory]/hrefs.log"
|
GLOB.world_href_log = "[GLOB.log_directory]/hrefs.log"
|
||||||
GLOB.sql_error_log = "[GLOB.log_directory]/sql.log"
|
GLOB.sql_error_log = "[GLOB.log_directory]/sql.log"
|
||||||
GLOB.world_qdel_log = "[GLOB.log_directory]/qdel.log"
|
GLOB.world_qdel_log = "[GLOB.log_directory]/qdel.log"
|
||||||
|
GLOB.world_map_error_log = "[GLOB.log_directory]/map_errors.log"
|
||||||
GLOB.world_runtime_log = "[GLOB.log_directory]/runtime.log"
|
GLOB.world_runtime_log = "[GLOB.log_directory]/runtime.log"
|
||||||
GLOB.query_debug_log = "[GLOB.log_directory]/query_debug.log"
|
GLOB.query_debug_log = "[GLOB.log_directory]/query_debug.log"
|
||||||
GLOB.world_job_debug_log = "[GLOB.log_directory]/job_debug.log"
|
GLOB.world_job_debug_log = "[GLOB.log_directory]/job_debug.log"
|
||||||
|
|||||||
@@ -35,6 +35,9 @@ GLOBAL_LIST_INIT(admin_verbs_debug_mapping, list(
|
|||||||
/client/proc/cmd_admin_grantfullaccess,
|
/client/proc/cmd_admin_grantfullaccess,
|
||||||
/client/proc/cmd_admin_areatest_all,
|
/client/proc/cmd_admin_areatest_all,
|
||||||
/client/proc/cmd_admin_areatest_station,
|
/client/proc/cmd_admin_areatest_station,
|
||||||
|
#ifdef TESTING
|
||||||
|
/client/proc/see_dirty_varedits,
|
||||||
|
#endif
|
||||||
/client/proc/cmd_admin_test_atmos_controllers,
|
/client/proc/cmd_admin_test_atmos_controllers,
|
||||||
/client/proc/cmd_admin_rejuvenate,
|
/client/proc/cmd_admin_rejuvenate,
|
||||||
/datum/admins/proc/show_traitor_panel,
|
/datum/admins/proc/show_traitor_panel,
|
||||||
@@ -84,8 +87,24 @@ GLOBAL_PROTECT(admin_verbs_debug_mapping)
|
|||||||
SSblackbox.record_feedback("tally", "admin_verb", 1, "Show Camera Range") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
SSblackbox.record_feedback("tally", "admin_verb", 1, "Show Camera Range") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||||
SSblackbox.record_feedback("tally", "admin_verb", 1, "Show Camera Range")
|
SSblackbox.record_feedback("tally", "admin_verb", 1, "Show Camera Range")
|
||||||
|
|
||||||
|
#ifdef TESTING
|
||||||
|
GLOBAL_LIST_EMPTY(dirty_vars)
|
||||||
|
|
||||||
|
|
||||||
|
/client/proc/see_dirty_varedits()
|
||||||
|
set category = "Mapping"
|
||||||
|
set name = "Dirty Varedits"
|
||||||
|
|
||||||
|
var/list/dat = list()
|
||||||
|
dat += "<h3>Abandon all hope ye who enter here</h3><br><br>"
|
||||||
|
for(var/thing in GLOB.dirty_vars)
|
||||||
|
dat += "[thing]<br>"
|
||||||
|
CHECK_TICK
|
||||||
|
var/datum/browser/popup = new(usr, "dirty_vars", "Dirty Varedits", 900, 750)
|
||||||
|
popup.set_content(dat.Join())
|
||||||
|
popup.open()
|
||||||
|
#endif
|
||||||
|
|
||||||
/client/proc/sec_camera_report()
|
/client/proc/sec_camera_report()
|
||||||
set category = "Mapping"
|
set category = "Mapping"
|
||||||
set name = "Camera Report"
|
set name = "Camera Report"
|
||||||
|
|||||||
@@ -57,10 +57,10 @@
|
|||||||
if(item.parent)
|
if(item.parent)
|
||||||
var/static/pipenetwarnings = 10
|
var/static/pipenetwarnings = 10
|
||||||
if(pipenetwarnings > 0)
|
if(pipenetwarnings > 0)
|
||||||
warning("build_pipeline(): [item.type] added to a pipenet while still having one. (pipes leading to the same spot stacking in one turf) Nearby: ([item.x], [item.y], [item.z])")
|
log_mapping("build_pipeline(): [item.type] added to a pipenet while still having one. (pipes leading to the same spot stacking in one turf) Nearby: ([item.x], [item.y], [item.z]).")
|
||||||
pipenetwarnings -= 1
|
pipenetwarnings -= 1
|
||||||
if(pipenetwarnings == 0)
|
if(pipenetwarnings == 0)
|
||||||
warning("build_pipeline(): further messages about pipenets will be suppressed")
|
log_mapping("build_pipeline(): further messages about pipenets will be suppressed")
|
||||||
members += item
|
members += item
|
||||||
possible_expansions += item
|
possible_expansions += item
|
||||||
|
|
||||||
|
|||||||
@@ -56,7 +56,7 @@
|
|||||||
pixel_y = (new_layer - PIPING_LAYER_DEFAULT) * PIPING_LAYER_P_Y
|
pixel_y = (new_layer - PIPING_LAYER_DEFAULT) * PIPING_LAYER_P_Y
|
||||||
|
|
||||||
/obj/machinery/meter/process_atmos()
|
/obj/machinery/meter/process_atmos()
|
||||||
if(!target)
|
if(!(target?.flags_1 & INITIALIZED_1))
|
||||||
icon_state = "meterX"
|
icon_state = "meterX"
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
|
|||||||
@@ -59,9 +59,7 @@
|
|||||||
return
|
return
|
||||||
var/area/AS = get_area(src)
|
var/area/AS = get_area(src)
|
||||||
if(istype(AS, /area/holodeck))
|
if(istype(AS, /area/holodeck))
|
||||||
log_world("### MAPPING ERROR")
|
log_mapping("Holodeck computer cannot be in a holodeck, This would cause circular power dependency.")
|
||||||
log_world("Holodeck computer cannot be in a holodeck.")
|
|
||||||
log_world("This would cause circular power dependency.")
|
|
||||||
qdel(src)
|
qdel(src)
|
||||||
return
|
return
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -70,7 +70,7 @@
|
|||||||
//initialize things that are normally initialized after map load
|
//initialize things that are normally initialized after map load
|
||||||
parsed.initTemplateBounds()
|
parsed.initTemplateBounds()
|
||||||
smooth_zlevel(world.maxz)
|
smooth_zlevel(world.maxz)
|
||||||
log_game("Z-level [name] loaded at at [x],[y],[world.maxz]")
|
log_game("Z-level [name] loaded at [x],[y],[world.maxz]")
|
||||||
|
|
||||||
return level
|
return level
|
||||||
|
|
||||||
@@ -84,6 +84,13 @@
|
|||||||
if(T.y+height > world.maxy)
|
if(T.y+height > world.maxy)
|
||||||
return
|
return
|
||||||
|
|
||||||
|
var/list/border = block(locate(max(T.x-1, 1), max(T.y-1, 1), T.z),
|
||||||
|
locate(min(T.x+width+1, world.maxx), min(T.y+height+1, world.maxy), T.z))
|
||||||
|
for(var/L in border)
|
||||||
|
var/turf/turf_to_disable = L
|
||||||
|
SSair.remove_from_active(turf_to_disable) //stop processing turfs along the border to prevent runtimes, we return it in initTemplateBounds()
|
||||||
|
turf_to_disable.atmos_adjacent_turfs?.Cut()
|
||||||
|
|
||||||
// Accept cached maps, but don't save them automatically - we don't want
|
// Accept cached maps, but don't save them automatically - we don't want
|
||||||
// ruins clogging up memory for the whole round.
|
// ruins clogging up memory for the whole round.
|
||||||
var/datum/parsed_map/parsed = cached_map || new(file(mappath))
|
var/datum/parsed_map/parsed = cached_map || new(file(mappath))
|
||||||
@@ -100,7 +107,7 @@
|
|||||||
//initialize things that are normally initialized after map load
|
//initialize things that are normally initialized after map load
|
||||||
parsed.initTemplateBounds()
|
parsed.initTemplateBounds()
|
||||||
|
|
||||||
log_game("[name] loaded at at [T.x],[T.y],[T.z]")
|
log_game("[name] loaded at [T.x],[T.y],[T.z]")
|
||||||
return bounds
|
return bounds
|
||||||
|
|
||||||
/datum/map_template/proc/get_affected_turfs(turf/T, centered = FALSE)
|
/datum/map_template/proc/get_affected_turfs(turf/T, centered = FALSE)
|
||||||
|
|||||||
@@ -18,7 +18,7 @@
|
|||||||
|
|
||||||
/obj/effect/baseturf_helper/LateInitialize()
|
/obj/effect/baseturf_helper/LateInitialize()
|
||||||
if(!baseturf_to_replace)
|
if(!baseturf_to_replace)
|
||||||
baseturf_to_replace = typecacheof(/turf/open/space)
|
baseturf_to_replace = typecacheof(list(/turf/open/space,/turf/baseturf_bottom))
|
||||||
else if(!length(baseturf_to_replace))
|
else if(!length(baseturf_to_replace))
|
||||||
baseturf_to_replace = list(baseturf_to_replace = TRUE)
|
baseturf_to_replace = list(baseturf_to_replace = TRUE)
|
||||||
else if(baseturf_to_replace[baseturf_to_replace[1]] != TRUE) // It's not associative
|
else if(baseturf_to_replace[baseturf_to_replace[1]] != TRUE) // It's not associative
|
||||||
@@ -45,7 +45,6 @@
|
|||||||
thing.PlaceOnBottom(null, baseturf)
|
thing.PlaceOnBottom(null, baseturf)
|
||||||
else if(baseturf_to_replace[thing.baseturfs])
|
else if(baseturf_to_replace[thing.baseturfs])
|
||||||
thing.assemble_baseturfs(baseturf)
|
thing.assemble_baseturfs(baseturf)
|
||||||
return
|
|
||||||
else
|
else
|
||||||
thing.PlaceOnBottom(null, baseturf)
|
thing.PlaceOnBottom(null, baseturf)
|
||||||
|
|
||||||
@@ -107,16 +106,16 @@
|
|||||||
/obj/effect/mapping_helpers/airlock/cyclelink_helper/Initialize(mapload)
|
/obj/effect/mapping_helpers/airlock/cyclelink_helper/Initialize(mapload)
|
||||||
. = ..()
|
. = ..()
|
||||||
if(!mapload)
|
if(!mapload)
|
||||||
log_world("### MAP WARNING, [src] spawned outside of mapload!")
|
log_mapping("[src] spawned outside of mapload!")
|
||||||
return
|
return
|
||||||
var/obj/machinery/door/airlock/airlock = locate(/obj/machinery/door/airlock) in loc
|
var/obj/machinery/door/airlock/airlock = locate(/obj/machinery/door/airlock) in loc
|
||||||
if(airlock)
|
if(airlock)
|
||||||
if(airlock.cyclelinkeddir)
|
if(airlock.cyclelinkeddir)
|
||||||
log_world("### MAP WARNING, [src] at [AREACOORD(src)] tried to set [airlock] cyclelinkeddir, but it's already set!")
|
log_mapping("[src] at [AREACOORD(src)] tried to set [airlock] cyclelinkeddir, but it's already set!")
|
||||||
else
|
else
|
||||||
airlock.cyclelinkeddir = dir
|
airlock.cyclelinkeddir = dir
|
||||||
else
|
else
|
||||||
log_world("### MAP WARNING, [src] failed to find an airlock at [AREACOORD(src)]")
|
log_mapping("[src] failed to find an airlock at [AREACOORD(src)]")
|
||||||
|
|
||||||
|
|
||||||
/obj/effect/mapping_helpers/airlock/locked
|
/obj/effect/mapping_helpers/airlock/locked
|
||||||
@@ -126,16 +125,16 @@
|
|||||||
/obj/effect/mapping_helpers/airlock/locked/Initialize(mapload)
|
/obj/effect/mapping_helpers/airlock/locked/Initialize(mapload)
|
||||||
. = ..()
|
. = ..()
|
||||||
if(!mapload)
|
if(!mapload)
|
||||||
log_world("### MAP WARNING, [src] spawned outside of mapload!")
|
log_mapping("[src] spawned outside of mapload!")
|
||||||
return
|
return
|
||||||
var/obj/machinery/door/airlock/airlock = locate(/obj/machinery/door/airlock) in loc
|
var/obj/machinery/door/airlock/airlock = locate(/obj/machinery/door/airlock) in loc
|
||||||
if(airlock)
|
if(airlock)
|
||||||
if(airlock.locked)
|
if(airlock.locked)
|
||||||
log_world("### MAP WARNING, [src] at [AREACOORD(src)] tried to bolt [airlock] but it's already locked!")
|
log_mapping("[src] at [AREACOORD(src)] tried to bolt [airlock] but it's already locked!")
|
||||||
else
|
else
|
||||||
airlock.locked = TRUE
|
airlock.locked = TRUE
|
||||||
else
|
else
|
||||||
log_world("### MAP WARNING, [src] failed to find an airlock at [AREACOORD(src)]")
|
log_mapping("[src] failed to find an airlock at [AREACOORD(src)]")
|
||||||
|
|
||||||
/obj/effect/mapping_helpers/airlock/unres
|
/obj/effect/mapping_helpers/airlock/unres
|
||||||
name = "airlock unresctricted side helper"
|
name = "airlock unresctricted side helper"
|
||||||
@@ -144,13 +143,13 @@
|
|||||||
/obj/effect/mapping_helpers/airlock/unres/Initialize(mapload)
|
/obj/effect/mapping_helpers/airlock/unres/Initialize(mapload)
|
||||||
. = ..()
|
. = ..()
|
||||||
if(!mapload)
|
if(!mapload)
|
||||||
log_world("### MAP WARNING, [src] spawned outside of mapload!")
|
log_mapping("[src] spawned outside of mapload!")
|
||||||
return
|
return
|
||||||
var/obj/machinery/door/airlock/airlock = locate(/obj/machinery/door/airlock) in loc
|
var/obj/machinery/door/airlock/airlock = locate(/obj/machinery/door/airlock) in loc
|
||||||
if(airlock)
|
if(airlock)
|
||||||
airlock.unres_sides ^= dir
|
airlock.unres_sides ^= dir
|
||||||
else
|
else
|
||||||
log_world("### MAP WARNING, [src] failed to find an airlock at [AREACOORD(src)]")
|
log_mapping("[src] failed to find an airlock at [AREACOORD(src)]")
|
||||||
|
|
||||||
|
|
||||||
//needs to do its thing before spawn_rivers() is called
|
//needs to do its thing before spawn_rivers() is called
|
||||||
@@ -164,17 +163,6 @@ INITIALIZE_IMMEDIATE(/obj/effect/mapping_helpers/no_lava)
|
|||||||
var/turf/T = get_turf(src)
|
var/turf/T = get_turf(src)
|
||||||
T.flags_1 |= NO_LAVA_GEN_1
|
T.flags_1 |= NO_LAVA_GEN_1
|
||||||
|
|
||||||
/// Adds the map it is on to the z_is_planet list
|
|
||||||
/obj/effect/mapping_helpers/planet_z
|
|
||||||
name = "planet z helper"
|
|
||||||
layer = POINT_LAYER
|
|
||||||
|
|
||||||
/obj/effect/mapping_helpers/planet_z/Initialize()
|
|
||||||
. = ..()
|
|
||||||
var/datum/space_level/S = SSmapping.get_level(z)
|
|
||||||
S.traits[ZTRAIT_PLANET] = TRUE
|
|
||||||
|
|
||||||
|
|
||||||
//This helper applies components to things on the map directly.
|
//This helper applies components to things on the map directly.
|
||||||
/obj/effect/mapping_helpers/component_injector
|
/obj/effect/mapping_helpers/component_injector
|
||||||
name = "Component Injector"
|
name = "Component Injector"
|
||||||
|
|||||||
@@ -8,18 +8,26 @@ GLOBAL_DATUM_INIT(_preloader, /datum/map_preloader, new)
|
|||||||
var/list/attributes
|
var/list/attributes
|
||||||
var/target_path
|
var/target_path
|
||||||
|
|
||||||
/datum/map_preloader/proc/setup(list/the_attributes, path)
|
/world/proc/preloader_setup(list/the_attributes, path)
|
||||||
if(the_attributes.len)
|
if(the_attributes.len)
|
||||||
GLOB.use_preloader = TRUE
|
GLOB.use_preloader = TRUE
|
||||||
attributes = the_attributes
|
var/datum/map_preloader/preloader_local = GLOB._preloader
|
||||||
target_path = path
|
preloader_local.attributes = the_attributes
|
||||||
|
preloader_local.target_path = path
|
||||||
|
|
||||||
/datum/map_preloader/proc/load(atom/what)
|
/world/proc/preloader_load(atom/what)
|
||||||
GLOB.use_preloader = FALSE
|
GLOB.use_preloader = FALSE
|
||||||
for(var/attribute in attributes)
|
var/datum/map_preloader/preloader_local = GLOB._preloader
|
||||||
var/value = attributes[attribute]
|
for(var/attribute in preloader_local.attributes)
|
||||||
|
var/value = preloader_local.attributes[attribute]
|
||||||
if(islist(value))
|
if(islist(value))
|
||||||
value = deepCopyList(value)
|
value = deepCopyList(value)
|
||||||
|
#ifdef TESTING
|
||||||
|
if(what.vars[attribute] == value)
|
||||||
|
var/message = "<font color=green>[what.type]</font> at [AREACOORD(what)] - <b>VAR:</b> <font color=red>[attribute] = [isnull(value) ? "null" : (isnum(value) ? value : "\"[value]\"")]</font>"
|
||||||
|
log_mapping("DIRTY VAR: [message]")
|
||||||
|
GLOB.dirty_vars += message
|
||||||
|
#endif
|
||||||
what.vars[attribute] = value
|
what.vars[attribute] = value
|
||||||
|
|
||||||
/area/template_noop
|
/area/template_noop
|
||||||
|
|||||||
@@ -306,8 +306,8 @@
|
|||||||
//first instance the /area and remove it from the members list
|
//first instance the /area and remove it from the members list
|
||||||
index = members.len
|
index = members.len
|
||||||
if(members[index] != /area/template_noop)
|
if(members[index] != /area/template_noop)
|
||||||
GLOB._preloader.setup(members_attributes[index])//preloader for assigning set variables on atom creation
|
|
||||||
var/atype = members[index]
|
var/atype = members[index]
|
||||||
|
world.preloader_setup(members_attributes[index], atype)//preloader for assigning set variables on atom creation
|
||||||
var/atom/instance = areaCache[atype]
|
var/atom/instance = areaCache[atype]
|
||||||
if (!instance)
|
if (!instance)
|
||||||
instance = GLOB.areas_by_type[atype]
|
instance = GLOB.areas_by_type[atype]
|
||||||
@@ -318,7 +318,7 @@
|
|||||||
instance.contents.Add(crds)
|
instance.contents.Add(crds)
|
||||||
|
|
||||||
if(GLOB.use_preloader && instance)
|
if(GLOB.use_preloader && instance)
|
||||||
GLOB._preloader.load(instance)
|
world.preloader_load(instance)
|
||||||
|
|
||||||
//then instance the /turf and, if multiple tiles are presents, simulates the DMM underlays piling effect
|
//then instance the /turf and, if multiple tiles are presents, simulates the DMM underlays piling effect
|
||||||
|
|
||||||
@@ -354,7 +354,7 @@
|
|||||||
|
|
||||||
//Instance an atom at (x,y,z) and gives it the variables in attributes
|
//Instance an atom at (x,y,z) and gives it the variables in attributes
|
||||||
/datum/parsed_map/proc/instance_atom(path,list/attributes, turf/crds, no_changeturf, placeOnTop)
|
/datum/parsed_map/proc/instance_atom(path,list/attributes, turf/crds, no_changeturf, placeOnTop)
|
||||||
GLOB._preloader.setup(attributes, path)
|
world.preloader_setup(attributes, path)
|
||||||
|
|
||||||
if(crds)
|
if(crds)
|
||||||
if(ispath(path, /turf))
|
if(ispath(path, /turf))
|
||||||
@@ -368,7 +368,7 @@
|
|||||||
. = create_atom(path, crds)//first preloader pass
|
. = create_atom(path, crds)//first preloader pass
|
||||||
|
|
||||||
if(GLOB.use_preloader && .)//second preloader pass, for those atoms that don't ..() in New()
|
if(GLOB.use_preloader && .)//second preloader pass, for those atoms that don't ..() in New()
|
||||||
GLOB._preloader.load(.)
|
world.preloader_load(.)
|
||||||
|
|
||||||
//custom CHECK_TICK here because we don't want things created while we're sleeping to not initialize
|
//custom CHECK_TICK here because we don't want things created while we're sleeping to not initialize
|
||||||
if(TICK_CHECK)
|
if(TICK_CHECK)
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ GLOBAL_LIST_EMPTY(conveyors_by_id)
|
|||||||
/obj/machinery/conveyor/inverted/Initialize(mapload)
|
/obj/machinery/conveyor/inverted/Initialize(mapload)
|
||||||
. = ..()
|
. = ..()
|
||||||
if(mapload && !(dir in GLOB.diagonals))
|
if(mapload && !(dir in GLOB.diagonals))
|
||||||
log_game("### MAPPING ERROR: [src] at [AREACOORD(src)] spawned without using a diagonal dir. Please replace with a normal version.")
|
log_mapping("[src] at [AREACOORD(src)] spawned without using a diagonal dir. Please replace with a normal version.")
|
||||||
|
|
||||||
// Auto conveyour is always on unless unpowered
|
// Auto conveyour is always on unless unpowered
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user