diff --git a/code/ATMOSPHERICS/components/omni_devices/filter.dm b/code/ATMOSPHERICS/components/omni_devices/filter.dm index ff558a13e9..49d6cd0d53 100644 --- a/code/ATMOSPHERICS/components/omni_devices/filter.dm +++ b/code/ATMOSPHERICS/components/omni_devices/filter.dm @@ -2,15 +2,10 @@ // Gas filter - omni variant //-------------------------------------------- /obj/machinery/atmospherics/omni/filter - name = "Omni gas filter" + name = "omni gas filter" icon = 'icons/obj/atmospherics/omni_devices.dmi' icon_state = "" - tag_north = ATM_OUTPUT - tag_south = ATM_INPUT - tag_east = ATM_O2 - tag_west = ATM_N2 - var/list/filters = new() var/datum/omni_port/input var/datum/omni_port/output @@ -128,7 +123,7 @@ ui = nanomanager.try_update_ui(user, src, ui_key, ui, data) if (!ui) - ui = new(user, src, ui_key, "omni_filter.tmpl", name, 330, 330) + ui = new(user, src, ui_key, "omni_filter.tmpl", "Omni Filter Control", 330, 330) ui.set_initial_data(data) ui.open() diff --git a/code/ATMOSPHERICS/components/omni_devices/mixer.dm b/code/ATMOSPHERICS/components/omni_devices/mixer.dm index 45d208fbb1..4c3fb13561 100644 --- a/code/ATMOSPHERICS/components/omni_devices/mixer.dm +++ b/code/ATMOSPHERICS/components/omni_devices/mixer.dm @@ -2,14 +2,9 @@ // Gas mixer - omni variant //-------------------------------------------- /obj/machinery/atmospherics/omni/mixer - name = "Omni gas mixer" + name = "omni gas mixer" icon = 'icons/obj/atmospherics/omni_devices.dmi' - tag_north = ATM_OUTPUT - tag_south = ATM_INPUT - tag_east = ATM_INPUT - tag_west = ATM_INPUT - var/list/inputs = new() var/datum/omni_port/output @@ -112,7 +107,7 @@ ui = nanomanager.try_update_ui(user, src, ui_key, ui, data) if (!ui) - ui = new(user, src, ui_key, "omni_mixer.tmpl", name, 360, 330) + ui = new(user, src, ui_key, "omni_mixer.tmpl", "Omni Mixer Control", 360, 330) ui.set_initial_data(data) ui.open() diff --git a/code/ATMOSPHERICS/components/omni_devices/omni_base.dm b/code/ATMOSPHERICS/components/omni_devices/omni_base.dm index 2fe89e72ad..79056c1ed5 100644 --- a/code/ATMOSPHERICS/components/omni_devices/omni_base.dm +++ b/code/ATMOSPHERICS/components/omni_devices/omni_base.dm @@ -2,6 +2,7 @@ // Base omni device //-------------------------------------------- /obj/machinery/atmospherics/omni + name = "omni device" icon_state = "" dir = SOUTH use_power = 1 @@ -81,23 +82,14 @@ if(!istype(W, /obj/item/weapon/wrench)) return ..() - var/turf/T = src.loc - if(level==1 && isturf(T) && T.intact) - user << "\red You must remove the plating first." - return 1 - var/datum/gas_mixture/int_air = return_air() - var/datum/gas_mixture/env_air = loc.return_air() - if((int_air.return_pressure()-env_air.return_pressure()) > 2*ONE_ATMOSPHERE) - user << "\red You cannot unwrench this [src], it too exerted due to internal pressure." - add_fingerprint(user) - return 1 - playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) + user << "\blue You begin to unfasten \the [src]..." + playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) if(do_after(user, 40)) user.visible_message( \ "[user] unfastens \the [src].", \ "\blue You have unfastened \the [src].", \ - "You hear ratchet.") + "You hear a ratchet.") new /obj/item/pipe(loc, make_from=src) del(src) diff --git a/code/game/machinery/pipe/construction.dm b/code/game/machinery/pipe/construction.dm index 6c38715796..864e893dc9 100644 --- a/code/game/machinery/pipe/construction.dm +++ b/code/game/machinery/pipe/construction.dm @@ -30,6 +30,8 @@ Buildable meters #define PIPE_GAS_FILTER_M 23 #define PIPE_GAS_MIXER_T 24 #define PIPE_GAS_MIXER_M 25 +#define PIPE_OMNI_MIXER 26 +#define PIPE_OMNI_FILTER 27 /obj/item/pipe name = "pipe" @@ -98,6 +100,10 @@ Buildable meters src.pipe_type = PIPE_MANIFOLD4W else if(istype(make_from, /obj/machinery/atmospherics/pipe/cap)) src.pipe_type = PIPE_CAP + else if(istype(make_from, /obj/machinery/atmospherics/omni/mixer)) + src.pipe_type = PIPE_OMNI_MIXER + else if(istype(make_from, /obj/machinery/atmospherics/omni/filter)) + src.pipe_type = PIPE_OMNI_FILTER ///// Z-Level stuff else if(istype(make_from, /obj/machinery/atmospherics/pipe/zpipe/up)) src.pipe_type = PIPE_UP @@ -144,6 +150,8 @@ Buildable meters "gas filter m", \ "gas mixer t", \ "gas mixer m", \ + "omni mixer", \ + "omni filter" ) name = nlist[pipe_type+1] + " fitting" var/list/islist = list( \ @@ -175,6 +183,8 @@ Buildable meters "m_filter", \ "t_mixer", \ "m_mixer", \ + "omni_mixer", \ + "omni_filter" ) icon_state = islist[pipe_type + 1] @@ -239,7 +249,7 @@ Buildable meters return dir //dir|acw if(PIPE_CONNECTOR,PIPE_UVENT,PIPE_SCRUBBER,PIPE_HEAT_EXCHANGE) return dir - if(PIPE_MANIFOLD4W) + if(PIPE_MANIFOLD4W, PIPE_OMNI_MIXER, PIPE_OMNI_FILTER) return dir|flip|cw|acw if(PIPE_MANIFOLD) return flip|cw|acw @@ -304,7 +314,7 @@ Buildable meters dir = 1 else if(dir==8) dir = 4 - else if (pipe_type == PIPE_MANIFOLD4W) + else if (pipe_type in list(PIPE_MANIFOLD4W, PIPE_OMNI_MIXER, PIPE_OMNI_FILTER)) dir = 2 var/pipe_dir = get_pipe_dir() @@ -732,6 +742,18 @@ Buildable meters P.node2.initialize() P.node2.build_network() ///// Z-Level stuff + if(PIPE_OMNI_MIXER) + var/obj/machinery/atmospherics/omni/mixer/P = new(loc) + var/turf/T = P.loc + P.level = T.intact ? 2 : 1 + P.initialize() + P.build_network() + if(PIPE_OMNI_FILTER) + var/obj/machinery/atmospherics/omni/filter/P = new(loc) + var/turf/T = P.loc + P.level = T.intact ? 2 : 1 + P.initialize() + P.build_network() playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1) user.visible_message( \ diff --git a/code/game/machinery/pipe/pipe_dispenser.dm b/code/game/machinery/pipe/pipe_dispenser.dm index 558f54118c..c8b6962458 100644 --- a/code/game/machinery/pipe/pipe_dispenser.dm +++ b/code/game/machinery/pipe/pipe_dispenser.dm @@ -38,6 +38,8 @@ Gas Mixer
Gas Mixer-Mirrored
Gas Mixer-T
+Omni Gas Mixer
+Omni Gas Filter
Heat exchange:
Pipe
Bent Pipe
diff --git a/icons/obj/pipe-item.dmi b/icons/obj/pipe-item.dmi index 65a10a3055..b364598bee 100644 Binary files a/icons/obj/pipe-item.dmi and b/icons/obj/pipe-item.dmi differ