Opts for the realistic route of making non-border transit turfs simply use normal space turf physics
This commit is contained in:
@@ -41,22 +41,12 @@
|
||||
/turf/open/space/transit/border/east
|
||||
dir = EAST
|
||||
|
||||
/turf/open/space/transit/Entered(atom/movable/AM, atom/OldLoc)
|
||||
/turf/open/space/transit/border/Entered(atom/movable/AM, atom/OldLoc)
|
||||
..()
|
||||
if(!locate(/obj/structure/lattice) in src && !SSshuttle.is_in_shuttle_bounds(src))
|
||||
if(!locate(/obj/structure/lattice) in src)
|
||||
throw_atom(AM)
|
||||
|
||||
/turf/open/space/transit/proc/throw_atom(atom/movable/AM)
|
||||
if(!AM || istype(AM, /obj/docking_port))
|
||||
return
|
||||
if(AM.loc != src)
|
||||
return
|
||||
if(AM.throwing)
|
||||
return
|
||||
var/turf/T = get_ranged_target_turf(src, turn(dir, 180), 10)
|
||||
AM.safe_throw_at(T, 10, 1, null, FALSE)
|
||||
|
||||
/turf/open/space/transit/border/throw_atom(atom/movable/AM)
|
||||
set waitfor = FALSE
|
||||
if(!AM || istype(AM, /obj/docking_port))
|
||||
return
|
||||
@@ -91,8 +81,8 @@
|
||||
|
||||
var/turf/T = locate(_x, _y, _z)
|
||||
AM.forceMove(T)
|
||||
var/turf/throwturf = get_ranged_target_turf(T, dir, 10)
|
||||
AM.safe_throw_at(throwturf, 10, 4, null, FALSE)
|
||||
var/turf/throwturf = get_ranged_target_turf(T, dir, 1)
|
||||
AM.safe_throw_at(throwturf, 1, 4, null, FALSE)
|
||||
|
||||
|
||||
/turf/open/space/transit/CanBuildHere()
|
||||
|
||||
@@ -22,6 +22,12 @@
|
||||
SSmapping.used_turfs -= i
|
||||
SSmapping.reserve_turfs(v)
|
||||
|
||||
/datum/turf_reservation/transit/Release()
|
||||
for(var/turf/open/space/transit/T in reserved_turfs)
|
||||
for(var/atom/movable/AM in T)
|
||||
T.throw_atom(AM)
|
||||
. = ..()
|
||||
|
||||
/datum/turf_reservation/proc/Reserve(width, height, zlevel)
|
||||
if(width > world.maxx || height > world.maxy || width < 1 || height < 1)
|
||||
return FALSE
|
||||
|
||||
Reference in New Issue
Block a user