mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-27 07:08:00 +01:00
[MDB Ignore] Adds airlock pumps to all external airlocks on Metastation (#91458)
## About The Pull Request Every external (space-facing) airlock on Metastation now has an airlock pump within Some airlocks have been expanded to be slightly larger. Most airlocks have been outfitted with an air supply for the purpose of fast cycling, though a few in awkward places didn't get one. Additionally, updated the airlock pump code to add support for L shaped airlocks. ## Why It's Good For The Game See #91457 ## Changelog 🆑 Melbert add: Adds airlock pumps to all external airlocks on Metastation qol: Airlock pumps work on L shaped airlocks, assuming [the airlocks] are already linked. /🆑
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -481,11 +481,22 @@
|
||||
internal_airlocks = get_adjacent_airlocks(internal_airlocks_origin, perpendicular_dirs)
|
||||
external_airlocks = get_adjacent_airlocks(external_airlocks_origin, perpendicular_dirs)
|
||||
|
||||
if(!internal_airlocks.len || !internal_airlocks.len)
|
||||
// This is support for awkwardly shaped airlocks that cycle on a group ID
|
||||
if(!length(internal_airlocks))
|
||||
for(var/obj/machinery/door/airlock/external_airlock as anything in external_airlocks)
|
||||
internal_airlocks |= external_airlock.close_others
|
||||
// For double-wide airlocks, so we don't end up with doors in both lists
|
||||
internal_airlocks -= external_airlocks
|
||||
if(!length(external_airlocks))
|
||||
for(var/obj/machinery/door/airlock/internal_airlock as anything in internal_airlocks)
|
||||
external_airlocks |= internal_airlock.close_others
|
||||
external_airlocks -= internal_airlocks
|
||||
|
||||
if(!length(external_airlocks) || !length(internal_airlocks))
|
||||
if(!can_unwrench) //maploaded pump
|
||||
CRASH("[type] couldn't find airlocks to cycle with!")
|
||||
internal_airlocks = list()
|
||||
external_airlocks = list()
|
||||
internal_airlocks.Cut()
|
||||
external_airlocks.Cut()
|
||||
say("Cycling setup failed. No opposite airlocks found.")
|
||||
return
|
||||
|
||||
|
||||
Reference in New Issue
Block a user