Two new pipe types (Redux) (#16141)

* Added two new pipes: Fuel and Auxiliary Pipes

* Added a `cycle_to_external_air` tag to airlock controllers, which allows exterior air to be cycled out of an air lock through separate vents.

* Retrofitted the Spark and Intrepid with the new pipes, and the externally cycled air.

* CL

* Allow pressure tanks to attach to all pipes.

* RM stray pixels

* Update code/game/machinery/pipe/construction.dm

Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com>

* rm unused states

* Fix misalignment

* Add remaining pipes to RFD, and correct a few omissions

* Fix airlocks not changing their state properly, and ensure that docking -always- forces airlocks to externally cycle.

* Remove externally cycled airlock from the Spark

* CL

* Add enough pressure to the Intrepid auxiliary line to ensure both airlocks can be pressurized consistently.

---------

Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com>
This commit is contained in:
Cody Brittain
2023-04-10 17:36:08 +00:00
committed by GitHub
co-authored by SleepyGemmy
parent e9120a1587
commit 958a3494e5
27 changed files with 1424 additions and 325 deletions
+36 -2
View File
@@ -592,6 +592,8 @@
#define STANDARD_PIPE "Standard Pipes"
#define SUPPLY_PIPE "Supply Pipes"
#define SCRUBBER_PIPE "Scrubber Pipes"
#define FUEL_PIPE "Fuel Pipes"
#define AUX_PIPE "Auxiliary Pipes"
#define DEVICES "Devices"
/obj/item/rfd/piping
@@ -637,12 +639,32 @@
"Downward Pipe" = PIPE_SCRUBBERS_DOWN
)
var/list/fuel_pipes = list(
"Pipe" = PIPE_FUEL_STRAIGHT,
"Bent Pipe" = PIPE_FUEL_BENT,
"Manifold" = PIPE_FUEL_MANIFOLD,
"4-Way Manifold" = PIPE_FUEL_MANIFOLD4W,
"Upward Pipe" = PIPE_FUEL_UP,
"Downward Pipe" = PIPE_FUEL_DOWN
)
var/list/aux_pipes = list(
"Pipe" = PIPE_AUX_STRAIGHT,
"Bent Pipe" = PIPE_AUX_BENT,
"Manifold" = PIPE_AUX_MANIFOLD,
"4-Way Manifold" = PIPE_AUX_MANIFOLD4W,
"Upward Pipe" = PIPE_AUX_UP,
"Downward Pipe" = PIPE_AUX_DOWN
)
var/list/devices = list(
"Universal Pipe Adapter" = PIPE_UNIVERSAL,
"Connector" = PIPE_CONNECTOR,
"Unary Vent" = PIPE_UVENT,
"Auxiliary Unary Vent" = PIPE_AUX_UVENT,
"Scrubber" = PIPE_SCRUBBER,
"Gas Pump" = PIPE_PUMP,
"Fuel Gas Pump" = PIPE_PUMP_FUEL,
"Pressure Regulator" = PIPE_PASSIVE_GATE,
"High Power Gas Pump" = PIPE_VOLUME_PUMP,
"Gas Filter" = PIPE_GAS_FILTER_M,
@@ -692,7 +714,7 @@
// Special case handling for bent pipes. They require a non-cardinal direction
var/pipe_dir = NORTH
if(selected_pipe in list(PIPE_SIMPLE_BENT, PIPE_SUPPLY_BENT, PIPE_SCRUBBERS_BENT))
if(selected_pipe in list(PIPE_SIMPLE_BENT, PIPE_SUPPLY_BENT, PIPE_SCRUBBERS_BENT, PIPE_FUEL_BENT, PIPE_AUX_BENT))
pipe_dir = NORTHEAST
new /obj/item/pipe(T, selected_pipe, pipe_dir)
@@ -710,6 +732,10 @@
pipe_selection = supply_pipes
if(SCRUBBER_PIPE)
pipe_selection = scrubber_pipes
if(FUEL_PIPE)
pipe_selection = fuel_pipes
if(AUX_PIPE)
pipe_selection = aux_pipes
if(DEVICES)
pipe_selection = devices
pipe_examine = input(user, "Choose the pipe you want to deploy.", "Pipe Selection") in pipe_selection
@@ -727,6 +753,12 @@
if(SCRUBBER_PIPE)
pipe_examine = "Pipe"
selected_pipe = PIPE_SCRUBBERS_STRAIGHT
if(FUEL_PIPE)
pipe_examine = "Pipe"
selected_pipe = PIPE_FUEL_STRAIGHT
if(AUX_PIPE)
pipe_examine = "Pipe"
selected_pipe = PIPE_AUX_STRAIGHT
if(DEVICES)
pipe_examine = "Universal Pipe Adapter"
selected_pipe = PIPE_UNIVERSAL
@@ -747,5 +779,7 @@
#undef STANDARD_PIPE
#undef SUPPLY_PIPE
#undef SCRUBBER_PIPE
#undef FUEL_PIPE
#undef AUX_PIPE
#undef DEVICES
#undef MATERIALIZATION_FAIL_MESSAGE
#undef MATERIALIZATION_FAIL_MESSAGE