diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index 5b28429477b7..fd9c4ce0dea8 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -867,7 +867,7 @@ animation.master = target flick(flick_anim, animation) -//Will return the contents of an atom recursivly to a depth of 'searchDepth', not including starting atom +///Will return the contents of an atom recursivly to a depth of 'searchDepth', not including starting atom /atom/proc/GetAllContents(searchDepth = 5, list/toReturn = list()) for(var/atom/part as anything in contents) toReturn += part @@ -875,8 +875,6 @@ part.GetAllContents(searchDepth - 1, toReturn) return toReturn -// FIXME take care of standardizing GetAllContents to get_all_contents - ///Returns the src and all recursive contents as a list. Includes the starting atom. /atom/proc/get_all_contents(ignore_flag_1) . = list(src) diff --git a/code/controllers/subsystem/mapping.dm b/code/controllers/subsystem/mapping.dm index 9035a12358a9..a7d95690e828 100644 --- a/code/controllers/subsystem/mapping.dm +++ b/code/controllers/subsystem/mapping.dm @@ -103,7 +103,7 @@ SUBSYSTEM_DEF(mapping) return clearing_reserved_turfs = TRUE message_admins("Clearing dynamic reservation space.") - // FIXME : /tg/ Shuttles have extra handling here to avoid them being desallocated + // /tg/ Shuttles have extra handling here to avoid them being desallocated do_wipe_turf_reservations() clearing_reserved_turfs = FALSE diff --git a/code/controllers/subsystem/shuttles.dm b/code/controllers/subsystem/shuttles.dm index 8b63e3b2880d..d0cb5333e6d6 100644 --- a/code/controllers/subsystem/shuttles.dm +++ b/code/controllers/subsystem/shuttles.dm @@ -419,10 +419,6 @@ SUBSYSTEM_DEF(shuttle) for(var/area/A as anything in preview_shuttle.shuttle_areas) for(var/turf/T as anything in A) - // turfs inside the shuttle are not available for shuttles - // FIXME: /tg/ doesn't have this. Figure out if it's really needed. - //T.turf_flags &= ~UNUSED_RESERVATION_TURF - // update underlays if(istype(T, /turf/closed/shuttle)) var/dx = T.x - preview_shuttle.x @@ -467,8 +463,6 @@ SUBSYSTEM_DEF(shuttle) if(!preview_reservation) CRASH("failed to reserve an area for shuttle template loading") var/turf/bottom_left = preview_reservation.bottom_left_turfs[1] - if(loading_template.type == /datum/map_template/shuttle/lifeboat_starboard) - pass() //DEBUG FIXME remove this loading_template.load(bottom_left, centered = FALSE, register = FALSE) var/affected = loading_template.get_affected_turfs(bottom_left, centered=FALSE) diff --git a/code/datums/shuttles.dm b/code/datums/shuttles.dm index a29ed56c9d2e..ec770f277320 100644 --- a/code/datums/shuttles.dm +++ b/code/datums/shuttles.dm @@ -63,8 +63,12 @@ for(var/i in 1 to turfs.len) var/turf/place = turfs[i] - // CM Note: We do this BEFORE and not AFTER because CM Lifeboats - // have their edges on space tiles and we'd skip the mobile port init + // ================== CM Change ================== + // We perform atom initialization of the docking_ports BEFORE skipping space, + // because our lifeboats have their corners as object props and still + // reside on space turfs. Notably the bottom left corner, which also contains + // the docking port. + for(var/obj/docking_port/mobile/port in place) SSatoms.InitializeAtoms(list(port)) if(register) @@ -75,6 +79,7 @@ if(length(place.baseturfs) < 2) // Some snowflake shuttle shit continue place.baseturfs.Insert(3, /turf/baseturf_skipover/shuttle) + // =============== END CM Change ================= //Whatever special stuff you want /datum/map_template/shuttle/post_load(obj/docking_port/mobile/M)