[Ready] Shuttle dock() rewrite (#29049)

A complete rewrite of the dock proc for shuttles to make it more maintainable and readable and also bring over some new features while we're at it. This allows for multi-area shuttles and more control over the effects of anything being moved.

Areas, and movable atoms all have (before|on|after)ShuttleMove procs, turfs have (from|to)ShuttleMove procs which are called the same as beforeShuttleMove.

All ShuttleMove procs have been moved to a single file in the shuttle module.

Stationary docks will have their baseturf_type and area_type modified in maps once the problems have been worked out.
This commit is contained in:
Emmett Gaines
2017-07-16 20:17:56 -04:00
committed by oranges
parent b09e519584
commit 1d201939ba
22 changed files with 1029 additions and 3761 deletions

View File

@@ -139,10 +139,6 @@ GLOBAL_LIST_EMPTY(all_lighting_objects) // Global list of lighting objects.
/atom/movable/lighting_object/blob_act()
return
// Nope nope nope!
/atom/movable/lighting_object/onShuttleMove(turf/T1, rotation)
return FALSE
// Override here to prevent things accidentally moving around overlays.
/atom/movable/lighting_object/forceMove(atom/destination, var/no_tp=FALSE, var/harderforce = FALSE)
if(harderforce)