stationeers_ic10/gas_mixer.ic10

63 lines
1.4 KiB
Plaintext
Raw Normal View History

2021-09-17 09:37:00 +00:00
# Gas-mixing script. Needs two source-tanks and an
# output tank, a gas-mixer, a (turbo) volume pump,
# and a Kit (Button, moment type) to trigger purge.
# Gas mixer ratio is manually set!
alias TankA d0
alias TankB d1
alias TankOut d2
alias Mixer d3
alias Pump d4
alias Button d5
alias TankAPress r0
alias TankBPress r1
alias TankOutPress r2
alias TankAOK r3
alias TankBOK r4
alias TankOutOK r5
alias MixerRun r6
alias PurgeActivate r7
2021-09-17 09:37:00 +00:00
# Stops mixing if either input-gas is below 500kPa
define PRESSINMIN 500
2021-09-17 09:37:00 +00:00
# Stops mixing if output-tank is "full"
define PRESSOUTMAX 58000
2021-09-17 09:37:00 +00:00
# Sets purge pump to max output
l TankAPress Pump Maximum
s Pump Setting TankAPress
2021-09-17 09:37:00 +00:00
start:
yield
s Pump On 0 # Ensures purge pump is off
2021-09-17 09:37:00 +00:00
# Checks is purge is activated
l PurgeActivate Button Setting
bgtz PurgeActivate purge
2021-09-17 09:37:00 +00:00
# Loads tank pressures
l TankAPress TankA Pressure
l TankBPress TankB Pressure
l TankOutPress TankOut Pressure
2021-09-17 09:37:00 +00:00
# Checks if pressures are within tolerances
sgt TankAOK TankAPress PRESSINMIN
sgt TankBOK TankBPress PRESSINMIN
slt TankOutOK TankOutPress PRESSOUTMAX
2021-09-17 09:37:00 +00:00
and MixerRun TankAOK TankBOK
and MixerRun TankOutOK MixerRun
2021-09-17 09:37:00 +00:00
# Activates mixer if all is ok
s Mixer On MixerRun
2021-09-17 09:37:00 +00:00
j start
purge:
yield
s Mixer On 0 # Turns mixer off
2021-09-17 09:37:00 +00:00
# Gets output tank pressure
l TankOutPress TankOut Pressure
s Pump On 1 # Activates purge pump
2021-09-17 09:37:00 +00:00
# Runs pump until tank is empty
bgtz TankOutPress purge
2021-09-17 09:37:00 +00:00
j start