mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-07-20 12:29:23 +01:00
Airlock markers - docking and shuttle airlocks (#17717)
* rearrange files * Squashed commit of the following: commitec32b5b6e9Author: DreamySkrell <> Date: Sat Oct 28 22:32:05 2023 +0200 ccc commitbe750e672dAuthor: DreamySkrell <> Date: Sat Oct 28 22:01:02 2023 +0200 cc commit1ecd9afb6cAuthor: DreamySkrell <> Date: Sat Oct 28 21:57:38 2023 +0200 c commit159d1000d9Author: DreamySkrell <> Date: Sat Oct 28 21:40:40 2023 +0200 nav_ert_dock kill commitb767a2574aAuthor: DreamySkrell <> Date: Sat Oct 28 21:24:34 2023 +0200 a commitaa01eec1fcAuthor: DreamySkrell <> Date: Sat Oct 28 21:09:48 2023 +0200 NAV_HORIZON_DOCK_ALL commit4564bfd29fAuthor: DreamySkrell <> Date: Sat Oct 28 20:55:45 2023 +0200 burglar and raider to use NAV_HORIZON_EXTERIOR_ALL_DECKS and SNEAKY commitec7564fcb1Author: DreamySkrell <> Date: Sat Oct 28 20:43:17 2023 +0200 merc shuttle to use NAV_HORIZON_EXTERIOR_ALL_DECKS commitd306934a73Author: DreamySkrell <> Date: Fri Oct 27 00:00:41 2023 +0200 fix merc and skipjack area/template_noop commit0600a348cdAuthor: DreamySkrell <> Date: Thu Oct 26 22:28:45 2023 +0200 merc ship generic dock landmark huh commitc9850622f9Author: DreamySkrell <> Date: Thu Oct 26 20:37:55 2023 +0200 sane landmark tags commit56d9052270Author: DreamySkrell <> Date: Thu Oct 26 20:11:55 2023 +0200 /horizon/dock/deck_3/port_3 commit846d737c94Author: DreamySkrell <> Date: Thu Oct 26 20:03:17 2023 +0200 landmark/horizon/deck -> landmark/horizon/exterior/deck commitef5c3d1b09Author: DreamySkrell <> Date: Thu Oct 26 20:02:17 2023 +0200 landmark/horizon/dock -> landmark/horizon/dock/deck_3/... commit1716ef26a8Author: DreamySkrell <> Date: Thu Oct 26 19:54:21 2023 +0200 docks ruler helpers commit18c66a3124Author: DreamySkrell <> Date: Thu Oct 26 19:47:27 2023 +0200 a commit0f2fc4524cAuthor: DreamySkrell <> Date: Thu Oct 26 19:43:19 2023 +0200 horizon/nav -> horizon/hangar commite13a5233d1Author: DreamySkrell <> Date: Thu Oct 26 19:41:08 2023 +0200 sccv_horizon_shuttle_landmarks.dm * Squashed commit of the following: commit4d7052be3bAuthor: DreamySkrell <> Date: Sun Oct 29 14:18:40 2023 +0100 tests rerun please commitae04980347Author: DreamySkrell <> Date: Sun Oct 29 13:25:26 2023 +0100 oops commit176ea80155Author: DreamySkrell <> Date: Sun Oct 29 12:54:25 2023 +0100 tests rerun please commit5cf7db9162Author: DreamySkrell <> Date: Sun Oct 29 12:45:07 2023 +0100 c commitf93887a1efAuthor: DreamySkrell <> Date: Sun Oct 29 12:43:47 2023 +0100 jjjjjjjjjjjj commit697542a270Author: DreamySkrell <> Date: Sun Oct 29 12:25:32 2023 +0100 a commita83373a62aAuthor: DreamySkrell <> Date: Sun Oct 29 12:17:47 2023 +0100 ay commitbaf447a694Author: DreamySkrell <> Date: Sun Oct 29 11:05:38 2023 +0100 a * sprites * code and mapping wip... * huhhhh * agony * docs idk * intrepid idk * almost working... * i fucking love docks * 568 * m * kkkkkkkkkkkkkkk * helper in own file * a * tags * huh * a * 1 pixel * intrepid mf * spark mf * access * guidelines * g * gd * hnyfgjdtjtsdyjdtyj * m * c * a * fix canary and ert shuttle docking controller tags * huhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh * remove old changelogs * sprite * bad docs removal --------- Co-authored-by: DreamySkrell <>
This commit is contained in:
+6
-1
@@ -906,6 +906,7 @@
|
||||
#include "code\game\objects\empulse.dm"
|
||||
#include "code\game\objects\explosion.dm"
|
||||
#include "code\game\objects\items.dm"
|
||||
#include "code\game\objects\merge_conflict_marker.dm"
|
||||
#include "code\game\objects\objs.dm"
|
||||
#include "code\game\objects\structures.dm"
|
||||
#include "code\game\objects\auras\auras.dm"
|
||||
@@ -1927,7 +1928,6 @@
|
||||
#include "code\modules\effects\ion_trail_follow.dm"
|
||||
#include "code\modules\effects\shuttle_landing_warning.dm"
|
||||
#include "code\modules\effects\visual_effect.dm"
|
||||
#include "code\modules\effects\map_effects\airlock_marker.dm"
|
||||
#include "code\modules\effects\map_effects\airlock_spawner.dm"
|
||||
#include "code\modules\effects\map_effects\beam_point.dm"
|
||||
#include "code\modules\effects\map_effects\door_helper.dm"
|
||||
@@ -1939,6 +1939,11 @@
|
||||
#include "code\modules\effects\map_effects\screen_shaker.dm"
|
||||
#include "code\modules\effects\map_effects\sound_emitter.dm"
|
||||
#include "code\modules\effects\map_effects\window_spawner.dm"
|
||||
#include "code\modules\effects\map_effects\marker\_defines.dm"
|
||||
#include "code\modules\effects\map_effects\marker\airlock_.dm"
|
||||
#include "code\modules\effects\map_effects\marker\airlock_docking.dm"
|
||||
#include "code\modules\effects\map_effects\marker\airlock_helper.dm"
|
||||
#include "code\modules\effects\map_effects\marker\airlock_shuttle.dm"
|
||||
#include "code\modules\effects\maze_generation\maze_generator.dm"
|
||||
#include "code\modules\effects\maze_generation\maze_generator_blockwise.dm"
|
||||
#include "code\modules\effects\maze_generation\maze_helper_atoms.dm"
|
||||
|
||||
@@ -8,6 +8,8 @@ SUBSYSTEM_DEF(shuttle)
|
||||
var/list/ships = list() //List of all ships.
|
||||
var/list/shuttles = list() //maps shuttle tags to shuttle datums, so that they can be looked up.
|
||||
var/list/process_shuttles = list() //simple list of shuttles, for processing
|
||||
|
||||
/// Map of shuttle landmark `landmark_tag` to the actual landmark object.
|
||||
var/list/registered_shuttle_landmarks = list()
|
||||
var/last_landmark_registration_time
|
||||
var/list/docking_registry = list() //Docking controller tag -> docking controller program, mostly for init purposes.
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
/obj/merge_conflict_marker
|
||||
name = "MERGE CONFLICT MARKER"
|
||||
icon = 'icons/effects/map_effects.dmi'
|
||||
icon_state = "portal_projection_side_b"
|
||||
layer = ABOVE_ALL_MOB_LAYER
|
||||
@@ -1,121 +0,0 @@
|
||||
/obj/effect/map_effect/marker
|
||||
name = "map marker parent abstract object"
|
||||
icon = 'icons/effects/map_effects.dmi'
|
||||
icon_state = "map_marker"
|
||||
|
||||
/obj/effect/map_effect/marker_helper
|
||||
name = "map marker helper parent abstract object"
|
||||
icon = 'icons/effects/map_effects.dmi'
|
||||
icon_state = "map_marker"
|
||||
|
||||
/// Airlock marker that, when placed above airlock components (doors, pumps, sensors, etc),
|
||||
/// actually sets the airlock up to make it functional.
|
||||
/obj/effect/map_effect/marker/airlock
|
||||
name = "airlock marker (inside the airlock)"
|
||||
desc = "MASTER_TAG VAR MUST BE UNIQUE FOR THE AIRLOCK! Place this on top of airlock components (doors, pumps, sensors, etc)."
|
||||
icon = 'icons/effects/map_effects.dmi'
|
||||
icon_state = "airlock_marker"
|
||||
layer = LIGHTING_LAYER
|
||||
|
||||
/// Radio frequency of this airlock.
|
||||
var/frequency = 2137
|
||||
|
||||
/// Unique tag for this airlock. Not visible in game and to the player. Do not leave this as null.
|
||||
/// THIS MUST BE UNIQUE FOR THE AIRLOCK. Every marker in one airlock should have the same `master_tag`.
|
||||
/// But different airlocks, even on different maps, cannot share the same `master_tag`.
|
||||
var/master_tag = null
|
||||
|
||||
/// Doors/buttons/etc will be set to this access requirement. If null, they will not have any access requirements.
|
||||
var/required_access = list(access_external_airlocks)
|
||||
|
||||
/// Specialization helper for the airlock marker, to be put above "exterior" parts of the airlock,
|
||||
/// and on top of the actual airlock marker. By itself does nothing.
|
||||
/obj/effect/map_effect/marker_helper/airlock/exterior
|
||||
name = "airlock marker (exterior/outside/vacuum)"
|
||||
icon = 'icons/effects/map_effects.dmi'
|
||||
icon_state = "airlock_marker_exterior"
|
||||
layer = LIGHTING_LAYER
|
||||
|
||||
/// Specialization helper for the airlock marker, to be put above "interior" parts of the airlock,
|
||||
/// and on top of the actual airlock marker. By itself does nothing.
|
||||
/obj/effect/map_effect/marker_helper/airlock/interior
|
||||
name = "airlock marker (interior/inside/pressurized)"
|
||||
icon = 'icons/effects/map_effects.dmi'
|
||||
icon_state = "airlock_marker_interior"
|
||||
layer = LIGHTING_LAYER
|
||||
|
||||
/obj/effect/map_effect/marker/airlock/Initialize(mapload, ...)
|
||||
..()
|
||||
return INITIALIZE_HINT_LATELOAD
|
||||
|
||||
#define MASTER_TAG "[master_tag]_controller"
|
||||
#define AIRPUMP_TAG "[master_tag]_pump"
|
||||
#define SENSOR_TAG "[master_tag]_sensor"
|
||||
#define EXTERIOR_DOOR_TAG "[master_tag]_outer"
|
||||
#define INTERIOR_DOOR_TAG "[master_tag]_inner"
|
||||
|
||||
/obj/effect/map_effect/marker/airlock/LateInitialize()
|
||||
if(!master_tag || !frequency)
|
||||
return
|
||||
|
||||
var/is_interior = locate(/obj/effect/map_effect/marker_helper/airlock/interior) in loc
|
||||
var/is_exterior = locate(/obj/effect/map_effect/marker_helper/airlock/exterior) in loc
|
||||
|
||||
// iterate over airlock components under this marker
|
||||
// and actually set them up
|
||||
for(var/thing in loc)
|
||||
var/obj/machinery/embedded_controller/radio/airlock/airlock_controller/airlock_controller = thing
|
||||
if(istype(airlock_controller))
|
||||
airlock_controller.set_frequency(frequency)
|
||||
airlock_controller.id_tag = MASTER_TAG
|
||||
airlock_controller.tag_airpump = AIRPUMP_TAG
|
||||
airlock_controller.tag_chamber_sensor = SENSOR_TAG
|
||||
airlock_controller.tag_exterior_door = EXTERIOR_DOOR_TAG
|
||||
airlock_controller.tag_interior_door = INTERIOR_DOOR_TAG
|
||||
airlock_controller.req_access = required_access
|
||||
airlock_controller.program = new /datum/computer/file/embedded_program/airlock(airlock_controller)
|
||||
continue
|
||||
|
||||
var/obj/machinery/door/airlock/door = thing
|
||||
if(istype(door))
|
||||
door.set_frequency(frequency)
|
||||
door.req_access = required_access
|
||||
door.lock()
|
||||
if(is_interior)
|
||||
door.id_tag = INTERIOR_DOOR_TAG
|
||||
else if(is_exterior)
|
||||
door.id_tag = EXTERIOR_DOOR_TAG
|
||||
continue
|
||||
|
||||
var/obj/machinery/airlock_sensor/sensor = thing
|
||||
if(istype(sensor))
|
||||
sensor.set_frequency(frequency)
|
||||
sensor.id_tag = SENSOR_TAG
|
||||
sensor.master_tag = MASTER_TAG
|
||||
continue
|
||||
|
||||
var/obj/machinery/atmospherics/unary/vent_pump/pump = thing
|
||||
if(istype(pump))
|
||||
pump.frequency = frequency
|
||||
unregister_radio(pump, frequency)
|
||||
pump.setup_radio()
|
||||
pump.id_tag = AIRPUMP_TAG
|
||||
continue
|
||||
|
||||
var/obj/machinery/access_button/button = thing
|
||||
if(istype(button))
|
||||
button.set_frequency(frequency)
|
||||
button.master_tag = MASTER_TAG
|
||||
button.req_access = required_access
|
||||
if(is_interior)
|
||||
button.command = "cycle_interior"
|
||||
else if(is_exterior)
|
||||
button.command = "cycle_exterior"
|
||||
continue
|
||||
|
||||
#undef MASTER_TAG
|
||||
#undef AIRPUMP_TAG
|
||||
#undef SENSOR_TAG
|
||||
#undef EXTERIOR_DOOR_TAG
|
||||
#undef INTERIOR_DOOR_TAG
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
|
||||
#define AIRLOCK_MARKER_TAG_MASTER "[master_tag]"
|
||||
#define AIRLOCK_MARKER_TAG_SENSOR_CHAMBER "[master_tag]_sensor_chamber"
|
||||
#define AIRLOCK_MARKER_TAG_SENSOR_INTERIOR "[master_tag]_sensor_interior"
|
||||
#define AIRLOCK_MARKER_TAG_SENSOR_EXTERIOR "[master_tag]_sensor_exterior"
|
||||
#define AIRLOCK_MARKER_TAG_DOOR_EXTERIOR "[master_tag]_door_exterior"
|
||||
#define AIRLOCK_MARKER_TAG_DOOR_INTERIOR "[master_tag]_door_interior"
|
||||
#define AIRLOCK_MARKER_TAG_AIRPUMP_CHAMBER "[master_tag]_airpump_chamber"
|
||||
#define AIRLOCK_MARKER_TAG_AIRPUMP_OUT_EXTERNAL "[master_tag]_pump_out_external"
|
||||
#define AIRLOCK_MARKER_TAG_AIRPUMP_OUT_INTERNAL "[master_tag]_pump_out_internal"
|
||||
@@ -0,0 +1,118 @@
|
||||
/obj/effect/map_effect/marker
|
||||
name = "map marker parent abstract object"
|
||||
icon = 'icons/effects/map_effects.dmi'
|
||||
icon_state = "marker_base"
|
||||
|
||||
/// Airlock marker that, when placed above airlock components, actually sets them up to make it functional.
|
||||
/// This is a simple exterior access airlock, not used for docking.
|
||||
/// See `maps/helpers/guidelines_airlocks.dmm` for examples of good and bad airlocks.
|
||||
/obj/effect/map_effect/marker/airlock
|
||||
name = "airlock marker"
|
||||
desc = "See comments/documentation in code."
|
||||
icon = 'icons/effects/map_effects.dmi'
|
||||
icon_state = "marker_airlock"
|
||||
layer = LIGHTING_LAYER
|
||||
|
||||
/// Radio frequency of this airlock.
|
||||
/// For simple external/service access airlocks it does not affect anything.
|
||||
var/frequency = 2137
|
||||
|
||||
/// Unique tag for this airlock. Not visible in game and to the player. Do not leave this as null.
|
||||
/// THIS MUST BE UNIQUE FOR THE AIRLOCK. Every marker in one airlock should have the same `master_tag`.
|
||||
/// Different airlocks, even on different maps, cannot share the same `master_tag`.
|
||||
var/master_tag = null
|
||||
|
||||
/// If true, the airlock will be set up to fill with air from the outside when cycling to exterior,
|
||||
/// and will empty air to outside before filling with interior air. This makes it so exterior and interior atmospheres do not mix.
|
||||
/// Should be used for airlocks that may be used on planets with atmosphere and air (as opposed to ships or space stations that stay in vacuum).
|
||||
var/cycle_to_external_air = FALSE
|
||||
|
||||
/// Doors/buttons/etc will be set to this access requirement. If null, they will not have any access requirements.
|
||||
req_access = null
|
||||
|
||||
/// Doors/buttons/etc will be set to this access requirement. If null, they will not have any access requirements.
|
||||
req_one_access = list(access_external_airlocks)
|
||||
|
||||
/obj/effect/map_effect/marker/airlock/Initialize(mapload, ...)
|
||||
..()
|
||||
return INITIALIZE_HINT_LATELOAD
|
||||
|
||||
/obj/effect/map_effect/marker/airlock/LateInitialize()
|
||||
if(!master_tag || !frequency)
|
||||
return
|
||||
|
||||
var/is_interior = locate(/obj/effect/map_effect/marker_helper/airlock/interior) in loc
|
||||
var/is_exterior = locate(/obj/effect/map_effect/marker_helper/airlock/exterior) in loc
|
||||
var/is_out = locate(/obj/effect/map_effect/marker_helper/airlock/out) in loc
|
||||
|
||||
// iterate over airlock components under this marker
|
||||
// and actually set them up
|
||||
for(var/thing in loc)
|
||||
// set up the controller
|
||||
var/obj/machinery/embedded_controller/radio/airlock/airlock_controller/controller = thing
|
||||
if(istype(controller))
|
||||
// common controller vars
|
||||
controller.set_frequency(frequency)
|
||||
controller.id_tag = AIRLOCK_MARKER_TAG_MASTER
|
||||
controller.tag_airpump = AIRLOCK_MARKER_TAG_AIRPUMP_CHAMBER
|
||||
controller.tag_chamber_sensor = AIRLOCK_MARKER_TAG_SENSOR_CHAMBER
|
||||
controller.tag_exterior_sensor = AIRLOCK_MARKER_TAG_SENSOR_EXTERIOR
|
||||
controller.tag_exterior_door = AIRLOCK_MARKER_TAG_DOOR_EXTERIOR
|
||||
controller.tag_interior_door = AIRLOCK_MARKER_TAG_DOOR_INTERIOR
|
||||
controller.cycle_to_external_air = cycle_to_external_air
|
||||
controller.req_access = req_access
|
||||
controller.req_one_access = req_one_access
|
||||
// controller subtype specific vars
|
||||
controller.program = new /datum/computer/file/embedded_program/airlock(controller)
|
||||
continue
|
||||
|
||||
// and all the other airlock components
|
||||
|
||||
var/obj/machinery/door/airlock/door = thing
|
||||
if(istype(door))
|
||||
door.set_frequency(frequency)
|
||||
door.req_access = req_access
|
||||
door.req_one_access = req_one_access
|
||||
door.lock()
|
||||
if(is_interior)
|
||||
door.id_tag = AIRLOCK_MARKER_TAG_DOOR_INTERIOR
|
||||
else if(is_exterior)
|
||||
door.id_tag = AIRLOCK_MARKER_TAG_DOOR_EXTERIOR
|
||||
continue
|
||||
|
||||
var/obj/machinery/airlock_sensor/sensor = thing
|
||||
if(istype(sensor))
|
||||
sensor.set_frequency(frequency)
|
||||
sensor.master_tag = AIRLOCK_MARKER_TAG_MASTER
|
||||
if(is_interior)
|
||||
sensor.id_tag = AIRLOCK_MARKER_TAG_SENSOR_INTERIOR
|
||||
else if(is_exterior)
|
||||
sensor.id_tag = AIRLOCK_MARKER_TAG_SENSOR_EXTERIOR
|
||||
else
|
||||
sensor.id_tag = AIRLOCK_MARKER_TAG_SENSOR_CHAMBER
|
||||
continue
|
||||
|
||||
var/obj/machinery/atmospherics/unary/vent_pump/pump = thing
|
||||
if(istype(pump))
|
||||
pump.frequency = frequency
|
||||
unregister_radio(pump, frequency)
|
||||
pump.setup_radio()
|
||||
if(is_exterior)
|
||||
pump.id_tag = AIRLOCK_MARKER_TAG_AIRPUMP_OUT_EXTERNAL
|
||||
else if(is_out)
|
||||
pump.id_tag = AIRLOCK_MARKER_TAG_AIRPUMP_OUT_INTERNAL
|
||||
else
|
||||
pump.id_tag = AIRLOCK_MARKER_TAG_AIRPUMP_CHAMBER
|
||||
continue
|
||||
|
||||
var/obj/machinery/access_button/button = thing
|
||||
if(istype(button))
|
||||
button.set_frequency(frequency)
|
||||
button.master_tag = AIRLOCK_MARKER_TAG_MASTER
|
||||
button.req_access = req_access
|
||||
button.req_one_access = req_one_access
|
||||
if(is_interior)
|
||||
button.command = "cycle_interior"
|
||||
else if(is_exterior)
|
||||
button.command = "cycle_exterior"
|
||||
continue
|
||||
@@ -0,0 +1,117 @@
|
||||
|
||||
/// Docking airlock marker that, when placed above airlock components, actually sets them up to make it functional.
|
||||
/// This is a docking airlock, meaning it is connected to a shuttle landmark object.
|
||||
/// When some shuttle arrives at that landmark, the actual docking may commence, with the doors of the airlock automatically opening, etc.
|
||||
/// This is the station/ship side of that docking (the other being the shuttle).
|
||||
/obj/effect/map_effect/marker/airlock/docking
|
||||
name = "docking airlock marker"
|
||||
icon = 'icons/effects/map_effects.dmi'
|
||||
icon_state = "marker_airlock_docking"
|
||||
layer = LIGHTING_LAYER
|
||||
|
||||
/// Radio frequency of this airlock.
|
||||
/// For docking airlocks, the frequency of docking port airlock and the shuttle airlock needs to match,
|
||||
/// otherwise they can't "talk", and the docking will never actually happen.
|
||||
/// Keep 1380 as default frequency, to maximize compatibility between various shuttles and docks.
|
||||
frequency = 1380
|
||||
|
||||
/// Unique tag for this airlock. Not visible in game and to the player. Do not leave this as null.
|
||||
/// THIS MUST BE UNIQUE FOR THE AIRLOCK. Every marker in one airlock should have the same `master_tag`.
|
||||
/// Different airlocks, even on different maps, cannot share the same `master_tag`.
|
||||
/// This must be the same as the `docking_controller` tag in the shuttle landmark object.
|
||||
master_tag = null
|
||||
|
||||
/// Tag of the shuttle landmark, that this docking port is supposed to be connected to.
|
||||
/// Same as `landmark_tag` var of the shuttle landmark object, and same as the key for `registered_shuttle_landmarks` in shuttle subsystem.
|
||||
var/landmark_tag = null
|
||||
|
||||
/obj/effect/map_effect/marker/airlock/docking/LateInitialize()
|
||||
if(!master_tag || !frequency || !landmark_tag)
|
||||
return
|
||||
|
||||
var/is_interior = locate(/obj/effect/map_effect/marker_helper/airlock/interior) in loc
|
||||
var/is_exterior = locate(/obj/effect/map_effect/marker_helper/airlock/exterior) in loc
|
||||
var/is_out = locate(/obj/effect/map_effect/marker_helper/airlock/out) in loc
|
||||
|
||||
// iterate over airlock components under this marker
|
||||
// and actually set them up
|
||||
for(var/thing in loc)
|
||||
// set up the controller
|
||||
var/obj/machinery/embedded_controller/radio/airlock/docking_port/controller = thing
|
||||
if(istype(controller))
|
||||
// common controller vars
|
||||
controller.set_frequency(frequency)
|
||||
controller.id_tag = AIRLOCK_MARKER_TAG_MASTER
|
||||
controller.tag_airpump = AIRLOCK_MARKER_TAG_AIRPUMP_CHAMBER
|
||||
controller.tag_chamber_sensor = AIRLOCK_MARKER_TAG_SENSOR_CHAMBER
|
||||
controller.tag_exterior_sensor = AIRLOCK_MARKER_TAG_SENSOR_EXTERIOR
|
||||
controller.tag_exterior_door = AIRLOCK_MARKER_TAG_DOOR_EXTERIOR
|
||||
controller.tag_interior_door = AIRLOCK_MARKER_TAG_DOOR_INTERIOR
|
||||
controller.cycle_to_external_air = cycle_to_external_air
|
||||
controller.req_access = req_access
|
||||
controller.req_one_access = req_one_access
|
||||
// controller subtype specific vars
|
||||
controller.airlock_program = new /datum/computer/file/embedded_program/airlock/docking(controller)
|
||||
controller.docking_program = new /datum/computer/file/embedded_program/docking/airlock(controller, controller.airlock_program)
|
||||
controller.program = controller.docking_program
|
||||
if(SSshuttle.registered_shuttle_landmarks[landmark_tag])
|
||||
var/obj/effect/shuttle_landmark/landmark = SSshuttle.registered_shuttle_landmarks[landmark_tag]
|
||||
landmark.docking_controller = SSshuttle.docking_registry[AIRLOCK_MARKER_TAG_MASTER]
|
||||
continue
|
||||
|
||||
var/obj/effect/shuttle_landmark/landmark = thing
|
||||
if(istype(landmark))
|
||||
if(SSshuttle.docking_registry[AIRLOCK_MARKER_TAG_MASTER])
|
||||
landmark.docking_controller = SSshuttle.docking_registry[AIRLOCK_MARKER_TAG_MASTER]
|
||||
continue
|
||||
|
||||
// and all the other airlock components
|
||||
|
||||
var/obj/machinery/door/airlock/door = thing
|
||||
if(istype(door))
|
||||
door.set_frequency(frequency)
|
||||
door.req_access = req_access
|
||||
door.req_one_access = req_one_access
|
||||
door.lock()
|
||||
if(is_interior)
|
||||
door.id_tag = AIRLOCK_MARKER_TAG_DOOR_INTERIOR
|
||||
else if(is_exterior)
|
||||
door.id_tag = AIRLOCK_MARKER_TAG_DOOR_EXTERIOR
|
||||
continue
|
||||
|
||||
var/obj/machinery/airlock_sensor/sensor = thing
|
||||
if(istype(sensor))
|
||||
sensor.set_frequency(frequency)
|
||||
sensor.master_tag = AIRLOCK_MARKER_TAG_MASTER
|
||||
if(is_interior)
|
||||
sensor.id_tag = AIRLOCK_MARKER_TAG_SENSOR_INTERIOR
|
||||
else if(is_exterior)
|
||||
sensor.id_tag = AIRLOCK_MARKER_TAG_SENSOR_EXTERIOR
|
||||
else
|
||||
sensor.id_tag = AIRLOCK_MARKER_TAG_SENSOR_CHAMBER
|
||||
continue
|
||||
|
||||
var/obj/machinery/atmospherics/unary/vent_pump/pump = thing
|
||||
if(istype(pump))
|
||||
pump.frequency = frequency
|
||||
unregister_radio(pump, frequency)
|
||||
pump.setup_radio()
|
||||
if(is_exterior)
|
||||
pump.id_tag = AIRLOCK_MARKER_TAG_AIRPUMP_OUT_EXTERNAL
|
||||
else if(is_out)
|
||||
pump.id_tag = AIRLOCK_MARKER_TAG_AIRPUMP_OUT_INTERNAL
|
||||
else
|
||||
pump.id_tag = AIRLOCK_MARKER_TAG_AIRPUMP_CHAMBER
|
||||
continue
|
||||
|
||||
var/obj/machinery/access_button/button = thing
|
||||
if(istype(button))
|
||||
button.set_frequency(frequency)
|
||||
button.master_tag = AIRLOCK_MARKER_TAG_MASTER
|
||||
button.req_access = req_access
|
||||
button.req_one_access = req_one_access
|
||||
if(is_interior)
|
||||
button.command = "cycle_interior"
|
||||
else if(is_exterior)
|
||||
button.command = "cycle_exterior"
|
||||
continue
|
||||
@@ -0,0 +1,28 @@
|
||||
/obj/effect/map_effect/marker_helper
|
||||
name = "map marker helper parent abstract object"
|
||||
icon = 'icons/effects/map_effects.dmi'
|
||||
icon_state = "marker_base"
|
||||
|
||||
/// Specialization helper for the airlock marker. By itself does nothing.
|
||||
/// To be put above "exterior" components of the airlock, and on top of the actual airlock marker.
|
||||
/obj/effect/map_effect/marker_helper/airlock/exterior
|
||||
name = "airlock marker helper (exterior/outside/vacuum)"
|
||||
icon = 'icons/effects/map_effects.dmi'
|
||||
icon_state = "marker_helper_airlock_exterior"
|
||||
layer = LIGHTING_LAYER
|
||||
|
||||
/// Specialization helper for the airlock marker, to be put above "interior" parts of the airlock,
|
||||
/// and on top of the actual airlock marker. By itself does nothing.
|
||||
/obj/effect/map_effect/marker_helper/airlock/interior
|
||||
name = "airlock marker helper (interior/inside/pressurized)"
|
||||
icon = 'icons/effects/map_effects.dmi'
|
||||
icon_state = "marker_helper_airlock_interior"
|
||||
layer = LIGHTING_LAYER
|
||||
|
||||
/// Specialization helper for the airlock marker, to be put above the out pump of the airlock,
|
||||
/// and on top of the actual airlock marker. By itself does nothing.
|
||||
/obj/effect/map_effect/marker_helper/airlock/out
|
||||
name = "airlock marker helper (chamber, out pump)"
|
||||
icon = 'icons/effects/map_effects.dmi'
|
||||
icon_state = "marker_helper_airlock_out"
|
||||
layer = LIGHTING_LAYER
|
||||
@@ -0,0 +1,111 @@
|
||||
|
||||
/// Docking airlock marker that, when placed above airlock components, actually sets them up to make it functional.
|
||||
/// This is a docking airlock specialized for shuttles, and is connected to a shuttle datum.
|
||||
/// When that shuttle arrives at some landmark, the actual docking may commence, with the doors of the airlock automatically opening, etc.
|
||||
/// This is the shuttle side of that docking (the other being the station/ship).
|
||||
/obj/effect/map_effect/marker/airlock/shuttle
|
||||
name = "shuttle docking airlock marker"
|
||||
icon = 'icons/effects/map_effects.dmi'
|
||||
icon_state = "marker_airlock_shuttle"
|
||||
layer = LIGHTING_LAYER
|
||||
|
||||
/// Radio frequency of this airlock.
|
||||
/// For docking airlocks, the frequency of docking port airlock and the shuttle airlock needs to match,
|
||||
/// otherwise they can't "talk", and the docking will never actually happen (meaning the automatic opening/closing of doors).
|
||||
/// Keep 1380 as default frequency, to maximize compatibility between various shuttles and docks.
|
||||
frequency = 1380
|
||||
|
||||
/// Unique tag for this airlock. Not visible in game and to the player. Do not leave this as null.
|
||||
/// THIS MUST BE UNIQUE FOR THE AIRLOCK. Every marker in one airlock should have the same `master_tag`.
|
||||
/// Different airlocks, even on different maps, cannot share the same `master_tag`.
|
||||
/// This must be the same as the `dock_target` tag in the shuttle datum.
|
||||
master_tag = null
|
||||
|
||||
/// Tag of the shuttle, that this docking port is supposed to be connected to.
|
||||
/// Same as `name` var of the shuttle datum, and same as the key for `shuttles` in shuttle subsystem.
|
||||
var/shuttle_tag = null
|
||||
|
||||
/obj/effect/map_effect/marker/airlock/shuttle/LateInitialize()
|
||||
if(!master_tag || !frequency || !shuttle_tag)
|
||||
return
|
||||
|
||||
var/is_interior = locate(/obj/effect/map_effect/marker_helper/airlock/interior) in loc
|
||||
var/is_exterior = locate(/obj/effect/map_effect/marker_helper/airlock/exterior) in loc
|
||||
var/is_out = locate(/obj/effect/map_effect/marker_helper/airlock/out) in loc
|
||||
|
||||
// iterate over airlock components under this marker
|
||||
// and actually set them up
|
||||
for(var/thing in loc)
|
||||
// set up the controller
|
||||
var/obj/machinery/embedded_controller/radio/airlock/docking_port/controller = thing
|
||||
if(istype(controller))
|
||||
// common controller vars
|
||||
controller.set_frequency(frequency)
|
||||
controller.id_tag = AIRLOCK_MARKER_TAG_MASTER
|
||||
controller.tag_airpump = AIRLOCK_MARKER_TAG_AIRPUMP_CHAMBER
|
||||
controller.tag_chamber_sensor = AIRLOCK_MARKER_TAG_SENSOR_CHAMBER
|
||||
controller.tag_exterior_sensor = AIRLOCK_MARKER_TAG_SENSOR_EXTERIOR
|
||||
controller.tag_exterior_door = AIRLOCK_MARKER_TAG_DOOR_EXTERIOR
|
||||
controller.tag_interior_door = AIRLOCK_MARKER_TAG_DOOR_INTERIOR
|
||||
controller.cycle_to_external_air = cycle_to_external_air
|
||||
controller.req_access = req_access
|
||||
controller.req_one_access = req_one_access
|
||||
// controller subtype specific vars
|
||||
controller.airlock_program = new /datum/computer/file/embedded_program/airlock/docking(controller)
|
||||
controller.docking_program = new /datum/computer/file/embedded_program/docking/airlock(controller, controller.airlock_program)
|
||||
controller.program = controller.docking_program
|
||||
if(SSshuttle.shuttles[shuttle_tag])
|
||||
var/datum/shuttle/autodock/shuttle = SSshuttle.shuttles[shuttle_tag]
|
||||
shuttle.dock_target = AIRLOCK_MARKER_TAG_MASTER
|
||||
continue
|
||||
|
||||
// and all the other airlock components
|
||||
|
||||
var/obj/machinery/door/airlock/door = thing
|
||||
if(istype(door))
|
||||
door.set_frequency(frequency)
|
||||
door.req_access = req_access
|
||||
door.req_one_access = req_one_access
|
||||
door.lock()
|
||||
if(is_interior)
|
||||
door.id_tag = AIRLOCK_MARKER_TAG_DOOR_INTERIOR
|
||||
else if(is_exterior)
|
||||
door.id_tag = AIRLOCK_MARKER_TAG_DOOR_EXTERIOR
|
||||
continue
|
||||
|
||||
var/obj/machinery/airlock_sensor/sensor = thing
|
||||
if(istype(sensor))
|
||||
sensor.set_frequency(frequency)
|
||||
sensor.master_tag = AIRLOCK_MARKER_TAG_MASTER
|
||||
if(is_interior)
|
||||
sensor.id_tag = AIRLOCK_MARKER_TAG_SENSOR_INTERIOR
|
||||
else if(is_exterior)
|
||||
sensor.id_tag = AIRLOCK_MARKER_TAG_SENSOR_EXTERIOR
|
||||
else
|
||||
sensor.id_tag = AIRLOCK_MARKER_TAG_SENSOR_CHAMBER
|
||||
continue
|
||||
|
||||
var/obj/machinery/atmospherics/unary/vent_pump/pump = thing
|
||||
if(istype(pump))
|
||||
pump.frequency = frequency
|
||||
unregister_radio(pump, frequency)
|
||||
pump.setup_radio()
|
||||
if(is_exterior)
|
||||
pump.id_tag = AIRLOCK_MARKER_TAG_AIRPUMP_OUT_EXTERNAL
|
||||
else if(is_out)
|
||||
pump.id_tag = AIRLOCK_MARKER_TAG_AIRPUMP_OUT_INTERNAL
|
||||
else
|
||||
pump.id_tag = AIRLOCK_MARKER_TAG_AIRPUMP_CHAMBER
|
||||
continue
|
||||
|
||||
var/obj/machinery/access_button/button = thing
|
||||
if(istype(button))
|
||||
button.set_frequency(frequency)
|
||||
button.master_tag = AIRLOCK_MARKER_TAG_MASTER
|
||||
button.req_access = req_access
|
||||
button.req_one_access = req_one_access
|
||||
if(is_interior)
|
||||
button.command = "cycle_interior"
|
||||
else if(is_exterior)
|
||||
button.command = "cycle_exterior"
|
||||
continue
|
||||
@@ -4,7 +4,8 @@
|
||||
var/in_use = null //tells the controller whether this shuttle needs processing, also attempts to prevent double-use
|
||||
var/last_dock_attempt_time = 0
|
||||
var/current_dock_target
|
||||
//ID of the controller on the shuttle
|
||||
|
||||
/// `id_tag`/`master_tag` of the docking controller of this shuttle.
|
||||
var/dock_target = null
|
||||
|
||||
var/obj/effect/shuttle_landmark/next_location
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
################################
|
||||
# Example Changelog File
|
||||
#
|
||||
# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
|
||||
#
|
||||
# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
|
||||
# When it is, any changes listed below will disappear.
|
||||
#
|
||||
# Valid Prefixes:
|
||||
# bugfix
|
||||
# wip (For works in progress)
|
||||
# tweak
|
||||
# soundadd
|
||||
# sounddel
|
||||
# rscadd (general adding of nice things)
|
||||
# rscdel (general deleting of nice things)
|
||||
# imageadd
|
||||
# imagedel
|
||||
# maptweak
|
||||
# spellcheck (typo fixes)
|
||||
# experiment
|
||||
# balance
|
||||
# admin
|
||||
# backend
|
||||
# security
|
||||
# refactor
|
||||
#################################
|
||||
|
||||
# Your name.
|
||||
author: DreamySkrell
|
||||
|
||||
# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
|
||||
delete-after: True
|
||||
|
||||
# Any changes you've made. See valid prefix list above.
|
||||
# INDENT WITH TWO SPACES. NOT TABS. SPACES.
|
||||
# SCREW THIS UP AND IT WON'T WORK.
|
||||
# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
|
||||
# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
|
||||
changes:
|
||||
- rscadd: "Airlock markers: Adds support for docking and shuttle airlocks."
|
||||
- rscadd: "Airlock markers: Adds support for out pumps."
|
||||
- maptweak: "Adds examples for docking and shuttle airlocks to the airlock guidelines helper map."
|
||||
- maptweak: "Remaps third deck docks to use docking airlock markers."
|
||||
- maptweak: "Remaps Intrepid and Spark to use docking airlock markers."
|
||||
- maptweak: "Changes frequencies of airlocks of antag shuttles to work with new docks."
|
||||
- bugfix: "Fixes bad canary and ert shuttle docking controller tags."
|
||||
- rscadd: "Adds merge conflict marker for use with mapmerge2."
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 21 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.0 KiB |
@@ -592,7 +592,6 @@ AURORA_ESCAPE_POD(4)
|
||||
/obj/effect/shuttle_landmark/distress/blue
|
||||
name = "First Deck Port Hangar Bay 2b"
|
||||
landmark_tag = "nav_distress_blue"
|
||||
docking_controller = "distress_shuttle_dock"
|
||||
special_dock_targets = list("Distress Shuttle" = "distress_shuttle_fore")
|
||||
landmark_flags = SLANDMARK_FLAG_AUTOSET
|
||||
base_turf = /turf/simulated/floor/plating
|
||||
|
||||
+3286
-1010
File diff suppressed because it is too large
Load Diff
+599
-3996
File diff suppressed because it is too large
Load Diff
@@ -27,43 +27,42 @@
|
||||
/obj/effect/shuttle_landmark/horizon/dock/deck_3/starboard_1
|
||||
name = "Third Deck Starboard Dock 1"
|
||||
landmark_tag = "nav_horizon_dock_deck_3_starboard_1"
|
||||
docking_controller = "nuke_shuttle_dock_airlock"
|
||||
docking_controller = "airlock_horizon_dock_deck_3_starboard_1"
|
||||
base_turf = /turf/simulated/floor/reinforced/airless
|
||||
base_area = /area/space
|
||||
|
||||
|
||||
/obj/effect/shuttle_landmark/horizon/dock/deck_3/starboard_2
|
||||
name = "Third Deck Starboard Dock 2"
|
||||
landmark_tag = "nav_horizon_dock_deck_3_starboard_2"
|
||||
docking_controller = "dock_horizon_1_airlock"
|
||||
docking_controller = "airlock_horizon_dock_deck_3_starboard_2"
|
||||
base_turf = /turf/simulated/floor/reinforced/airless
|
||||
base_area = /area/space
|
||||
|
||||
/obj/effect/shuttle_landmark/horizon/dock/deck_3/starboard_3
|
||||
name = "Third Deck Starboard Dock 3"
|
||||
landmark_tag = "nav_horizon_dock_deck_3_starboard_3"
|
||||
docking_controller = "dock_horizon_3_airlock"
|
||||
docking_controller = "airlock_horizon_dock_deck_3_starboard_3"
|
||||
base_turf = /turf/simulated/floor/reinforced/airless
|
||||
base_area = /area/space
|
||||
|
||||
/obj/effect/shuttle_landmark/horizon/dock/deck_3/port_1
|
||||
name = "Third Deck Port Dock 1"
|
||||
landmark_tag = "nav_horizon_dock_deck_3_port_2"
|
||||
docking_controller = "green_dock_aft_airlock"
|
||||
docking_controller = "airlock_horizon_dock_deck_3_port_2"
|
||||
base_turf = /turf/simulated/floor/reinforced/airless
|
||||
base_area = /area/space
|
||||
|
||||
/obj/effect/shuttle_landmark/horizon/dock/deck_3/port_2
|
||||
name = "Third Deck Port Dock 2"
|
||||
landmark_tag = "nav_horizon_dock_deck_3_port_4"
|
||||
docking_controller = "dock_horizon_4_airlock"
|
||||
docking_controller = "airlock_horizon_dock_deck_3_port_4"
|
||||
base_turf = /turf/simulated/floor/reinforced/airless
|
||||
base_area = /area/space
|
||||
|
||||
/obj/effect/shuttle_landmark/horizon/dock/deck_3/port_3
|
||||
name = "Third Deck Port Dock 3"
|
||||
landmark_tag = "nav_horizon_dock_deck_3_port_5"
|
||||
docking_controller = "specops_dock_airlock"
|
||||
docking_controller = "airlock_horizon_dock_deck_3_port_5"
|
||||
base_turf = /turf/simulated/floor/reinforced/airless
|
||||
base_area = /area/space
|
||||
|
||||
|
||||
@@ -109,7 +109,7 @@
|
||||
name = "Intrepid"
|
||||
move_time = 20
|
||||
shuttle_area = list(/area/shuttle/intrepid/crew_compartment, /area/shuttle/intrepid/cargo_bay, /area/shuttle/intrepid/engine_compartment, /area/shuttle/intrepid/atmos_compartment, /area/shuttle/intrepid/cockpit, /area/shuttle/intrepid/quarters)
|
||||
dock_target = "intrepid_shuttle"
|
||||
dock_target = "airlock_shuttle_intrepid"
|
||||
current_location = "nav_hangar_intrepid"
|
||||
landmark_transition = "nav_transit_intrepid"
|
||||
range = 2
|
||||
@@ -157,7 +157,7 @@
|
||||
name = "Spark"
|
||||
move_time = 20
|
||||
shuttle_area = /area/shuttle/mining
|
||||
dock_target = "mining_shuttle_controller"
|
||||
dock_target = "airlock_shuttle_spark"
|
||||
current_location = "nav_hangar_mining"
|
||||
landmark_transition = "nav_transit_mining"
|
||||
range = 1
|
||||
|
||||
@@ -2352,7 +2352,7 @@
|
||||
/obj/machinery/embedded_controller/radio/simple_docking_controller{
|
||||
dir = 8;
|
||||
frequency = 1386;
|
||||
id_tag = "canary";
|
||||
id_tag = "canary_dock";
|
||||
name = "\improper Canary docking port controller";
|
||||
pixel_x = 22;
|
||||
pixel_y = -19;
|
||||
@@ -2812,20 +2812,20 @@
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/aux,
|
||||
/obj/machinery/access_button{
|
||||
command = "cycle_interior";
|
||||
frequency = 1380;
|
||||
master_tag = "mining_shuttle_controller";
|
||||
name = "interior access button";
|
||||
pixel_x = -25;
|
||||
pixel_y = 20;
|
||||
req_one_access = list(31,48,67)
|
||||
pixel_y = 20
|
||||
},
|
||||
/obj/machinery/airlock_sensor/airlock_interior{
|
||||
frequency = 1380;
|
||||
id_tag = "mining_shuttle_interior_sensor";
|
||||
pixel_x = -25;
|
||||
pixel_y = 27
|
||||
},
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
master_tag = "airlock_shuttle_spark";
|
||||
name = "airlock_shuttle_spark";
|
||||
shuttle_tag = "Spark";
|
||||
req_one_access = list(31,48,67)
|
||||
},
|
||||
/obj/effect/map_effect/marker_helper/airlock/interior,
|
||||
/turf/simulated/floor/tiled/dark,
|
||||
/area/shuttle/mining)
|
||||
"bZR" = (
|
||||
@@ -4520,13 +4520,19 @@
|
||||
},
|
||||
/area/engineering/atmos/propulsion)
|
||||
"dir" = (
|
||||
/obj/structure/lattice/catwalk/indoor,
|
||||
/obj/machinery/atmospherics/unary/vent_pump/high_volume{
|
||||
dir = 1;
|
||||
frequency = 1385;
|
||||
id_tag = "intrepid_shuttle_cargo_pump_out_internal";
|
||||
layer = 2.8
|
||||
},
|
||||
/obj/structure/lattice/catwalk/indoor,
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
cycle_to_external_air = 1;
|
||||
master_tag = "airlock_shuttle_intrepid";
|
||||
name = "airlock_shuttle_intrepid";
|
||||
shuttle_tag = "Intrepid";
|
||||
req_one_access = null
|
||||
},
|
||||
/obj/effect/map_effect/marker_helper/airlock/out,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/intrepid/cargo_bay)
|
||||
"diJ" = (
|
||||
@@ -6987,10 +6993,7 @@
|
||||
"eTV" = (
|
||||
/obj/machinery/door/airlock/external{
|
||||
dir = 1;
|
||||
frequency = 1380;
|
||||
icon_state = "door_locked";
|
||||
id_tag = "mining_shuttle_external";
|
||||
req_access = list(13)
|
||||
icon_state = "door_locked"
|
||||
},
|
||||
/obj/structure/cable/green{
|
||||
icon_state = "1-2"
|
||||
@@ -6998,16 +7001,18 @@
|
||||
/obj/effect/landmark/entry_point/aft{
|
||||
name = "aft, airlock"
|
||||
},
|
||||
/obj/machinery/access_button{
|
||||
command = "cycle_exterior";
|
||||
dir = 1;
|
||||
frequency = 1380;
|
||||
master_tag = "mining_shuttle_controller";
|
||||
name = "exterior access button";
|
||||
pixel_x = -21;
|
||||
pixel_y = 11;
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
master_tag = "airlock_shuttle_spark";
|
||||
name = "airlock_shuttle_spark";
|
||||
shuttle_tag = "Spark";
|
||||
req_one_access = list(31,48,67)
|
||||
},
|
||||
/obj/effect/map_effect/marker_helper/airlock/exterior,
|
||||
/obj/machinery/access_button{
|
||||
pixel_x = 28;
|
||||
pixel_y = 12;
|
||||
dir = 1
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/mining)
|
||||
"eVk" = (
|
||||
@@ -7308,6 +7313,9 @@
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/fuel{
|
||||
dir = 8
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/aux{
|
||||
dir = 5
|
||||
},
|
||||
/turf/simulated/wall/shuttle/unique/scc/research{
|
||||
icon_state = "11,17"
|
||||
},
|
||||
@@ -8076,9 +8084,6 @@
|
||||
/obj/effect/floor_decal/industrial/warning{
|
||||
dir = 8
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/red{
|
||||
dir = 5
|
||||
},
|
||||
/turf/simulated/floor/reinforced{
|
||||
blocks_air = 1;
|
||||
density = 1;
|
||||
@@ -8796,24 +8801,16 @@
|
||||
/area/shuttle/mining)
|
||||
"fZQ" = (
|
||||
/obj/machinery/atmospherics/unary/vent_pump/high_volume{
|
||||
frequency = 1385;
|
||||
id_tag = "intrepid_shuttle_cargo_pump_out_external";
|
||||
layer = 2.8
|
||||
},
|
||||
/obj/machinery/access_button{
|
||||
command = "cycle_exterior";
|
||||
dir = 4;
|
||||
frequency = 1385;
|
||||
layer = 3.1;
|
||||
master_tag = "intrepid_shuttle_cargo";
|
||||
name = "exterior access button";
|
||||
pixel_x = -22;
|
||||
pixel_y = 2
|
||||
},
|
||||
/obj/machinery/airlock_sensor/airlock_exterior{
|
||||
dir = 4;
|
||||
frequency = 1385;
|
||||
id_tag = "intrepid_shuttle_cargo_exterior_sensor";
|
||||
pixel_x = -21;
|
||||
pixel_y = 10
|
||||
},
|
||||
@@ -8826,6 +8823,14 @@
|
||||
id = "intrepid_bay_outer";
|
||||
name = "Intrepid Shutter"
|
||||
},
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
cycle_to_external_air = 1;
|
||||
master_tag = "airlock_shuttle_intrepid";
|
||||
name = "airlock_shuttle_intrepid";
|
||||
shuttle_tag = "Intrepid";
|
||||
req_one_access = null
|
||||
},
|
||||
/obj/effect/map_effect/marker_helper/airlock/exterior,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/intrepid/cargo_bay)
|
||||
"fZX" = (
|
||||
@@ -12251,16 +12256,10 @@
|
||||
icon_state = "4-8"
|
||||
},
|
||||
/obj/machinery/access_button{
|
||||
command = "cycle_interior";
|
||||
frequency = 1385;
|
||||
master_tag = "intrepid_shuttle_cargo";
|
||||
name = "interior access button";
|
||||
pixel_x = -5;
|
||||
pixel_y = 20
|
||||
},
|
||||
/obj/machinery/airlock_sensor/airlock_interior{
|
||||
frequency = 1385;
|
||||
id_tag = "intrepid_shuttle_cargo_interior_sensor";
|
||||
pixel_x = -5;
|
||||
pixel_y = 25
|
||||
},
|
||||
@@ -12271,6 +12270,14 @@
|
||||
pixel_x = 7;
|
||||
pixel_y = 25
|
||||
},
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
cycle_to_external_air = 1;
|
||||
master_tag = "airlock_shuttle_intrepid";
|
||||
name = "airlock_shuttle_intrepid";
|
||||
shuttle_tag = "Intrepid";
|
||||
req_one_access = null
|
||||
},
|
||||
/obj/effect/map_effect/marker_helper/airlock/interior,
|
||||
/turf/simulated/floor/tiled/dark/full,
|
||||
/area/shuttle/intrepid/cargo_bay)
|
||||
"iDk" = (
|
||||
@@ -12949,6 +12956,16 @@
|
||||
/obj/machinery/atmospherics/unary/vent_pump/on{
|
||||
dir = 1
|
||||
},
|
||||
/obj/machinery/embedded_controller/radio/simple_docking_controller{
|
||||
dir = 1;
|
||||
frequency = 1380;
|
||||
id_tag = "mining_shuttle_dock";
|
||||
name = "\improper Spark docking port controller";
|
||||
pixel_x = 6;
|
||||
pixel_y = -19;
|
||||
req_one_access = list(31,48,67);
|
||||
tag_door = "mining_shuttle_dock_doors"
|
||||
},
|
||||
/turf/simulated/floor/tiled,
|
||||
/area/hangar/operations)
|
||||
"jbR" = (
|
||||
@@ -14270,10 +14287,16 @@
|
||||
},
|
||||
/obj/machinery/door/airlock/external{
|
||||
dir = 1;
|
||||
frequency = 1385;
|
||||
icon_state = "door_locked";
|
||||
id_tag = "intrepid_shuttle_cargo_out"
|
||||
icon_state = "door_locked"
|
||||
},
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
cycle_to_external_air = 1;
|
||||
master_tag = "airlock_shuttle_intrepid";
|
||||
name = "airlock_shuttle_intrepid";
|
||||
shuttle_tag = "Intrepid";
|
||||
req_one_access = null
|
||||
},
|
||||
/obj/effect/map_effect/marker_helper/airlock/exterior,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/intrepid/cargo_bay)
|
||||
"jYy" = (
|
||||
@@ -14572,13 +14595,19 @@
|
||||
c_tag = "Intrepid - Airlock Aft";
|
||||
dir = 4
|
||||
},
|
||||
/obj/structure/lattice/catwalk/indoor,
|
||||
/obj/machinery/atmospherics/unary/vent_pump/high_volume{
|
||||
dir = 1;
|
||||
frequency = 1385;
|
||||
id_tag = "intrepid_shuttle_cargo_pump_out_internal";
|
||||
layer = 2.8
|
||||
},
|
||||
/obj/structure/lattice/catwalk/indoor,
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
cycle_to_external_air = 1;
|
||||
master_tag = "airlock_shuttle_intrepid";
|
||||
name = "airlock_shuttle_intrepid";
|
||||
shuttle_tag = "Intrepid";
|
||||
req_one_access = null
|
||||
},
|
||||
/obj/effect/map_effect/marker_helper/airlock/out,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/intrepid/cargo_bay)
|
||||
"kkS" = (
|
||||
@@ -14960,8 +14989,6 @@
|
||||
/area/horizon/custodial/disposals)
|
||||
"kxk" = (
|
||||
/obj/machinery/atmospherics/unary/vent_pump/high_volume{
|
||||
frequency = 1385;
|
||||
id_tag = "intrepid_shuttle_cargo_pump_out_external";
|
||||
layer = 2.8
|
||||
},
|
||||
/obj/structure/lattice/catwalk/indoor/grate,
|
||||
@@ -14974,6 +15001,14 @@
|
||||
name = "Intrepid Shutter"
|
||||
},
|
||||
/obj/item/device/radio/intercom/expedition/east,
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
cycle_to_external_air = 1;
|
||||
master_tag = "airlock_shuttle_intrepid";
|
||||
name = "airlock_shuttle_intrepid";
|
||||
shuttle_tag = "Intrepid";
|
||||
req_one_access = null
|
||||
},
|
||||
/obj/effect/map_effect/marker_helper/airlock/exterior,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/intrepid/cargo_bay)
|
||||
"kyq" = (
|
||||
@@ -15695,8 +15730,14 @@
|
||||
/turf/simulated/floor/plating,
|
||||
/area/maintenance/engineering)
|
||||
"kVu" = (
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/aux{
|
||||
dir = 5
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
master_tag = "airlock_shuttle_spark";
|
||||
name = "airlock_shuttle_spark";
|
||||
shuttle_tag = "Spark";
|
||||
req_one_access = list(31,48,67)
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/manifold/hidden/aux{
|
||||
dir = 8
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/mining)
|
||||
@@ -17921,10 +17962,16 @@
|
||||
},
|
||||
/obj/machinery/door/airlock/external{
|
||||
dir = 1;
|
||||
frequency = 1385;
|
||||
icon_state = "door_locked";
|
||||
id_tag = "intrepid_shuttle_cargo_in"
|
||||
icon_state = "door_locked"
|
||||
},
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
cycle_to_external_air = 1;
|
||||
master_tag = "airlock_shuttle_intrepid";
|
||||
name = "airlock_shuttle_intrepid";
|
||||
shuttle_tag = "Intrepid";
|
||||
req_one_access = null
|
||||
},
|
||||
/obj/effect/map_effect/marker_helper/airlock/interior,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/intrepid/cargo_bay)
|
||||
"mxq" = (
|
||||
@@ -19397,8 +19444,6 @@
|
||||
/area/hangar/control)
|
||||
"nvn" = (
|
||||
/obj/machinery/atmospherics/unary/vent_pump/high_volume{
|
||||
frequency = 1385;
|
||||
id_tag = "intrepid_shuttle_cargo_pump_out_external";
|
||||
layer = 2.8
|
||||
},
|
||||
/obj/structure/lattice/catwalk/indoor/grate,
|
||||
@@ -19407,6 +19452,14 @@
|
||||
id = "intrepid_bay_outer";
|
||||
name = "Intrepid Shutter"
|
||||
},
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
cycle_to_external_air = 1;
|
||||
master_tag = "airlock_shuttle_intrepid";
|
||||
name = "airlock_shuttle_intrepid";
|
||||
shuttle_tag = "Intrepid";
|
||||
req_one_access = null
|
||||
},
|
||||
/obj/effect/map_effect/marker_helper/airlock/exterior,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/intrepid/cargo_bay)
|
||||
"nvV" = (
|
||||
@@ -19494,10 +19547,16 @@
|
||||
},
|
||||
/obj/machinery/door/airlock/external{
|
||||
dir = 1;
|
||||
frequency = 1385;
|
||||
icon_state = "door_locked";
|
||||
id_tag = "intrepid_shuttle_cargo_in"
|
||||
icon_state = "door_locked"
|
||||
},
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
cycle_to_external_air = 1;
|
||||
master_tag = "airlock_shuttle_intrepid";
|
||||
name = "airlock_shuttle_intrepid";
|
||||
shuttle_tag = "Intrepid";
|
||||
req_one_access = null
|
||||
},
|
||||
/obj/effect/map_effect/marker_helper/airlock/interior,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/intrepid/cargo_bay)
|
||||
"nyl" = (
|
||||
@@ -19615,9 +19674,6 @@
|
||||
},
|
||||
/area/shuttle/intrepid/engine_compartment)
|
||||
"nBA" = (
|
||||
/obj/machinery/atmospherics/unary/vent_pump/on{
|
||||
name = "Spark scrubber vent"
|
||||
},
|
||||
/obj/effect/floor_decal/industrial/warning{
|
||||
dir = 8
|
||||
},
|
||||
@@ -19744,9 +19800,23 @@
|
||||
/turf/simulated/floor/plating,
|
||||
/area/engineering/drone_fabrication)
|
||||
"nIP" = (
|
||||
/turf/simulated/wall/shuttle/unique/scc/research{
|
||||
icon_state = "11,17"
|
||||
/obj/machinery/access_button{
|
||||
dir = 1;
|
||||
pixel_x = -28;
|
||||
pixel_y = 11
|
||||
},
|
||||
/obj/machinery/door/airlock/external{
|
||||
dir = 1;
|
||||
icon_state = "door_locked"
|
||||
},
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
master_tag = "airlock_shuttle_spark";
|
||||
name = "airlock_shuttle_spark";
|
||||
shuttle_tag = "Spark";
|
||||
req_one_access = list(31,48,67)
|
||||
},
|
||||
/obj/effect/map_effect/marker_helper/airlock/exterior,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/mining)
|
||||
"nJB" = (
|
||||
/turf/simulated/wall/shuttle/unique/scc/research{
|
||||
@@ -22876,12 +22946,17 @@
|
||||
/turf/simulated/floor/reinforced/phoron,
|
||||
/area/engineering/atmos)
|
||||
"pTp" = (
|
||||
/obj/structure/lattice/catwalk/indoor,
|
||||
/obj/machinery/atmospherics/unary/vent_pump/high_volume/aux{
|
||||
frequency = 1385;
|
||||
id_tag = "intrepid_shuttle_cargo_pump";
|
||||
layer = 2.8
|
||||
},
|
||||
/obj/structure/lattice/catwalk/indoor,
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
cycle_to_external_air = 1;
|
||||
master_tag = "airlock_shuttle_intrepid";
|
||||
name = "airlock_shuttle_intrepid";
|
||||
shuttle_tag = "Intrepid";
|
||||
req_one_access = null
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/intrepid/cargo_bay)
|
||||
"pTw" = (
|
||||
@@ -25322,20 +25397,16 @@
|
||||
/turf/simulated/floor/reinforced,
|
||||
/area/rnd/isolation_c)
|
||||
"rBI" = (
|
||||
/obj/effect/floor_decal/corner/brown{
|
||||
dir = 10
|
||||
},
|
||||
/obj/machinery/embedded_controller/radio/simple_docking_controller{
|
||||
/obj/effect/floor_decal/industrial/hatch/yellow,
|
||||
/obj/machinery/door/airlock/external{
|
||||
dir = 1;
|
||||
frequency = 1380;
|
||||
id_tag = "mining_shuttle_dock";
|
||||
name = "\improper Spark docking port controller";
|
||||
pixel_x = 6;
|
||||
pixel_y = -25;
|
||||
req_one_access = list(31,48,67);
|
||||
tag_door = "mining_shuttle_dock_doors"
|
||||
icon_state = "door_locked";
|
||||
id_tag = "mining_shuttle_dock_doors";
|
||||
req_access = list(13)
|
||||
},
|
||||
/turf/simulated/floor/tiled,
|
||||
/obj/structure/plasticflaps/airtight,
|
||||
/turf/simulated/floor/tiled/full,
|
||||
/area/hangar/operations)
|
||||
"rBR" = (
|
||||
/obj/structure/cable/green{
|
||||
@@ -25496,10 +25567,16 @@
|
||||
},
|
||||
/obj/machinery/door/airlock/external{
|
||||
dir = 1;
|
||||
frequency = 1385;
|
||||
icon_state = "door_locked";
|
||||
id_tag = "intrepid_shuttle_cargo_out"
|
||||
icon_state = "door_locked"
|
||||
},
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
cycle_to_external_air = 1;
|
||||
master_tag = "airlock_shuttle_intrepid";
|
||||
name = "airlock_shuttle_intrepid";
|
||||
shuttle_tag = "Intrepid";
|
||||
req_one_access = null
|
||||
},
|
||||
/obj/effect/map_effect/marker_helper/airlock/exterior,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/intrepid/cargo_bay)
|
||||
"rKM" = (
|
||||
@@ -25553,20 +25630,26 @@
|
||||
/turf/simulated/floor/tiled/dark,
|
||||
/area/turret_protected/ai_upload)
|
||||
"rMm" = (
|
||||
/obj/machinery/door/airlock/external{
|
||||
dir = 1;
|
||||
frequency = 1380;
|
||||
icon_state = "door_locked";
|
||||
id_tag = "mining_shuttle_internal";
|
||||
req_access = list(13)
|
||||
},
|
||||
/obj/structure/cable/green{
|
||||
icon_state = "1-2"
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/aux,
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/fuel{
|
||||
dir = 8
|
||||
},
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
master_tag = "airlock_shuttle_spark";
|
||||
name = "airlock_shuttle_spark";
|
||||
shuttle_tag = "Spark";
|
||||
req_one_access = list(31,48,67)
|
||||
},
|
||||
/obj/effect/map_effect/marker_helper/airlock/interior,
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/aux{
|
||||
dir = 10
|
||||
},
|
||||
/obj/machinery/door/airlock/external{
|
||||
dir = 1;
|
||||
icon_state = "door_locked"
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/mining)
|
||||
"rNe" = (
|
||||
@@ -25962,9 +26045,11 @@
|
||||
/obj/structure/bed/handrail{
|
||||
dir = 8
|
||||
},
|
||||
/obj/machinery/atmospherics/unary/vent_pump/high_volume/aux{
|
||||
frequency = 1380;
|
||||
id_tag = "mining_shuttle_pump"
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
master_tag = "airlock_shuttle_spark";
|
||||
name = "airlock_shuttle_spark";
|
||||
shuttle_tag = "Spark";
|
||||
req_one_access = list(31,48,67)
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/mining)
|
||||
@@ -27297,29 +27382,25 @@
|
||||
/obj/structure/bed/handrail{
|
||||
dir = 8
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/manifold/hidden/aux{
|
||||
dir = 4
|
||||
},
|
||||
/obj/machinery/embedded_controller/radio/airlock/docking_port{
|
||||
dir = 8;
|
||||
frequency = 1380;
|
||||
id_tag = "mining_shuttle_controller";
|
||||
pixel_x = 25;
|
||||
pixel_y = 5;
|
||||
req_one_access = list(31,48,67);
|
||||
tag_airpump = "mining_shuttle_pump";
|
||||
tag_chamber_sensor = "mining_shuttle_sensor";
|
||||
tag_exterior_door = "mining_shuttle_external";
|
||||
tag_interior_door = "mining_shuttle_internal";
|
||||
tag_interior_sensor = "mining_shuttle_interior_sensor"
|
||||
pixel_y = 5
|
||||
},
|
||||
/obj/machinery/airlock_sensor{
|
||||
dir = 8;
|
||||
frequency = 1380;
|
||||
id_tag = "mining_shuttle_sensor";
|
||||
pixel_x = 25;
|
||||
pixel_y = -7
|
||||
},
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
master_tag = "airlock_shuttle_spark";
|
||||
name = "airlock_shuttle_spark";
|
||||
shuttle_tag = "Spark";
|
||||
req_one_access = list(31,48,67)
|
||||
},
|
||||
/obj/machinery/atmospherics/unary/vent_pump/high_volume/aux{
|
||||
dir = 8
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/mining)
|
||||
"sYf" = (
|
||||
@@ -30098,7 +30179,9 @@
|
||||
/obj/effect/floor_decal/industrial/warning{
|
||||
dir = 4
|
||||
},
|
||||
/obj/machinery/atmospherics/pipe/manifold/hidden/red,
|
||||
/obj/machinery/atmospherics/pipe/simple/hidden/red{
|
||||
dir = 5
|
||||
},
|
||||
/turf/simulated/floor/reinforced{
|
||||
blocks_air = 1;
|
||||
density = 1;
|
||||
@@ -31216,10 +31299,13 @@
|
||||
/obj/machinery/light/small{
|
||||
dir = 8
|
||||
},
|
||||
/obj/machinery/atmospherics/unary/vent_pump/high_volume/aux{
|
||||
frequency = 1380;
|
||||
id_tag = "mining_shuttle_pump"
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
master_tag = "airlock_shuttle_spark";
|
||||
name = "airlock_shuttle_spark";
|
||||
shuttle_tag = "Spark";
|
||||
req_one_access = list(31,48,67)
|
||||
},
|
||||
/obj/machinery/atmospherics/unary/vent_pump/high_volume/aux,
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/mining)
|
||||
"vFL" = (
|
||||
@@ -33485,20 +33571,23 @@
|
||||
"xjL" = (
|
||||
/obj/machinery/airlock_sensor{
|
||||
dir = 4;
|
||||
frequency = 1385;
|
||||
id_tag = "intrepid_shuttle_cargo_sensor";
|
||||
pixel_x = -24;
|
||||
pixel_y = -6
|
||||
},
|
||||
/obj/structure/bed/handrail{
|
||||
dir = 4
|
||||
},
|
||||
/obj/structure/lattice/catwalk/indoor,
|
||||
/obj/machinery/atmospherics/unary/vent_pump/high_volume/aux{
|
||||
frequency = 1385;
|
||||
id_tag = "intrepid_shuttle_cargo_pump";
|
||||
layer = 2.8
|
||||
},
|
||||
/obj/structure/lattice/catwalk/indoor,
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
cycle_to_external_air = 1;
|
||||
master_tag = "airlock_shuttle_intrepid";
|
||||
name = "airlock_shuttle_intrepid";
|
||||
shuttle_tag = "Intrepid";
|
||||
req_one_access = null
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/intrepid/cargo_bay)
|
||||
"xjQ" = (
|
||||
@@ -33849,12 +33938,17 @@
|
||||
/area/operations/storage)
|
||||
"xqo" = (
|
||||
/obj/machinery/atmospherics/unary/vent_pump/high_volume/aux{
|
||||
frequency = 1385;
|
||||
id_tag = "intrepid_shuttle_cargo_pump";
|
||||
layer = 2.8
|
||||
},
|
||||
/obj/structure/lattice/catwalk/indoor,
|
||||
/obj/item/device/radio/intercom/expedition/east,
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
cycle_to_external_air = 1;
|
||||
master_tag = "airlock_shuttle_intrepid";
|
||||
name = "airlock_shuttle_intrepid";
|
||||
shuttle_tag = "Intrepid";
|
||||
req_one_access = null
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/intrepid/cargo_bay)
|
||||
"xqv" = (
|
||||
@@ -35170,31 +35264,27 @@
|
||||
/turf/simulated/floor/tiled/dark,
|
||||
/area/operations/loading)
|
||||
"yib" = (
|
||||
/obj/machinery/embedded_controller/radio/airlock/docking_port_multi{
|
||||
cycle_to_external_air = 1;
|
||||
dir = 8;
|
||||
frequency = 1385;
|
||||
id_tag = "intrepid_shuttle_cargo";
|
||||
layer = 3.3;
|
||||
master_tag = "intrepid_shuttle";
|
||||
pixel_x = 24;
|
||||
tag_airpump = "intrepid_shuttle_cargo_pump";
|
||||
tag_chamber_sensor = "intrepid_shuttle_cargo_sensor";
|
||||
tag_exterior_door = "intrepid_shuttle_cargo_out";
|
||||
tag_exterior_sensor = "intrepid_shuttle_cargo_exterior_sensor";
|
||||
tag_interior_door = "intrepid_shuttle_cargo_in";
|
||||
tag_interior_sensor = "intrepid_shuttle_cargo_interior_sensor"
|
||||
},
|
||||
/obj/machinery/light/small/red{
|
||||
dir = 4
|
||||
},
|
||||
/obj/structure/lattice/catwalk/indoor,
|
||||
/obj/machinery/atmospherics/unary/vent_pump/high_volume{
|
||||
dir = 1;
|
||||
frequency = 1385;
|
||||
id_tag = "intrepid_shuttle_cargo_pump_out_internal";
|
||||
layer = 2.8
|
||||
},
|
||||
/obj/structure/lattice/catwalk/indoor,
|
||||
/obj/effect/map_effect/marker/airlock/shuttle{
|
||||
cycle_to_external_air = 1;
|
||||
master_tag = "airlock_shuttle_intrepid";
|
||||
name = "airlock_shuttle_intrepid";
|
||||
shuttle_tag = "Intrepid";
|
||||
req_one_access = null
|
||||
},
|
||||
/obj/effect/map_effect/marker_helper/airlock/out,
|
||||
/obj/machinery/embedded_controller/radio/airlock/docking_port{
|
||||
dir = 8;
|
||||
pixel_y = 6;
|
||||
pixel_x = 20
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/intrepid/cargo_bay)
|
||||
"yiT" = (
|
||||
@@ -50822,8 +50912,8 @@ tPr
|
||||
dNk
|
||||
jyX
|
||||
rcA
|
||||
oXD
|
||||
rBI
|
||||
ukS
|
||||
nIP
|
||||
vFD
|
||||
kVu
|
||||
|
||||
+1198
-1132
File diff suppressed because it is too large
Load Diff
@@ -4660,7 +4660,7 @@
|
||||
"akr" = (
|
||||
/obj/machinery/door/airlock/external{
|
||||
dir = 1;
|
||||
frequency = 1332;
|
||||
frequency = 1380;
|
||||
icon_state = "door_locked";
|
||||
id_tag = "pirate_hideout_door";
|
||||
locked = 1;
|
||||
@@ -21411,7 +21411,7 @@
|
||||
req_access = list(150)
|
||||
},
|
||||
/obj/machinery/embedded_controller/radio/simple_docking_controller{
|
||||
frequency = 1337;
|
||||
frequency = 1380;
|
||||
id_tag = "burglar_shuttle";
|
||||
name = "airlock controller";
|
||||
pixel_x = 23;
|
||||
@@ -24362,17 +24362,17 @@
|
||||
},
|
||||
/obj/machinery/door/airlock/hatch{
|
||||
dir = 4;
|
||||
frequency = 1337;
|
||||
frequency = 1380;
|
||||
id_tag = "burglar_shuttle_hatch";
|
||||
locked = 1;
|
||||
req_access = list(150)
|
||||
},
|
||||
/obj/machinery/button/remote/blast_door{
|
||||
dir = 1;
|
||||
dir = 2;
|
||||
id = "burglar_blast";
|
||||
layer = 3;
|
||||
name = "blast door";
|
||||
pixel_y = -21;
|
||||
pixel_y = -19;
|
||||
req_access = list(150)
|
||||
},
|
||||
/turf/simulated/floor/shuttle/black,
|
||||
@@ -25019,15 +25019,15 @@
|
||||
/area/antag/burglar)
|
||||
"bjs" = (
|
||||
/obj/structure/shuttle/engine/propulsion/burst/left,
|
||||
/turf/unsimulated/floor/plating,
|
||||
/turf/simulated/wall/shuttle/space_ship/mercenary,
|
||||
/area/shuttle/burglar)
|
||||
"bjt" = (
|
||||
/obj/structure/shuttle/engine/propulsion/burst,
|
||||
/turf/unsimulated/floor/plating,
|
||||
/turf/simulated/wall/shuttle/space_ship/mercenary,
|
||||
/area/shuttle/burglar)
|
||||
"bju" = (
|
||||
/obj/structure/shuttle/engine/propulsion/burst/right,
|
||||
/turf/unsimulated/floor/plating,
|
||||
/turf/simulated/wall/shuttle/space_ship/mercenary,
|
||||
/area/shuttle/burglar)
|
||||
"bjw" = (
|
||||
/obj/machinery/light/small/emergency,
|
||||
@@ -26640,7 +26640,7 @@
|
||||
/area/template_noop)
|
||||
"boa" = (
|
||||
/obj/machinery/embedded_controller/radio/simple_docking_controller{
|
||||
frequency = 1337;
|
||||
frequency = 1380;
|
||||
id_tag = "merc_base";
|
||||
pixel_x = -25;
|
||||
pixel_y = -5
|
||||
@@ -27238,7 +27238,7 @@
|
||||
"boT" = (
|
||||
/obj/machinery/door/airlock/external{
|
||||
dir = 4;
|
||||
frequency = 1337;
|
||||
frequency = 1380;
|
||||
id_tag = "merc_shuttle_inner";
|
||||
name = "Ship External Access";
|
||||
req_access = list(0)
|
||||
@@ -27247,8 +27247,9 @@
|
||||
/obj/machinery/button/remote/blast_door{
|
||||
id = "smindicate2";
|
||||
name = "internal blast door";
|
||||
pixel_y = 23;
|
||||
req_access = list(150)
|
||||
pixel_y = 26;
|
||||
req_access = list(150);
|
||||
dir = 1
|
||||
},
|
||||
/obj/machinery/door/blast/regular{
|
||||
density = 0;
|
||||
@@ -27262,7 +27263,7 @@
|
||||
"boU" = (
|
||||
/obj/machinery/atmospherics/unary/vent_pump/high_volume{
|
||||
dir = 4;
|
||||
frequency = 1337;
|
||||
frequency = 1380;
|
||||
id_tag = "merc_shuttle_pump"
|
||||
},
|
||||
/obj/effect/floor_decal/industrial/warning{
|
||||
@@ -27275,7 +27276,7 @@
|
||||
dir = 1
|
||||
},
|
||||
/obj/machinery/airlock_sensor{
|
||||
frequency = 1337;
|
||||
frequency = 1380;
|
||||
id_tag = "merc_shuttle_sensor";
|
||||
pixel_x = 8;
|
||||
pixel_y = 25
|
||||
@@ -27286,11 +27287,11 @@
|
||||
"boW" = (
|
||||
/obj/machinery/atmospherics/unary/vent_pump/high_volume{
|
||||
dir = 8;
|
||||
frequency = 1337;
|
||||
frequency = 1380;
|
||||
id_tag = "merc_shuttle_pump"
|
||||
},
|
||||
/obj/machinery/embedded_controller/radio/airlock/docking_port{
|
||||
frequency = 1337;
|
||||
frequency = 1380;
|
||||
id_tag = "merc_shuttle";
|
||||
pixel_x = -8;
|
||||
pixel_y = 25;
|
||||
@@ -27304,7 +27305,7 @@
|
||||
"boX" = (
|
||||
/obj/machinery/door/airlock/external{
|
||||
dir = 4;
|
||||
frequency = 1337;
|
||||
frequency = 1380;
|
||||
id_tag = "merc_shuttle_outer";
|
||||
name = "Ship External Access";
|
||||
req_access = list(150)
|
||||
@@ -27320,15 +27321,16 @@
|
||||
/obj/machinery/button/remote/blast_door{
|
||||
id = "smindicate";
|
||||
name = "external blast door";
|
||||
pixel_y = 23;
|
||||
req_access = list(150)
|
||||
pixel_y = 26;
|
||||
req_access = list(150);
|
||||
dir = 1
|
||||
},
|
||||
/turf/simulated/floor/tiled/dark,
|
||||
/area/shuttle/mercenary)
|
||||
"boY" = (
|
||||
/obj/machinery/door/airlock/external{
|
||||
dir = 4;
|
||||
frequency = 1337;
|
||||
frequency = 1380;
|
||||
id_tag = "merc_base_hatch";
|
||||
req_access = list(150)
|
||||
},
|
||||
@@ -27584,7 +27586,7 @@
|
||||
"bpE" = (
|
||||
/obj/machinery/door/airlock/external{
|
||||
dir = 4;
|
||||
frequency = 1337;
|
||||
frequency = 1380;
|
||||
id_tag = "merc_shuttle_inner";
|
||||
name = "Ship External Access";
|
||||
req_access = list(0)
|
||||
@@ -27592,7 +27594,7 @@
|
||||
/obj/effect/floor_decal/industrial/hatch/yellow,
|
||||
/obj/machinery/access_button{
|
||||
command = "cycle_interior";
|
||||
frequency = 1337;
|
||||
frequency = 1380;
|
||||
master_tag = "merc_shuttle";
|
||||
name = "interior access button";
|
||||
pixel_x = -1;
|
||||
@@ -27616,7 +27618,7 @@
|
||||
"bpG" = (
|
||||
/obj/machinery/atmospherics/unary/vent_pump/high_volume{
|
||||
dir = 8;
|
||||
frequency = 1337;
|
||||
frequency = 1380;
|
||||
id_tag = "merc_shuttle_pump"
|
||||
},
|
||||
/obj/effect/floor_decal/industrial/warning{
|
||||
@@ -27627,7 +27629,7 @@
|
||||
"bpH" = (
|
||||
/obj/machinery/door/airlock/external{
|
||||
dir = 4;
|
||||
frequency = 1337;
|
||||
frequency = 1380;
|
||||
id_tag = "merc_shuttle_outer";
|
||||
name = "Ship External Access";
|
||||
req_access = list(150)
|
||||
@@ -27642,7 +27644,7 @@
|
||||
/obj/effect/floor_decal/industrial/hatch/yellow,
|
||||
/obj/machinery/access_button{
|
||||
command = "cycle_exterior";
|
||||
frequency = 1337;
|
||||
frequency = 1380;
|
||||
master_tag = "merc_shuttle";
|
||||
name = "exterior access button";
|
||||
pixel_x = 1;
|
||||
@@ -27654,7 +27656,7 @@
|
||||
"bpI" = (
|
||||
/obj/machinery/door/airlock/external{
|
||||
dir = 4;
|
||||
frequency = 1337;
|
||||
frequency = 1380;
|
||||
id_tag = "merc_base_hatch";
|
||||
req_access = list(150)
|
||||
},
|
||||
@@ -28651,7 +28653,7 @@
|
||||
reversed = 1
|
||||
},
|
||||
/obj/machinery/embedded_controller/radio/simple_docking_controller{
|
||||
frequency = 1332;
|
||||
frequency = 1380;
|
||||
id_tag = "pirate_hideout";
|
||||
layer = 3.5;
|
||||
pixel_x = 28;
|
||||
@@ -29049,7 +29051,7 @@
|
||||
"bsD" = (
|
||||
/obj/machinery/door/airlock/external{
|
||||
dir = 1;
|
||||
frequency = 1332;
|
||||
frequency = 1380;
|
||||
icon_state = "door_locked";
|
||||
id_tag = "pirate_hideout_door";
|
||||
locked = 1;
|
||||
@@ -29064,7 +29066,7 @@
|
||||
},
|
||||
/obj/machinery/door/airlock/external{
|
||||
dir = 1;
|
||||
frequency = 1332;
|
||||
frequency = 1380;
|
||||
icon_state = "door_locked";
|
||||
id_tag = "pirate_hideout_door";
|
||||
locked = 1;
|
||||
@@ -30325,18 +30327,19 @@
|
||||
"bvn" = (
|
||||
/obj/machinery/door/airlock/hatch{
|
||||
dir = 1;
|
||||
frequency = 1332;
|
||||
frequency = 1380;
|
||||
id_tag = "raider_northeast_lock";
|
||||
locked = 1;
|
||||
req_access = list(150)
|
||||
},
|
||||
/obj/machinery/access_button{
|
||||
command = "cycle_exterior";
|
||||
frequency = 1332;
|
||||
frequency = 1380;
|
||||
master_tag = "raider_east_control";
|
||||
pixel_x = -26;
|
||||
pixel_y = 12;
|
||||
req_access = list(150)
|
||||
req_access = list(150);
|
||||
dir = 1
|
||||
},
|
||||
/obj/machinery/door/blast/regular/open{
|
||||
dir = 2;
|
||||
@@ -30344,11 +30347,12 @@
|
||||
name = "blast door"
|
||||
},
|
||||
/obj/machinery/button/remote/blast_door{
|
||||
dir = 8;
|
||||
dir = 2;
|
||||
id = "raiderblastdoor";
|
||||
name = "blast door";
|
||||
pixel_x = 25;
|
||||
req_access = list(150)
|
||||
req_access = list(150);
|
||||
pixel_y = 13
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
/area/shuttle/skipjack)
|
||||
@@ -30429,9 +30433,10 @@
|
||||
/area/shuttle/skipjack)
|
||||
"bwc" = (
|
||||
/obj/machinery/airlock_sensor{
|
||||
frequency = 1332;
|
||||
frequency = 1380;
|
||||
id_tag = "raider_east_sensor";
|
||||
pixel_x = -25
|
||||
pixel_x = -25;
|
||||
dir = 4
|
||||
},
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/obj/machinery/light/small{
|
||||
@@ -30445,7 +30450,7 @@
|
||||
"bwd" = (
|
||||
/obj/machinery/atmospherics/unary/vent_pump/high_volume{
|
||||
dir = 0;
|
||||
frequency = 1332;
|
||||
frequency = 1380;
|
||||
id_tag = "raider_east_vent"
|
||||
},
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
@@ -30669,18 +30674,19 @@
|
||||
"bxd" = (
|
||||
/obj/machinery/atmospherics/unary/vent_pump/high_volume{
|
||||
dir = 4;
|
||||
frequency = 1332;
|
||||
frequency = 1380;
|
||||
id_tag = "raider_east_vent"
|
||||
},
|
||||
/obj/effect/decal/cleanable/dirt,
|
||||
/obj/machinery/embedded_controller/radio/airlock/docking_port{
|
||||
frequency = 1332;
|
||||
frequency = 1380;
|
||||
id_tag = "raider_east_control";
|
||||
pixel_x = -24;
|
||||
tag_airpump = "raider_east_vent";
|
||||
tag_chamber_sensor = "raider_east_sensor";
|
||||
tag_exterior_door = "raider_northeast_lock";
|
||||
tag_interior_door = "raider_southeast_lock"
|
||||
tag_interior_door = "raider_southeast_lock";
|
||||
dir = 4
|
||||
},
|
||||
/obj/vehicle/bike{
|
||||
dir = 4
|
||||
@@ -30696,7 +30702,7 @@
|
||||
"bxf" = (
|
||||
/obj/machinery/atmospherics/unary/vent_pump/high_volume{
|
||||
dir = 8;
|
||||
frequency = 1332;
|
||||
frequency = 1380;
|
||||
id_tag = "raider_east_vent"
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
@@ -30869,7 +30875,7 @@
|
||||
"bxU" = (
|
||||
/obj/machinery/door/airlock/hatch{
|
||||
dir = 1;
|
||||
frequency = 1332;
|
||||
frequency = 1380;
|
||||
id_tag = "raider_southeast_lock";
|
||||
locked = 1;
|
||||
req_access = list(150)
|
||||
@@ -31011,10 +31017,10 @@
|
||||
/obj/structure/lattice/catwalk/indoor/grate,
|
||||
/obj/machinery/access_button{
|
||||
command = "cycle_interior";
|
||||
frequency = 1332;
|
||||
frequency = 1380;
|
||||
master_tag = "raider_east_control";
|
||||
pixel_x = 22;
|
||||
pixel_y = 24;
|
||||
pixel_x = 26;
|
||||
pixel_y = 32;
|
||||
req_access = list(150)
|
||||
},
|
||||
/turf/simulated/floor/plating,
|
||||
|
||||
Reference in New Issue
Block a user