Files
Bubberstation/code/game/machinery/computer/atmos_computers/outlets.dm
SyncIt21 255d3b4098 Build your own atmos chambers (#72019)
## About The Pull Request


https://user-images.githubusercontent.com/110812394/208232089-a183fb95-9326-4514-986a-a2b1e21be40c.mp4


**Notes**
- You can print atmos control circuit boards at the circuit printer
after research
- You can only build one sensor for each gas type for in the whole map.
This is because each sensor is assigned a unique chamber id from a fixed
set of constants. Once all those values are used up there will be
duplicates so yeah only sensor per gas type for that round
- Un wrenching or destroying the injector/vent will automatically
disconnect them from the sensor. I forgot to show that in the video
- Destroying the sensor via right click with RPD will also automatically
disconnect everything. It should be obvious but i made it even more
obvious now

## Why It's Good For The Game
From #71232
![Screenshot
(66)](https://user-images.githubusercontent.com/110812394/207928807-bc6edfdd-26cc-48cd-8cb9-1b98f53ad1fe.png)

That and also i heard somewhere in the forum that this was highly
requested

## Changelog
🆑
add: Gas sensors recipe to RPD
code: linking all the stuff via multitool
qol: make your own tank instead of moving around canisters
/🆑

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2022-12-22 00:40:21 -08:00

121 lines
4.9 KiB
Plaintext

/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored
on = TRUE
icon_state = "vent_map_siphon_on-3"
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/Initialize(mapload)
id_tag = CHAMBER_OUTPUT_FROM_ID(chamber_id)
. = ..()
//we dont want people messing with these special vents using the air alarm interface
disconnect_from_area()
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/plasma_output
name = "plasma tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_PLAS
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/oxygen_output
name = "oxygen tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_O2
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/nitrogen_output
name = "nitrogen tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_N2
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/mix_output
name = "mix tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_MIX
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/nitrous_output
name = "nitrous oxide tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_N2O
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/carbon_output
name = "carbon dioxide tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_CO2
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/bz_output
name = "bz tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_BZ
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/freon_output
name = "freon tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_FREON
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/halon_output
name = "halon tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_HALON
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/healium_output
name = "healium tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_HEALIUM
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/hydrogen_output
name = "hydrogen tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_H2
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/hypernoblium_output
name = "hypernoblium tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_HYPERNOBLIUM
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/miasma_output
name = "miasma tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_MIASMA
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/nitrium_output
name = "nitrium tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_NITRIUM
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/pluoxium_output
name = "pluoxium tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_PLUOXIUM
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/proto_nitrate_output
name = "proto-nitrate tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_PROTO_NITRATE
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/tritium_output
name = "tritium tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_TRITIUM
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/water_vapor_output
name = "water vapor tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_H2O
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/zauker_output
name = "zauker tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_ZAUKER
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/helium_output
name = "helium tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_HELIUM
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/antinoblium_output
name = "antinoblium tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_ANTINOBLIUM
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/incinerator_output
name = "incinerator chamber output inlet"
chamber_id = ATMOS_GAS_MONITOR_INCINERATOR
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/ordnance_burn_chamber_output
name = "ordnance burn chamber output inlet"
chamber_id = ATMOS_GAS_MONITOR_ORDNANCE_BURN
/obj/machinery/atmospherics/components/unary/vent_pump/siphon/monitored/ordnance_freezer_chamber_output
name = "ordnance freezer chamber output inlet"
chamber_id = ATMOS_GAS_MONITOR_ORDNANCE_FREEZER
/obj/machinery/atmospherics/components/unary/vent_pump/high_volume/siphon/monitored
on = TRUE
icon_state = "vent_map_siphon_on-3"
// Same as the rest, but bigger volume.
/obj/machinery/atmospherics/components/unary/vent_pump/high_volume/siphon/monitored/Initialize(mapload)
id_tag = CHAMBER_OUTPUT_FROM_ID(chamber_id)
. = ..()
//we dont want people messing with these special vents using the air alarm interface
disconnect_from_area()
/obj/machinery/atmospherics/components/unary/vent_pump/high_volume/siphon/monitored/air_output
name = "air mix tank output inlet"
chamber_id = ATMOS_GAS_MONITOR_AIR