mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 10:21:11 +00:00
Air alarms can scrub nitrogen.
This commit is contained in:
@@ -19,6 +19,7 @@
|
||||
var/scrub_Toxins = 0
|
||||
var/scrub_N2O = 0
|
||||
var/scrub_O2 = 0
|
||||
var/scrub_N2 = 0
|
||||
|
||||
var/volume_rate = 120
|
||||
var/panic = 0 //is this scrubber panicked?
|
||||
@@ -80,6 +81,7 @@
|
||||
"filter_tox" = scrub_Toxins,
|
||||
"filter_n2o" = scrub_N2O,
|
||||
"filter_o2" = scrub_O2,
|
||||
"filter_n2" = scrub_N2,
|
||||
"sigtype" = "status"
|
||||
)
|
||||
if(!initial_loc.air_scrub_names[id_tag])
|
||||
@@ -117,7 +119,8 @@
|
||||
(scrub_Toxins && environment.toxins > 0) ||\
|
||||
(scrub_CO2 && environment.carbon_dioxide > 0) ||\
|
||||
(scrub_N2O && environment.trace_gases.len > 0) ||\
|
||||
(scrub_O2 && environment.oxygen > 0))
|
||||
(scrub_O2 && environment.oxygen > 0) ||\
|
||||
(scrub_N2 && environment.nitrogen > 0))
|
||||
var/transfer_moles = min(1, volume_rate/environment.volume)*environment.total_moles()
|
||||
|
||||
//Take a gas sample
|
||||
@@ -141,6 +144,10 @@
|
||||
filtered_out.oxygen = removed.oxygen
|
||||
removed.oxygen = 0
|
||||
|
||||
if(scrub_N2)
|
||||
filtered_out.nitrogen = removed.nitrogen
|
||||
removed.nitrogen = 0
|
||||
|
||||
if(removed.trace_gases.len>0)
|
||||
for(var/datum/gas/trace_gas in removed.trace_gases)
|
||||
if(istype(trace_gas, /datum/gas/oxygen_agent_b))
|
||||
@@ -241,6 +248,11 @@
|
||||
if(signal.data["toggle_o2_scrub"])
|
||||
scrub_O2 = !scrub_O2
|
||||
|
||||
if(signal.data["n2_scrub"] != null)
|
||||
scrub_N2 = text2num(signal.data["n2_scrub"])
|
||||
if(signal.data["toggle_n2_scrub"])
|
||||
scrub_N2 = !scrub_N2
|
||||
|
||||
if(signal.data["init"] != null)
|
||||
name = signal.data["init"]
|
||||
return
|
||||
|
||||
@@ -153,6 +153,7 @@
|
||||
"tox_scrub",
|
||||
"n2o_scrub",
|
||||
"o2_scrub",
|
||||
"n2_scrub",
|
||||
"panic_siphon",
|
||||
"scrubbing"
|
||||
)
|
||||
|
||||
@@ -429,7 +429,7 @@
|
||||
switch(mode)
|
||||
if(AALARM_MODE_SCRUBBING)
|
||||
for(var/device_id in alarm_area.air_scrub_names)
|
||||
send_signal(device_id, list("power"= 1, "co2_scrub"= 1, "o2_scrub"=(preset==AALARM_PRESET_VOX), "scrubbing"= 1, "panic_siphon"= 0) )
|
||||
send_signal(device_id, list("power"= 1, "co2_scrub"= 1, "o2_scrub"=(preset==AALARM_PRESET_VOX), "n2_scrub"=0, "scrubbing"= 1, "panic_siphon"= 0) )
|
||||
for(var/device_id in alarm_area.air_vent_names)
|
||||
send_signal(device_id, list("power"= 1, "checks"= 1, "set_external_pressure"= target_pressure) )
|
||||
|
||||
@@ -905,6 +905,7 @@
|
||||
"tox_scrub",
|
||||
"n2o_scrub",
|
||||
"o2_scrub",
|
||||
"n2_scrub",
|
||||
"panic_siphon",
|
||||
"scrubbing")
|
||||
var/val
|
||||
|
||||
@@ -85,6 +85,7 @@
|
||||
<li class="rscadd">Vents, injectors, conveyors, and conveyor switches can be tuned with a multitool.</li>
|
||||
<li class="rscadd">Conveyor belts are now constructable with a conveyor circuitboard.</li>
|
||||
<li class="rscadd">Conveyor belt switches are now constructable with a signaller and a rod.</li>
|
||||
<li class="rscadd">Air alarms can now scrub Nitrogen (N<sub>2</sub>).</li>
|
||||
<li class="bugfix">Observers are no longer naked, and sport the unused tourist outfit.</li>
|
||||
<li class="bugfix">Freezers and heaters did not properly handle pipe networks when moved.</li>
|
||||
<li class="bugfix">Hopefully fix DNA injector issues.</li>
|
||||
|
||||
@@ -190,6 +190,7 @@ Used In File(s): /code/game/machinery/alarm.dm
|
||||
{^{:~link('CO<sub>2</sub>',null,{'id_tag':id_tag,'command':'co2_scrub','val':(filter_co2==0?1:0)},null,(filter_co2?'linkOn':''))}}
|
||||
{^{:~link('Plasma', null,{'id_tag':id_tag,'command':'tox_scrub','val':(filter_tox==0?1:0)},null,(filter_tox?'linkOn':''))}}
|
||||
{^{:~link('N<sub>2</sub>O',null,{'id_tag':id_tag,'command':'n2o_scrub','val':(filter_n2o==0?1:0)},null,(filter_n2o?'linkOn':''))}}
|
||||
{^{:~link('N<sub>2</sub>', null,{'id_tag':id_tag,'command':'n2_scrub', 'val':(filter_n2 ==0?1:0)},null,(filter_n2 ?'linkOn':''))}}
|
||||
{^{:~link('O<sub>2</sub>', null,{'id_tag':id_tag,'command':'o2_scrub', 'val':(filter_o2 ==0?1:0)},null,(filter_o2 ?'linkOn':''))}}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user