Commit Graph

22 Commits

Author SHA1 Message Date
CHOMPStation2StaffMirrorBot
b4b4f1c9ad [MIRROR] Airlock Controller Spawn Removal (#10839)
Co-authored-by: Will <7099514+Willburd@users.noreply.github.com>
2025-05-07 08:49:55 +02:00
CHOMPStation2StaffMirrorBot
67fe8c3c8e [MIRROR] Airlock Construction (#9580)
Co-authored-by: Heroman3003 <31296024+Heroman3003@users.noreply.github.com>
2024-12-05 16:04:35 +01:00
Chompstation Bot
fb343cec6c [MIRROR] Linter diagnostics + bans non-var relative pathing 2021-06-22 22:17:02 +00:00
Aronai Sieyes
f4c8a7e2f5 Replace/Add lots of sounds from VerySoft 2020-05-05 22:43:31 -04:00
Leshana
c837078105 Replaced "area" shuttles with "landmark" shuttles.
Largely ported from the work done at Baystation in https://github.com/Baystation12/Baystation12/pull/17460 and later commits.

 - Shuttles no longer require a separate area for each location they jump to.
   Instead destinations are indicated by landmark objects, which are not necessarily exclusive to that shuttle.
   This means that more than one shuttle could use the same docking port (not at the same time of course).
 - Enhanced shuttle control computers to use nanoui if they didn't.
 - Organizes shuttle datum code a bit better so there is less re-inventing the wheel in subtypes.
 - Allows the possibility of shuttles (or destinations) that start on late-loaded maps.
 - Deprecate the "extra" shuttle areas that are no longer needed and update shuttle areas in unit tests

This all required a bit of infrastructure improvements.

 - ChangeArea proc, for changing the area of a turf.
 - Fixed lighting overlays actually being able to be destroyed.
 - Added a few utility macros and procs.
 - Added "turf translation" procs which are like move_contents_to but more flexible.
2020-03-05 10:29:08 -05:00
Leshana
0c941d44aa POLARIS: Port cycle_to_external_air mode for airlock controllers.
* Adds a flag to controllers that instructs the airlock program to always purge between IN/OUT and also to pump air to "outside" instead of tanks when purging to go OUT.
* Tweak the way the airlock fudges target pressures so it more reliably operates when trying to pump down to vacuum.
* Adds an exterior airlock sensor that reads the air pressure in *front* of it, so it can be mounted on a shuttle but measure air outside the shuttle.
2018-02-04 18:53:48 -05:00
Hubblenaut
d00fc51b17 Cycling Airlocks Tweak
When cycling into a direction the airlock has already reached the target
pressure for, doing so will only toggle the doors.
2018-02-04 18:53:01 -05:00
mwerezak
c46f32e8d7 Airlock controller fixes
Fixes airlocks opening their doors before the pumps have turned off.
Fixes airlocks getting confused if you mash buttons in quick succession.
2015-07-04 23:49:54 -04:00
PsiOmega
327e81958b Shuttle mech sensors can now be slaved to airlock docking controllers. 2014-09-17 07:46:39 +02:00
mwerezak
2de7df27e0 Fixes mech sensors preventing shuttle undocking
Airlock controllers now use a signal_mech_sensor() proc to send commands
to mech sensors. Docking controllers don't appear to store the mech
sensor tag anywhere so the mech sensor code was left commented out.
2014-09-15 23:56:13 -04:00
mwerezak
3c46e4c35b Fixes airlocks aborting when cycled
Fixes airlocks aborting because the doors took too long to close.
2014-08-16 14:39:37 -04:00
mwerezak
9d7c5dc197 Gives filters proper names, updates airlocks to use filters
Docking ports still don't use filters though, as it would mess with the
docking ports that are also airlocks. Docking is infrequent though so it
should be fine.
2014-08-15 20:27:00 -04:00
PsiOmega
0036bea6b6 A sensor which registers mechs and trains attempting to pass by and, if necessary, blocks their movement.
If enabled, detects mechs/trains and blocks their movement if they are coming from any of the directions set by dir. Can currently only be enabled/disabled by radio command and airlocks are updated to utilize this.

The current setup allows mechs to move through airlocks during normal cycles, which for example lets Odysseus out to save lives.
Once a shuttle docks however, the sensors are enabled to prevent boarding.

If blocked, players receive a simple message stating that their command has been overridden.
2014-07-26 20:07:18 +02:00
mwerezak
7361c7da45 Loosens the undocking requirements for airlocks 2014-07-17 22:03:05 -04:00
mwerezak
21b2742086 Adds default values for some docking tags
Simplifies the mapping of docking controllers by cutting down on the
number of tags needed to be entered.
2014-07-17 20:01:20 -04:00
mwerezak
bdafc1136f Fixes airlocks being stuck if they run out of air 2014-06-25 00:20:37 -04:00
Mike
129ee988b4 Adds a docking controller to the research shuttle
Squashes 3 commits:

Adds a controller for single door based docks

Adds a docking controller to the research shuttle

Adds override control to airlock dock nano-ui
2014-06-09 23:29:03 -04:00
mwerezak
ad7a1c5d59 Adds docking controllers
Squashed 10 commits:

Adds simple docking controllers

Adds docking_controllers.dm

Moves docking handshake code into its own type
Keeps docking code separate from the code for messing with airlocks and
doors.

Improves handling of invalid states

Adds docking controller to research shuttle dock

Also adds the start of a nano-ui template.

Resetting the dock controller resets the override

Adds debug verbs

Adds support for overriding docking checks

Less confusing name for the docking program
2014-06-09 23:14:53 -04:00
mwerezak
32ba5903b4 Generalizes embedded program 2014-06-09 23:05:58 -04:00
mwerezak
80590ea58b Initial commit 2014-06-09 23:05:17 -04:00
Loganbacca
347f4068c6 Various fixes
- removed double windows
- added pipe dispensers
- removed one rogue wire
- rearranged the atmos monitoring room based on forum feedback
- changed radiation collector blast doors to same switch network
- tweaked poddoor New() function so they render over glass if closed at round start
- setup engine room pipe network to neutralize the SM at round start - it now cools the nitrogen in the chamber
- added extra functionality to advanced airlock "purge" and "secure" buttons
- made a few tweaks to airlock/door controller NanoUI
2014-02-18 00:24:20 +13:00
Loganbacca
d35fbfd562 Airlock controller rewrite
- /datum/computer/file/embedded_program moved from embedded_controller_base.dm to code/game/machinery/embedded_controller/airlock_program.dm
- embedded_controller_base.dm cleaned up and identical parts of the controller subtypes were moved here
- embedded_controller subtypes moved to code/game/machinery/embedded_controller/airlock_controllers.dm
- Added nanoUI templates for airlock controllers
- Added a couple of classes to nano/css/shared.css for colouring buttons
- Minor map update to maintain airlock compatibility and fix a broken airlock near virology
2014-02-13 14:23:02 +13:00