diff --git a/code/ATMOSPHERICS/_atmospherics_helpers.dm b/code/ATMOSPHERICS/_atmospherics_helpers.dm
index a724fa11f0..76b520a45f 100644
--- a/code/ATMOSPHERICS/_atmospherics_helpers.dm
+++ b/code/ATMOSPHERICS/_atmospherics_helpers.dm
@@ -468,6 +468,10 @@
return "REGULAR"
if(PIPING_LAYER_SCRUBBER)
return "SCRUBBER"
+ if(PIPING_LAYER_FUEL)
+ return "FUEL"
+ if(PIPING_LAYER_AUX)
+ return "AUX"
/proc/atmos_pipe_flags_str(pipe_flags)
var/list/dat = list()
@@ -489,6 +493,10 @@
dat += "SUPPLY"
if(connect_types & CONNECT_TYPE_SCRUBBER)
dat += "SCRUBBER"
+ if(connect_types & CONNECT_TYPE_FUEL)
+ dat += "FUEL"
+ if(connect_types & CONNECT_TYPE_AUX)
+ dat += "AUX"
if(connect_types & CONNECT_TYPE_HE)
dat += "HE"
return dat.Join("|")
diff --git a/code/ATMOSPHERICS/atmospherics.dm b/code/ATMOSPHERICS/atmospherics.dm
index acb1da7b02..6559f28f26 100644
--- a/code/ATMOSPHERICS/atmospherics.dm
+++ b/code/ATMOSPHERICS/atmospherics.dm
@@ -209,8 +209,18 @@ Pipelines + Other Objects -> Pipe network
connect_types = CONNECT_TYPE_SUPPLY
layer = PIPES_SUPPLY_LAYER
icon_connect_type = "-supply"
+ if(PIPING_LAYER_FUEL)
+ icon_state = "[icon_state]-fuel"
+ connect_types = CONNECT_TYPE_FUEL
+ layer = PIPES_FUEL_LAYER
+ icon_connect_type = "-fuel"
+ if(PIPING_LAYER_AUX)
+ icon_state = "[icon_state]-aux"
+ connect_types = CONNECT_TYPE_AUX
+ layer = PIPES_AUX_LAYER
+ icon_connect_type = "-aux"
if(pipe_flags & PIPING_ALL_LAYER)
- connect_types = CONNECT_TYPE_REGULAR|CONNECT_TYPE_SUPPLY|CONNECT_TYPE_SCRUBBER
+ connect_types = CONNECT_TYPE_REGULAR|CONNECT_TYPE_SUPPLY|CONNECT_TYPE_SCRUBBER|CONNECT_TYPE_FUEL|CONNECT_TYPE_AUX
// Or if we were to do it the TG way...
// pixel_x = PIPE_PIXEL_OFFSET_X(piping_layer)
// pixel_y = PIPE_PIXEL_OFFSET_Y(piping_layer)
diff --git a/code/ATMOSPHERICS/components/binary_devices/pump.dm b/code/ATMOSPHERICS/components/binary_devices/pump.dm
index e241cc944b..e2483fdbef 100644
--- a/code/ATMOSPHERICS/components/binary_devices/pump.dm
+++ b/code/ATMOSPHERICS/components/binary_devices/pump.dm
@@ -18,6 +18,7 @@ Thus, the two variables affect pump operation are set in New():
construction_type = /obj/item/pipe/directional
pipe_state = "pump"
level = 1
+ var/base_icon = "pump"
name = "gas pump"
desc = "A pump that moves gas from one place to another."
@@ -49,12 +50,31 @@ Thus, the two variables affect pump operation are set in New():
icon_state = "map_on"
use_power = USE_POWER_IDLE
+/obj/machinery/atmospherics/binary/pump/fuel
+ icon_state = "map_off-fuel"
+ base_icon = "pump-fuel"
+ icon_connect_type = "-fuel"
+ connect_types = CONNECT_TYPE_FUEL
+
+/obj/machinery/atmospherics/binary/pump/fuel/on
+ icon_state = "map_on-fuel"
+ use_power = USE_POWER_IDLE
+
+/obj/machinery/atmospherics/binary/pump/aux
+ icon_state = "map_off-aux"
+ base_icon = "pump-aux"
+ icon_connect_type = "-aux"
+ connect_types = CONNECT_TYPE_AUX
+
+/obj/machinery/atmospherics/binary/pump/aux/on
+ icon_state = "map_on-aux"
+ use_power = USE_POWER_IDLE
/obj/machinery/atmospherics/binary/pump/update_icon()
if(!powered())
- icon_state = "off"
+ icon_state = "[base_icon]-off"
else
- icon_state = "[use_power ? "on" : "off"]"
+ icon_state = "[use_power ? "[base_icon]-on" : "[base_icon]-off"]"
/obj/machinery/atmospherics/binary/pump/update_underlays()
if(..())
@@ -62,8 +82,8 @@ Thus, the two variables affect pump operation are set in New():
var/turf/T = get_turf(src)
if(!istype(T))
return
- add_underlay(T, node1, turn(dir, -180))
- add_underlay(T, node2, dir)
+ add_underlay(T, node1, turn(dir, -180), node1?.icon_connect_type)
+ add_underlay(T, node2, dir, node2?.icon_connect_type)
/obj/machinery/atmospherics/binary/pump/hide(var/i)
update_underlays()
diff --git a/code/ATMOSPHERICS/components/portables_connector.dm b/code/ATMOSPHERICS/components/portables_connector.dm
index fd5033100b..5b489441db 100644
--- a/code/ATMOSPHERICS/components/portables_connector.dm
+++ b/code/ATMOSPHERICS/components/portables_connector.dm
@@ -21,6 +21,20 @@
use_power = USE_POWER_OFF
level = 1
+/obj/machinery/atmospherics/portables_connector/fuel
+ icon_state = "map_connector-fuel"
+ pipe_state = "connector-fuel"
+ icon_connect_type = "-fuel"
+ pipe_flags = PIPING_ONE_PER_TURF
+ connect_types = CONNECT_TYPE_FUEL
+
+/obj/machinery/atmospherics/portables_connector/aux
+ icon_state = "map_connector-aux"
+ pipe_state = "connector-aux"
+ icon_connect_type = "-aux"
+ pipe_flags = PIPING_ONE_PER_TURF
+ connect_types = CONNECT_TYPE_AUX
+
/obj/machinery/atmospherics/portables_connector/init_dir()
initialize_directions = dir
@@ -33,7 +47,7 @@
var/turf/T = get_turf(src)
if(!istype(T))
return
- add_underlay(T, node, dir)
+ add_underlay(T, node, dir, node?.icon_connect_type)
/obj/machinery/atmospherics/portables_connector/hide(var/i)
update_underlays()
diff --git a/code/ATMOSPHERICS/components/unary/vent_pump.dm b/code/ATMOSPHERICS/components/unary/vent_pump.dm
index 534d8e0130..36c68c959b 100644
--- a/code/ATMOSPHERICS/components/unary/vent_pump.dm
+++ b/code/ATMOSPHERICS/components/unary/vent_pump.dm
@@ -53,6 +53,11 @@
use_power = USE_POWER_IDLE
icon_state = "map_vent_out"
+/obj/machinery/atmospherics/unary/vent_pump/aux
+ icon_state = "map_vent_aux"
+ icon_connect_type = "-aux"
+ connect_types = CONNECT_TYPE_AUX //connects to aux pipes
+
/obj/machinery/atmospherics/unary/vent_pump/siphon
pump_direction = 0
@@ -98,6 +103,11 @@
power_channel = EQUIP
power_rating = 45000 //15 kW ~ 20 HP //VOREStation Edit - 45000
+/obj/machinery/atmospherics/unary/vent_pump/high_volume/aux
+ icon_state = "map_vent_aux"
+ icon_connect_type = "-aux"
+ connect_types = CONNECT_TYPE_AUX //connects to aux pipes
+
/obj/machinery/atmospherics/unary/vent_pump/high_volume/New()
..()
air_contents.volume = ATMOS_DEFAULT_VOLUME_PUMP + 800
diff --git a/code/ATMOSPHERICS/pipes/cap.dm b/code/ATMOSPHERICS/pipes/cap.dm
index 1e32aa6295..2a63bb3a20 100644
--- a/code/ATMOSPHERICS/pipes/cap.dm
+++ b/code/ATMOSPHERICS/pipes/cap.dm
@@ -93,6 +93,26 @@
icon_connect_type = "-supply"
color = PIPE_COLOR_BLUE
+/obj/machinery/atmospherics/pipe/cap/visible/fuel
+ name = "fuel pipe endcap"
+ desc = "An endcap for fuel pipes"
+ icon_state = "cap-fuel"
+ connect_types = CONNECT_TYPE_FUEL
+ piping_layer = PIPING_LAYER_FUEL
+ layer = PIPES_FUEL_LAYER
+ icon_connect_type = "-fuel"
+ color = PIPE_COLOR_YELLOW
+
+/obj/machinery/atmospherics/pipe/cap/visible/aux
+ name = "aux pipe endcap"
+ desc = "An endcap for aux pipes"
+ icon_state = "cap-aux"
+ connect_types = CONNECT_TYPE_AUX
+ piping_layer = PIPING_LAYER_AUX
+ layer = PIPES_AUX_LAYER
+ icon_connect_type = "-aux"
+ color = PIPE_COLOR_CYAN
+
/obj/machinery/atmospherics/pipe/cap/hidden
level = 1
icon_state = "cap"
@@ -117,3 +137,23 @@
layer = PIPES_SUPPLY_LAYER
icon_connect_type = "-supply"
color = PIPE_COLOR_BLUE
+
+/obj/machinery/atmospherics/pipe/cap/visible/fuel
+ name = "fuel pipe endcap"
+ desc = "An endcap for fuel pipes"
+ icon_state = "cap-f-fuel"
+ connect_types = CONNECT_TYPE_FUEL
+ piping_layer = PIPING_LAYER_FUEL
+ layer = PIPES_FUEL_LAYER
+ icon_connect_type = "-fuel"
+ color = PIPE_COLOR_YELLOW
+
+/obj/machinery/atmospherics/pipe/cap/hidden/aux
+ name = "aux pipe endcap"
+ desc = "An endcap for aux pipes"
+ icon_state = "cap-f-aux"
+ connect_types = CONNECT_TYPE_AUX
+ piping_layer = PIPING_LAYER_AUX
+ layer = PIPES_AUX_LAYER
+ icon_connect_type = "-aux"
+ color = PIPE_COLOR_CYAN
\ No newline at end of file
diff --git a/code/ATMOSPHERICS/pipes/manifold.dm b/code/ATMOSPHERICS/pipes/manifold.dm
index f44bfc5686..c669400b90 100644
--- a/code/ATMOSPHERICS/pipes/manifold.dm
+++ b/code/ATMOSPHERICS/pipes/manifold.dm
@@ -195,6 +195,26 @@
icon_connect_type = "-supply"
color = PIPE_COLOR_BLUE
+/obj/machinery/atmospherics/pipe/manifold/visible/fuel
+ name="Fuel pipe manifold"
+ desc = "A manifold composed of fuel pipes"
+ icon_state = "map-fuel"
+ connect_types = CONNECT_TYPE_FUEL
+ piping_layer = PIPING_LAYER_FUEL
+ layer = PIPES_FUEL_LAYER
+ icon_connect_type = "-fuel"
+ color = PIPE_COLOR_YELLOW
+
+/obj/machinery/atmospherics/pipe/manifold/visible/aux
+ name="Aux pipe manifold"
+ desc = "A manifold composed of aux pipes"
+ icon_state = "map-aux"
+ connect_types = CONNECT_TYPE_AUX
+ piping_layer = PIPING_LAYER_AUX
+ layer = PIPES_AUX_LAYER
+ icon_connect_type = "-aux"
+ color = PIPE_COLOR_CYAN
+
/obj/machinery/atmospherics/pipe/manifold/visible/yellow
color = PIPE_COLOR_YELLOW
@@ -241,6 +261,26 @@
icon_connect_type = "-supply"
color = PIPE_COLOR_BLUE
+/obj/machinery/atmospherics/pipe/manifold/hidden/fuel
+ name="Fuel pipe manifold"
+ desc = "A manifold composed of fuel pipes"
+ icon_state = "map-fuel"
+ connect_types = CONNECT_TYPE_FUEL
+ piping_layer = PIPING_LAYER_FUEL
+ layer = PIPES_FUEL_LAYER
+ icon_connect_type = "-fuel"
+ color = PIPE_COLOR_YELLOW
+
+/obj/machinery/atmospherics/pipe/manifold/hidden/aux
+ name="Aux pipe manifold"
+ desc = "A manifold composed of aux pipes"
+ icon_state = "map-aux"
+ connect_types = CONNECT_TYPE_AUX
+ piping_layer = PIPING_LAYER_AUX
+ layer = PIPES_AUX_LAYER
+ icon_connect_type = "-aux"
+ color = PIPE_COLOR_CYAN
+
/obj/machinery/atmospherics/pipe/manifold/hidden/yellow
color = PIPE_COLOR_YELLOW
diff --git a/code/ATMOSPHERICS/pipes/manifold4w.dm b/code/ATMOSPHERICS/pipes/manifold4w.dm
index 197c1a090b..f59103aa3a 100644
--- a/code/ATMOSPHERICS/pipes/manifold4w.dm
+++ b/code/ATMOSPHERICS/pipes/manifold4w.dm
@@ -197,6 +197,26 @@
icon_connect_type = "-supply"
color = PIPE_COLOR_BLUE
+/obj/machinery/atmospherics/pipe/manifold4w/visible/fuel
+ name="4-way fuel pipe manifold"
+ desc = "A manifold composed of fuel pipes"
+ icon_state = "map_4way-fuel"
+ connect_types = CONNECT_TYPE_FUEL
+ piping_layer = PIPING_LAYER_FUEL
+ layer = PIPES_FUEL_LAYER
+ icon_connect_type = "-fuel"
+ color = PIPE_COLOR_YELLOW
+
+/obj/machinery/atmospherics/pipe/manifold4w/visible/aux
+ name="4-way aux pipe manifold"
+ desc = "A manifold composed of aux pipes"
+ icon_state = "map_4way-aux"
+ connect_types = CONNECT_TYPE_AUX
+ piping_layer = PIPING_LAYER_AUX
+ layer = PIPES_AUX_LAYER
+ icon_connect_type = "-aux"
+ color = PIPE_COLOR_CYAN
+
/obj/machinery/atmospherics/pipe/manifold4w/visible/yellow
color = PIPE_COLOR_YELLOW
@@ -243,6 +263,26 @@
icon_connect_type = "-supply"
color = PIPE_COLOR_BLUE
+/obj/machinery/atmospherics/pipe/manifold4w/hidden/fuel
+ name="4-way fuel pipe manifold"
+ desc = "A manifold composed of fuel pipes"
+ icon_state = "map_4way-fuel"
+ connect_types = CONNECT_TYPE_FUEL
+ piping_layer = PIPING_LAYER_FUEL
+ layer = PIPES_FUEL_LAYER
+ icon_connect_type = "-fuel"
+ color = PIPE_COLOR_YELLOW
+
+/obj/machinery/atmospherics/pipe/manifold4w/hidden/aux
+ name="4-way aux pipe manifold"
+ desc = "A manifold composed of aux pipes"
+ icon_state = "map_4way-aux"
+ connect_types = CONNECT_TYPE_AUX
+ piping_layer = PIPING_LAYER_AUX
+ layer = PIPES_AUX_LAYER
+ icon_connect_type = "-aux"
+ color = PIPE_COLOR_CYAN
+
/obj/machinery/atmospherics/pipe/manifold4w/hidden/yellow
color = PIPE_COLOR_YELLOW
diff --git a/code/ATMOSPHERICS/pipes/simple.dm b/code/ATMOSPHERICS/pipes/simple.dm
index eb980c3b47..215f3498b7 100644
--- a/code/ATMOSPHERICS/pipes/simple.dm
+++ b/code/ATMOSPHERICS/pipes/simple.dm
@@ -203,6 +203,26 @@
icon_connect_type = "-supply"
color = PIPE_COLOR_BLUE
+/obj/machinery/atmospherics/pipe/simple/visible/fuel
+ name = "Fuel pipe"
+ desc = "A one meter section of fuel pipe"
+ icon_state = "intact-fuel"
+ connect_types = CONNECT_TYPE_FUEL
+ piping_layer = PIPING_LAYER_FUEL
+ layer = PIPES_FUEL_LAYER
+ icon_connect_type = "-fuel"
+ color = PIPE_COLOR_YELLOW
+
+/obj/machinery/atmospherics/pipe/simple/visible/aux
+ name = "Aux pipe"
+ desc = "A one meter section of aux pipe"
+ icon_state = "intact-aux"
+ connect_types = CONNECT_TYPE_AUX
+ piping_layer = PIPING_LAYER_AUX
+ layer = PIPES_AUX_LAYER
+ icon_connect_type = "-aux"
+ color = PIPE_COLOR_CYAN
+
/obj/machinery/atmospherics/pipe/simple/visible/yellow
color = PIPE_COLOR_YELLOW
@@ -249,6 +269,26 @@
icon_connect_type = "-supply"
color = PIPE_COLOR_BLUE
+/obj/machinery/atmospherics/pipe/simple/hidden/fuel
+ name = "Fuel pipe"
+ desc = "A one meter section of fuel pipe"
+ icon_state = "intact-fuel"
+ connect_types = CONNECT_TYPE_FUEL
+ piping_layer = PIPING_LAYER_FUEL
+ layer = PIPES_FUEL_LAYER
+ icon_connect_type = "-fuel"
+ color = PIPE_COLOR_YELLOW
+
+/obj/machinery/atmospherics/pipe/simple/hidden/aux
+ name = "Aux pipe"
+ desc = "A one meter section of aux pipe"
+ icon_state = "intact-aux"
+ connect_types = CONNECT_TYPE_AUX
+ piping_layer = PIPING_LAYER_AUX
+ layer = PIPES_AUX_LAYER
+ icon_connect_type = "-aux"
+ color = PIPE_COLOR_CYAN
+
/obj/machinery/atmospherics/pipe/simple/hidden/yellow
color = PIPE_COLOR_YELLOW
diff --git a/code/ATMOSPHERICS/pipes/tank.dm b/code/ATMOSPHERICS/pipes/tank.dm
index 751c9ed607..8a68ba369c 100644
--- a/code/ATMOSPHERICS/pipes/tank.dm
+++ b/code/ATMOSPHERICS/pipes/tank.dm
@@ -136,6 +136,7 @@
/obj/machinery/atmospherics/pipe/tank/phoron
name = "Pressure Tank (Phoron)"
icon_state = "phoron_map"
+ connect_types = CONNECT_TYPE_REGULAR|CONNECT_TYPE_FUEL
/obj/machinery/atmospherics/pipe/tank/phoron/New()
air_temporary = new
diff --git a/code/ATMOSPHERICS/pipes/universal.dm b/code/ATMOSPHERICS/pipes/universal.dm
index 00d2746947..68d0fe1721 100644
--- a/code/ATMOSPHERICS/pipes/universal.dm
+++ b/code/ATMOSPHERICS/pipes/universal.dm
@@ -4,7 +4,7 @@
/obj/machinery/atmospherics/pipe/simple/visible/universal
name="Universal pipe adapter"
desc = "An adapter for regular, supply and scrubbers pipes"
- connect_types = CONNECT_TYPE_REGULAR|CONNECT_TYPE_SUPPLY|CONNECT_TYPE_SCRUBBER
+ connect_types = CONNECT_TYPE_REGULAR|CONNECT_TYPE_SUPPLY|CONNECT_TYPE_SCRUBBER|CONNECT_TYPE_FUEL|CONNECT_TYPE_AUX
icon_state = "map_universal"
pipe_flags = PIPING_ALL_LAYER|PIPING_CARDINAL_AUTONORMALIZE
construction_type = /obj/item/pipe/binary
@@ -42,7 +42,7 @@
/obj/machinery/atmospherics/pipe/simple/hidden/universal
name="Universal pipe adapter"
desc = "An adapter for regular, supply and scrubbers pipes"
- connect_types = CONNECT_TYPE_REGULAR|CONNECT_TYPE_SUPPLY|CONNECT_TYPE_SCRUBBER
+ connect_types = CONNECT_TYPE_REGULAR|CONNECT_TYPE_SUPPLY|CONNECT_TYPE_SCRUBBER|CONNECT_TYPE_FUEL|CONNECT_TYPE_AUX
icon_state = "map_universal"
pipe_flags = PIPING_ALL_LAYER|PIPING_CARDINAL_AUTONORMALIZE
construction_type = /obj/item/pipe/binary
diff --git a/code/__defines/construction.dm b/code/__defines/construction.dm
index f148803322..5c0d640447 100644
--- a/code/__defines/construction.dm
+++ b/code/__defines/construction.dm
@@ -34,19 +34,25 @@
#define PIPE_TRIN_T 7 //8 directions: N->S+E, S->N+E, N->S+W, S->N+W, E->W+S, W->E+S, E->W+N, W->E+N
// Pipe connectivity bit flags
-#define CONNECT_TYPE_REGULAR 1
-#define CONNECT_TYPE_SUPPLY 2
-#define CONNECT_TYPE_SCRUBBER 4
-#define CONNECT_TYPE_HE 8
-#define CONNECT_TYPE_FUEL 16 // TODO - Implement this! Its piping so better ask Leshana
+#define CONNECT_TYPE_REGULAR 1 //Center of tile, 'normal'
+#define CONNECT_TYPE_SUPPLY 2 //Atmos air supply pipes
+#define CONNECT_TYPE_SCRUBBER 4 //Atmos air scrubber pipes
+#define CONNECT_TYPE_HE 8 //Heat exchanger pipes
+#define CONNECT_TYPE_FUEL 16 //Fuel pipes for overmap ships
+#define CONNECT_TYPE_AUX 32 //Aux pipes for 'other' things (airlocks, etc)
// We are based on the three named layers of supply, regular, and scrubber.
#define PIPING_LAYER_SUPPLY 1
#define PIPING_LAYER_REGULAR 2
#define PIPING_LAYER_SCRUBBER 3
+#define PIPING_LAYER_FUEL 4
+#define PIPING_LAYER_AUX 5
#define PIPING_LAYER_DEFAULT PIPING_LAYER_REGULAR
// We offset the layer values of the different pipe types to ensure they look nice
+#define PIPES_SCRUBBER_LAYER (PIPES_LAYER - 0.05)
+#define PIPES_AUX_LAYER (PIPES_LAYER - 0.04)
+#define PIPES_FUEL_LAYER (PIPES_LAYER - 0.03)
#define PIPES_SCRUBBER_LAYER (PIPES_LAYER - 0.02)
#define PIPES_SUPPLY_LAYER (PIPES_LAYER - 0.01)
#define PIPES_HE_LAYER (PIPES_LAYER + 0.01)
diff --git a/code/game/machinery/pipe/construction.dm b/code/game/machinery/pipe/construction.dm
index e83da8222d..13b1dc1bb7 100644
--- a/code/game/machinery/pipe/construction.dm
+++ b/code/game/machinery/pipe/construction.dm
@@ -83,6 +83,12 @@ Buildable meters
if(PIPING_LAYER_SUPPLY)
color = PIPE_COLOR_BLUE
name = "[initial(fakeA.name)] supply fitting"
+ if(PIPING_LAYER_FUEL)
+ color = PIPE_COLOR_YELLOW
+ name = "[initial(fakeA.name)] fuel fitting"
+ if(PIPING_LAYER_AUX)
+ color = PIPE_COLOR_CYAN
+ name = "[initial(fakeA.name)] aux fitting"
// Or if we were to do it the TG way...
// pixel_x = PIPE_PIXEL_OFFSET_X(piping_layer)
// pixel_y = PIPE_PIXEL_OFFSET_Y(piping_layer)
diff --git a/code/game/machinery/pipe/pipe_dispenser.dm b/code/game/machinery/pipe/pipe_dispenser.dm
index e1b874c096..e1aab7bf3c 100644
--- a/code/game/machinery/pipe/pipe_dispenser.dm
+++ b/code/game/machinery/pipe/pipe_dispenser.dm
@@ -8,6 +8,13 @@
var/unwrenched = 0
var/wait = 0
var/p_layer = PIPING_LAYER_REGULAR
+ var/static/list/pipe_layers = list(
+ "Regular" = PIPING_LAYER_REGULAR,
+ "Supply" = PIPING_LAYER_SUPPLY,
+ "Scrubber" = PIPING_LAYER_SCRUBBER,
+ "Fuel" = PIPING_LAYER_FUEL,
+ "Aux" = PIPING_LAYER_AUX
+ )
// TODO - Its about time to make this NanoUI don't we think?
/obj/machinery/pipedispenser/attack_hand(var/mob/user as mob)
@@ -22,11 +29,10 @@
for(var/category in atmos_pipe_recipes)
lines += "[category]:
"
if(category == "Pipes")
- // Stupid hack. Fix someday. So tired right now.
- lines += "Regular "
- lines += "Supply "
- lines += "Scrubber "
- lines += "
"
+ for(var/pipename in pipe_layers)
+ var/pipelayer = pipe_layers[pipename]
+ lines += "[pipename] "
+ lines += "
"
for(var/datum/pipe_recipe/PI in atmos_pipe_recipes[category])
lines += PI.Render(src)
var/dat = lines.Join()
diff --git a/code/game/machinery/pipe/pipe_recipes.dm b/code/game/machinery/pipe/pipe_recipes.dm
index a54cdd4eee..aee12f749c 100644
--- a/code/game/machinery/pipe/pipe_recipes.dm
+++ b/code/game/machinery/pipe/pipe_recipes.dm
@@ -7,42 +7,45 @@ var/global/list/atmos_pipe_recipes = null
/hook/startup/proc/init_pipe_recipes()
global.atmos_pipe_recipes = list(
"Pipes" = list(
- new /datum/pipe_recipe/pipe("Pipe", /obj/machinery/atmospherics/pipe/simple),
- new /datum/pipe_recipe/pipe("Manifold", /obj/machinery/atmospherics/pipe/manifold),
- new /datum/pipe_recipe/pipe("Manual Valve", /obj/machinery/atmospherics/valve),
+ new /datum/pipe_recipe/pipe("Pipe", /obj/machinery/atmospherics/pipe/simple),
+ new /datum/pipe_recipe/pipe("Manifold", /obj/machinery/atmospherics/pipe/manifold),
+ new /datum/pipe_recipe/pipe("Manual Valve", /obj/machinery/atmospherics/valve),
new /datum/pipe_recipe/pipe("Digital Valve", /obj/machinery/atmospherics/valve/digital),
- new /datum/pipe_recipe/pipe("Pipe cap", /obj/machinery/atmospherics/pipe/cap),
+ new /datum/pipe_recipe/pipe("Pipe cap", /obj/machinery/atmospherics/pipe/cap),
new /datum/pipe_recipe/pipe("4-Way Manifold", /obj/machinery/atmospherics/pipe/manifold4w),
new /datum/pipe_recipe/pipe("Manual T-Valve", /obj/machinery/atmospherics/tvalve),
- new /datum/pipe_recipe/pipe("Digital T-Valve", /obj/machinery/atmospherics/tvalve/digital),
- new /datum/pipe_recipe/pipe("Upward Pipe", /obj/machinery/atmospherics/pipe/zpipe/up),
+ new /datum/pipe_recipe/pipe("Digital T-Valve", /obj/machinery/atmospherics/tvalve/digital),
+ new /datum/pipe_recipe/pipe("Upward Pipe", /obj/machinery/atmospherics/pipe/zpipe/up),
new /datum/pipe_recipe/pipe("Downward Pipe", /obj/machinery/atmospherics/pipe/zpipe/down),
- new /datum/pipe_recipe/pipe("Universal Pipe Adaptor", /obj/machinery/atmospherics/pipe/simple/visible/universal),
+ new /datum/pipe_recipe/pipe("Universal Pipe Adaptor",/obj/machinery/atmospherics/pipe/simple/visible/universal),
),
"Devices" = list(
new /datum/pipe_recipe/pipe("Connector", /obj/machinery/atmospherics/portables_connector),
new /datum/pipe_recipe/pipe("Unary Vent", /obj/machinery/atmospherics/unary/vent_pump),
- new /datum/pipe_recipe/pipe("Passive Vent", /obj/machinery/atmospherics/pipe/vent),
- new /datum/pipe_recipe/pipe("Injector", /obj/machinery/atmospherics/unary/outlet_injector),
- new /datum/pipe_recipe/pipe("Gas Pump", /obj/machinery/atmospherics/binary/pump),
+ new /datum/pipe_recipe/pipe("Aux Vent", /obj/machinery/atmospherics/unary/vent_pump/aux),
+ new /datum/pipe_recipe/pipe("Passive Vent", /obj/machinery/atmospherics/pipe/vent),
+ new /datum/pipe_recipe/pipe("Injector", /obj/machinery/atmospherics/unary/outlet_injector),
+ new /datum/pipe_recipe/pipe("Gas Pump", /obj/machinery/atmospherics/binary/pump),
+ new /datum/pipe_recipe/pipe("Fuel Pump", /obj/machinery/atmospherics/binary/pump/fuel),
+ new /datum/pipe_recipe/pipe("Aux Pump", /obj/machinery/atmospherics/binary/pump/aux),
new /datum/pipe_recipe/pipe("Pressure Regulator", /obj/machinery/atmospherics/binary/passive_gate),
- new /datum/pipe_recipe/pipe("High Power Gas Pump",/obj/machinery/atmospherics/binary/pump/high_power),
- //new /datum/pipe_recipe/pipe("Automatic Shutoff Valve",/obj/machinery/atmospherics/valve/shutoff), //VOREStation Removal: Without leaks, those are just regular valves,
- new /datum/pipe_recipe/pipe("Scrubber", /obj/machinery/atmospherics/unary/vent_scrubber),
+ new /datum/pipe_recipe/pipe("High Power Gas Pump", /obj/machinery/atmospherics/binary/pump/high_power),
+ new /datum/pipe_recipe/pipe("Automatic Shutoff Valve",/obj/machinery/atmospherics/valve/shutoff),
+ new /datum/pipe_recipe/pipe("Scrubber", /obj/machinery/atmospherics/unary/vent_scrubber),
new /datum/pipe_recipe/meter("Meter"),
new /datum/pipe_recipe/pipe("Gas Filter", /obj/machinery/atmospherics/trinary/atmos_filter),
new /datum/pipe_recipe/pipe("Gas Mixer", /obj/machinery/atmospherics/trinary/mixer),
new /datum/pipe_recipe/pipe("Gas Mixer 'T'", /obj/machinery/atmospherics/trinary/mixer/t_mixer),
new /datum/pipe_recipe/pipe("Omni Gas Mixer", /obj/machinery/atmospherics/omni/mixer),
- new /datum/pipe_recipe/pipe("Omni Gas Filter", /obj/machinery/atmospherics/omni/atmos_filter),
+ new /datum/pipe_recipe/pipe("Omni Gas Filter", /obj/machinery/atmospherics/omni/atmos_filter),
),
"Heat Exchange" = list(
- new /datum/pipe_recipe/pipe("Pipe", /obj/machinery/atmospherics/pipe/simple/heat_exchanging),
- new /datum/pipe_recipe/pipe("Junction", /obj/machinery/atmospherics/pipe/simple/heat_exchanging/junction),
+ new /datum/pipe_recipe/pipe("Pipe", /obj/machinery/atmospherics/pipe/simple/heat_exchanging),
+ new /datum/pipe_recipe/pipe("Junction", /obj/machinery/atmospherics/pipe/simple/heat_exchanging/junction),
new /datum/pipe_recipe/pipe("Heat Exchanger", /obj/machinery/atmospherics/unary/heat_exchanger),
),
"Insulated pipes" = list(
- new /datum/pipe_recipe/pipe("Pipe", /obj/machinery/atmospherics/pipe/simple/insulated),
+ new /datum/pipe_recipe/pipe("Pipe", /obj/machinery/atmospherics/pipe/simple/insulated),
)
)
return TRUE
diff --git a/code/modules/multiz/pipes.dm b/code/modules/multiz/pipes.dm
index 7b13845211..237e38562e 100644
--- a/code/modules/multiz/pipes.dm
+++ b/code/modules/multiz/pipes.dm
@@ -214,6 +214,26 @@ obj/machinery/atmospherics/pipe/zpipe/up/supply
icon_connect_type = "-supply"
color = PIPE_COLOR_BLUE
+obj/machinery/atmospherics/pipe/zpipe/up/fuel
+ icon_state = "up-fuel"
+ name = "upwards fuel pipe"
+ desc = "A fuel pipe segment to connect upwards."
+ connect_types = CONNECT_TYPE_FUEL
+ piping_layer = PIPING_LAYER_FUEL
+ layer = PIPES_FUEL_LAYER
+ icon_connect_type = "-fuel"
+ color = PIPE_COLOR_YELLOW
+
+obj/machinery/atmospherics/pipe/zpipe/up/aux
+ icon_state = "up-aux"
+ name = "upwards aux pipe"
+ desc = "A aux pipe segment to connect upwards."
+ connect_types = CONNECT_TYPE_AUX
+ piping_layer = PIPING_LAYER_AUX
+ layer = PIPES_AUX_LAYER
+ icon_connect_type = "-aux"
+ color = PIPE_COLOR_CYAN
+
obj/machinery/atmospherics/pipe/zpipe/down/scrubbers
icon_state = "down-scrubbers"
name = "downwards scrubbers pipe"
@@ -233,3 +253,23 @@ obj/machinery/atmospherics/pipe/zpipe/down/supply
layer = PIPES_SUPPLY_LAYER
icon_connect_type = "-supply"
color = PIPE_COLOR_BLUE
+
+obj/machinery/atmospherics/pipe/zpipe/down/fuel
+ icon_state = "down-fuel"
+ name = "downwards fuel pipe"
+ desc = "A fuel pipe segment to connect downwards."
+ connect_types = CONNECT_TYPE_FUEL
+ piping_layer = PIPING_LAYER_FUEL
+ layer = PIPES_FUEL_LAYER
+ icon_connect_type = "-fuel"
+ color = PIPE_COLOR_YELLOW
+
+obj/machinery/atmospherics/pipe/zpipe/down/aux
+ icon_state = "down-aux"
+ name = "upwards aux pipe"
+ desc = "A aux pipe segment to connect upwards."
+ connect_types = CONNECT_TYPE_AUX
+ piping_layer = PIPING_LAYER_AUX
+ layer = PIPES_AUX_LAYER
+ icon_connect_type = "-aux"
+ color = PIPE_COLOR_CYAN
\ No newline at end of file
diff --git a/icons/atmos/connector.dmi b/icons/atmos/connector.dmi
index cf4ea7a3c8..bb7c007d8e 100644
Binary files a/icons/atmos/connector.dmi and b/icons/atmos/connector.dmi differ
diff --git a/icons/atmos/manifold.dmi b/icons/atmos/manifold.dmi
index b7c5d0a2f1..7d94adb246 100644
Binary files a/icons/atmos/manifold.dmi and b/icons/atmos/manifold.dmi differ
diff --git a/icons/atmos/pipe_underlays.dmi b/icons/atmos/pipe_underlays.dmi
index f6f38a9a7d..f04a9583c0 100644
Binary files a/icons/atmos/pipe_underlays.dmi and b/icons/atmos/pipe_underlays.dmi differ
diff --git a/icons/atmos/pipes.dmi b/icons/atmos/pipes.dmi
index 916002bac8..94bad67c9d 100644
Binary files a/icons/atmos/pipes.dmi and b/icons/atmos/pipes.dmi differ
diff --git a/icons/atmos/pump.dmi b/icons/atmos/pump.dmi
index a1e2d43ca2..06194547ab 100644
Binary files a/icons/atmos/pump.dmi and b/icons/atmos/pump.dmi differ
diff --git a/icons/atmos/vent_pump.dmi b/icons/atmos/vent_pump.dmi
index 10a1ab0dfb..2031e75132 100644
Binary files a/icons/atmos/vent_pump.dmi and b/icons/atmos/vent_pump.dmi differ
diff --git a/icons/obj/pipes.dmi b/icons/obj/pipes.dmi
index ec6d28a613..dc682dacb0 100644
Binary files a/icons/obj/pipes.dmi and b/icons/obj/pipes.dmi differ
diff --git a/icons/obj/structures.dmi b/icons/obj/structures.dmi
index 89a5e9071d..6b8a1f3b4d 100644
Binary files a/icons/obj/structures.dmi and b/icons/obj/structures.dmi differ