Merge pull request #13895 from AffectedArc07/hyperspace-fix

You can no longer teleport to lavaland by walking out of a shuttle
This commit is contained in:
Fox McCloud
2020-07-23 13:04:21 -04:00
committed by GitHub
5 changed files with 18 additions and 6 deletions
+2 -3
View File
@@ -94,8 +94,6 @@
var/max = world.maxx-TRANSITIONEDGE
var/min = 1+TRANSITIONEDGE
var/_z = pick(levels_by_trait(REACHABLE)) //select a random space zlevel
//now select coordinates for a border turf
var/_x
var/_y
@@ -113,7 +111,8 @@
_x = rand(min,max)
_y = min
var/turf/T = locate(_x, _y, _z)
var/list/levels_available = get_all_linked_levels_zpos()
var/turf/T = locate(_x, _y, pick(levels_available))
AM.forceMove(T)
AM.newtonian_move(dir)
@@ -61,3 +61,16 @@ GLOBAL_LIST_INIT(default_map_traits, MAP_TRANSITION_CONFIG)
/proc/level_name_to_num(name)
var/datum/space_level/S = GLOB.space_manager.get_zlev_by_name(name)
return S.zpos
/**
* Proc to get a list of all the linked-together Z-Levels
*
* Returns a list of zlevel numbers which can be accessed from travelling space naturally
*/
/proc/get_all_linked_levels_zpos()
var/list/znums = list()
for(var/i in GLOB.space_manager.z_list)
var/datum/space_level/SL = GLOB.space_manager.z_list[i]
if(SL.linkage == CROSSLINKED)
znums |= SL.zpos
return znums