Converts Step_triggers to Portals!

Implements Portal Functionality to replace the older step_triggers!

Z-level transitions are now 99.9% seamless!

It's self-explanatory, images below in editor:
![](https://i.imgur.com/EBr9mnN.png)
![](https://i.imgur.com/lP0UQxT.png)
![](https://i.imgur.com/c6VX1EC.png)
![](https://i.imgur.com/dfqDz75.png)
![](https://i.imgur.com/pUNVmBG.png)

In-game Version:
To Surface Mining:
![](https://i.imgur.com/aoJIwps.png)
![](https://i.imgur.com/nqVCYV9.png)
To Solars:
![](https://i.imgur.com/FRb6ZKB.png)
To Plains/Wilderness:
![](https://i.imgur.com/Y8kf40k.png)
This commit is contained in:
Rykka
2020-08-22 20:36:49 -04:00
parent 9b802e87f9
commit c71dba5cae
5 changed files with 244 additions and 172 deletions
@@ -9,6 +9,9 @@ Portals do have some specific requirements when mapping them in;
- There must by one, and only one `/obj/effect/map_effect/portal/master` for each side of a portal.
- Both sides need to have matching `portal_id`s in order to link to each other.
- Each side must face opposite directions, e.g. if side A faces SOUTH, side B must face NORTH.
- Clarification on the above - you will be moved in the direction that the portal faces.
If Side A faces south, you will be moved south. Dirs are 1/2/4/8, 1: NORTH, 2: SOUTH, 4: EAST, 8: WEST.
- You must have 1 tile of 'buffer' space between turfs or you may see odd visual distortions. If things look weird, move your 'portals' back by one tile.
- Each side must have the same orientation, e.g. horizontal on both sides, or vertical on both sides.
- Portals can be made to be longer than 1x1 with `/obj/effect/map_effect/portal/line`s,
but both sides must have the same length.
+10 -2
View File
@@ -1,4 +1,12 @@
//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE
"aa" = (
/obj/effect/floor_decal/rust,
/obj/effect/map_effect/portal/master/side_b{
name = "from_tether_to_wild";
portal_id = "wilderness_step"
},
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
/area/tether/outpost/exploration_shed)
"ab" = (
/turf/simulated/floor/outdoors/grass/sif/virgo3b,
/area/tether/outpost/exploration_plains)
@@ -13,7 +21,7 @@
/area/mine/explored)
"af" = (
/obj/effect/floor_decal/rust,
/obj/effect/step_trigger/teleporter/from_plains,
/obj/effect/map_effect/portal/line/side_b,
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
/area/tether/outpost/exploration_shed)
"ag" = (
@@ -9355,7 +9363,7 @@ ae
ac
"}
(66,1,1) = {"
af
aa
bj
aj
bj
+134 -98
View File
@@ -9,7 +9,10 @@
/turf/unsimulated/wall/planetary/virgo3b,
/area/tether/surfacebase/outside/outside1)
"aac" = (
/obj/effect/step_trigger/teleporter/to_mining,
/obj/effect/map_effect/portal/master/side_a{
dir = 2;
portal_id = "surfacemine"
},
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
/area/tether/surfacebase/mining_main/external)
"aad" = (
@@ -10171,6 +10174,12 @@
/obj/random/junk,
/turf/simulated/floor/plating,
/area/maintenance/lower/vacant_site)
"aqR" = (
/obj/effect/map_effect/portal/line/side_a{
dir = 2
},
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
/area/tether/surfacebase/mining_main/external)
"aqS" = (
/obj/structure/cable/green{
d1 = 4;
@@ -11234,6 +11243,14 @@
/obj/random/maintenance/medical,
/turf/simulated/floor/plating,
/area/vacant/vacant_site)
"asG" = (
/obj/effect/map_effect/portal/master/side_a{
dir = 1;
name = "to_wilderness";
portal_id = "wilderness_step"
},
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
/area/tether/surfacebase/outside/outside1)
"asH" = (
/obj/structure/cable{
d1 = 1;
@@ -11318,6 +11335,34 @@
/obj/structure/flora/ausbushes/ywflowers,
/turf/simulated/floor/grass,
/area/tether/surfacebase/surface_one_hall)
"asP" = (
/obj/effect/floor_decal/rust,
/obj/effect/map_effect/portal/master/side_a{
dir = 4;
name = "to_solars";
portal_id = "solarstep"
},
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
/area/tether/surfacebase/outside/outside1)
"asQ" = (
/obj/effect/floor_decal/rust,
/obj/effect/map_effect/portal/line/side_a{
dir = 4
},
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
/area/tether/surfacebase/outside/outside1)
"asR" = (
/obj/effect/map_effect/portal/line/side_a{
dir = 4
},
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
/area/tether/surfacebase/outside/outside1)
"asS" = (
/obj/effect/map_effect/portal/line/side_a{
dir = 1
},
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
/area/tether/surfacebase/outside/outside1)
"asU" = (
/turf/simulated/floor/tiled,
/area/crew_quarters/locker)
@@ -17033,11 +17078,6 @@
},
/turf/simulated/floor/plating,
/area/crew_quarters/visitor_dining)
"aHK" = (
/obj/effect/floor_decal/rust,
/obj/effect/step_trigger/teleporter/to_solars,
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
/area/tether/surfacebase/outside/outside1)
"aHL" = (
/obj/effect/floor_decal/rust,
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
@@ -26785,10 +26825,6 @@
},
/turf/unsimulated/wall/planetary/virgo3b,
/area/tether/surfacebase/outside/outside1)
"baX" = (
/obj/effect/step_trigger/teleporter/to_plains,
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
/area/tether/surfacebase/outside/outside1)
"baZ" = (
/obj/machinery/alarm{
dir = 4;
@@ -31017,19 +31053,19 @@ aaa
aaa
aaa
aaa
aHo
aHK
aHK
aHK
aHK
aHK
aHK
aHK
aHK
aHK
aHK
aHK
aHo
aaa
asP
asQ
asQ
asQ
asQ
asQ
asR
asQ
asQ
asR
asQ
aaa
aaa
aaa
aaa
@@ -31159,19 +31195,19 @@ aad
aad
aad
aGD
aad
aaa
aHL
aHL
aHL
aHL
aHL
aHL
aad
aHL
aHL
aad
aHL
aad
aHL
aHL
aaa
aad
aad
aad
@@ -31301,19 +31337,19 @@ aad
aad
aad
aGE
aad
aad
aad
aad
aad
aad
aad
aad
aaa
aHL
aHL
aad
aad
aad
aHL
aHL
aHL
aHL
aHL
aHL
aHL
aHL
aHL
aaa
aad
aad
aad
@@ -31443,7 +31479,7 @@ aad
aad
aad
aGE
aad
aHo
aad
aad
aad
@@ -31455,7 +31491,7 @@ aad
aHL
aad
aad
aad
aHo
aad
aad
aad
@@ -31736,7 +31772,6 @@ aad
aad
aad
aad
aad
aHL
aad
aad
@@ -31789,6 +31824,7 @@ aad
aad
aad
aad
aad
aaa
"}
(7,1,1) = {"
@@ -32305,7 +32341,7 @@ aad
aad
aad
aad
aad
aHL
aad
aad
aad
@@ -40164,10 +40200,10 @@ aad
aad
aad
aad
aad
baV
baV
baW
aaa
aaa
aaa
"}
(66,1,1) = {"
aaa
@@ -40307,9 +40343,9 @@ aad
aad
aad
aad
baV
baV
baX
aoq
aoq
asG
"}
(67,1,1) = {"
aaa
@@ -40449,9 +40485,9 @@ aad
aad
aad
baV
baV
baV
baX
aoq
aoq
asS
"}
(68,1,1) = {"
aaa
@@ -40591,9 +40627,9 @@ aad
aad
aad
baV
baV
baV
baX
aoq
aoq
asS
"}
(69,1,1) = {"
aaa
@@ -40733,9 +40769,9 @@ aad
aad
baV
baV
baV
baV
baX
aoq
aoq
asS
"}
(70,1,1) = {"
aaa
@@ -40875,9 +40911,9 @@ aad
aad
baV
baV
baV
baV
baX
aoq
aoq
asS
"}
(71,1,1) = {"
aaa
@@ -41017,9 +41053,9 @@ aad
aad
baV
baV
baV
baV
baX
aoq
aoq
asS
"}
(72,1,1) = {"
aaa
@@ -41159,9 +41195,9 @@ aad
aad
baV
baV
baV
baV
baX
aoq
aoq
asS
"}
(73,1,1) = {"
aaa
@@ -41301,11 +41337,15 @@ aad
aad
aad
baV
baV
baV
baX
aoq
aoq
asS
"}
(74,1,1) = {"
aaa
aaa
aaa
aaa
aab
aad
aad
@@ -41317,10 +41357,6 @@ aad
aad
aad
aad
aad
aad
aad
aad
ajK
aad
aad
@@ -41443,14 +41479,14 @@ aad
aad
aad
baV
baV
baV
baX
aoq
aoq
asS
"}
(75,1,1) = {"
aac
aae
aae
aaf
aaf
aae
aae
aae
@@ -41584,15 +41620,15 @@ aad
aad
aad
aad
aad
baV
baV
baW
aaa
aaa
aaa
"}
(76,1,1) = {"
aac
aqR
aaf
aaf
aae
aae
aae
aae
@@ -41732,7 +41768,7 @@ baV
aaa
"}
(77,1,1) = {"
aac
aqR
aaf
aaf
aaf
@@ -41874,7 +41910,7 @@ aad
aaa
"}
(78,1,1) = {"
aac
aqR
aaf
aaf
aaf
@@ -42016,7 +42052,7 @@ aad
aaa
"}
(79,1,1) = {"
aac
aqR
aaf
aaf
aaf
@@ -42158,7 +42194,7 @@ aad
aaa
"}
(80,1,1) = {"
aac
aqR
aaf
aaf
aaf
@@ -42300,7 +42336,7 @@ aad
aaa
"}
(81,1,1) = {"
aac
aqR
aaf
aaf
aaf
@@ -42442,7 +42478,7 @@ aad
aaa
"}
(82,1,1) = {"
aac
aqR
aaf
aaf
aaf
@@ -42584,9 +42620,9 @@ aad
aaa
"}
(83,1,1) = {"
aac
aqR
aaf
aaf
aae
aae
aae
aae
@@ -42726,9 +42762,9 @@ aad
aaa
"}
(84,1,1) = {"
aac
aae
aae
aqR
aaf
aaf
aae
aae
aae
@@ -42868,6 +42904,10 @@ aad
aaa
"}
(85,1,1) = {"
aaa
aaa
aaa
aaa
aab
aad
aad
@@ -42883,10 +42923,6 @@ aad
aad
aad
aad
aad
aad
aad
aad
aah
aah
aah
+44 -38
View File
@@ -952,6 +952,13 @@
/obj/machinery/mining/brace,
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
/area/outpost/mining_main/drill_equipment)
"cb" = (
/obj/effect/map_effect/portal/master/side_b{
dir = 1;
portal_id = "surfacemine"
},
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
/area/outpost/mining_main/passage)
"cc" = (
/obj/effect/floor_decal/industrial/warning/dust{
dir = 5
@@ -1032,11 +1039,8 @@
/area/mine/explored)
"cm" = (
/obj/effect/floor_decal/rust,
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
/area/outpost/mining_main/passage)
"cn" = (
/turf/simulated/floor/outdoors/grass/sif/virgo3b,
/area/outpost/mining_main/passage)
/turf/unsimulated/wall/planetary/virgo3b,
/area/mine/explored)
"co" = (
/obj/structure/bed/chair{
dir = 1
@@ -1059,7 +1063,9 @@
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
/area/outpost/mining_main/passage)
"cq" = (
/obj/effect/step_trigger/teleporter/from_mining,
/obj/effect/map_effect/portal/line/side_b{
dir = 1
},
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
/area/outpost/mining_main/passage)
"cr" = (
@@ -12409,7 +12415,7 @@ ab
ab
ab
ab
cn
ab
aa
"}
(74,1,1) = {"
@@ -12548,10 +12554,10 @@ af
ab
ab
ab
ab
ab
aa
aa
cm
cp
aa
aa
"}
(75,1,1) = {"
@@ -12691,10 +12697,10 @@ af
ab
ab
ab
ab
cn
cp
cq
cp
cp
cb
"}
(76,1,1) = {"
aa
@@ -12833,8 +12839,8 @@ ab
ab
af
ab
ab
cn
cp
cp
cp
cq
"}
@@ -12974,9 +12980,9 @@ ab
af
ab
ab
ab
af
cn
cp
cp
cp
cq
"}
@@ -13117,8 +13123,8 @@ ab
ab
ab
af
ab
cn
cp
cp
cp
cq
"}
@@ -13259,8 +13265,8 @@ ab
ab
ab
ab
ab
cn
cp
cp
cp
cq
"}
@@ -13400,9 +13406,9 @@ ab
ab
ab
ab
ab
ab
cn
af
cp
cp
cp
cq
"}
@@ -13543,8 +13549,8 @@ ab
ab
ab
ab
ab
cn
cp
cp
cp
cq
"}
@@ -13684,9 +13690,9 @@ ab
ab
ab
ab
ab
ab
cn
af
cp
cp
cp
cq
"}
@@ -13827,8 +13833,8 @@ ab
ab
ab
ab
ab
cn
cp
cp
cp
cq
"}
@@ -13969,8 +13975,8 @@ ab
ab
ab
ab
ab
cn
cp
cp
cp
cq
"}
@@ -14110,10 +14116,10 @@ ab
ab
ab
ab
ab
ab
cn
cp
aa
aa
aa
aa
aa
"}
(86,1,1) = {"
@@ -14255,7 +14261,7 @@ ab
ab
ab
ab
cn
ab
aa
"}
(87,1,1) = {"
+53 -34
View File
@@ -457,6 +457,14 @@
},
/turf/simulated/floor/virgo3b_indoors,
/area/tether/outpost/solars_shed)
"aU" = (
/obj/effect/map_effect/portal/master/side_b{
dir = 8;
name = "from_tether_to_solars";
portal_id = "solarstep"
},
/turf/simulated/floor/outdoors/grass/sif/virgo3b,
/area/mine/explored)
"aV" = (
/obj/effect/decal/cleanable/dirt,
/obj/machinery/power/terminal{
@@ -527,6 +535,13 @@
/obj/machinery/door/airlock/multi_tile/metal/mait,
/turf/simulated/floor/virgo3b_indoors,
/area/tether/outpost/solars_shed)
"bd" = (
/obj/effect/floor_decal/rust,
/obj/effect/map_effect/portal/line/side_b{
dir = 8
},
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
/area/mine/explored)
"be" = (
/obj/effect/floor_decal/industrial/warning/dust{
dir = 8
@@ -632,6 +647,12 @@
/obj/effect/decal/cleanable/dirt,
/turf/simulated/floor/virgo3b,
/area/mine/explored)
"bq" = (
/obj/effect/map_effect/portal/line/side_b{
dir = 8
},
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
/area/mine/explored)
"br" = (
/mob/living/simple_mob/animal/passive/gaslamp,
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
@@ -824,8 +845,6 @@
/turf/simulated/floor/virgo3b,
/area/mine/explored)
"bL" = (
/obj/effect/floor_decal/rust,
/obj/effect/step_trigger/teleporter/from_solars,
/turf/simulated/floor/tiled/steel_dirty/virgo3b,
/area/mine/explored)
"bM" = (
@@ -27551,7 +27570,7 @@ ab
ab
ab
bQ
ab
aa
ab
bj
ab
@@ -27563,7 +27582,7 @@ ab
ab
ab
ab
ab
aa
ab
ab
ab
@@ -27693,19 +27712,19 @@ ab
ab
ab
dd
ab
aa
bj
bj
ab
ab
ab
ab
ab
ab
ab
ab
ab
ab
bj
bj
bj
bj
bL
bj
bj
bj
bj
aa
ab
ab
ab
@@ -27835,19 +27854,19 @@ ab
ab
ab
cm
ab
ab
bj
ab
ab
aa
bj
bj
bj
ab
bj
ab
bj
ab
bj
bL
bj
bj
bj
bj
aa
ab
ab
ab
@@ -27978,17 +27997,17 @@ aa
aa
aa
aa
bL
bL
bL
bL
bL
bL
bL
bL
bL
bL
bL
aU
bd
bq
bq
bd
bd
bd
bq
bd
bq
bd
aa
aa
aa