/datum/gas_mixture
        
    
            
        
| Vars | |
| gas_list_view_only | Never ever set this variable, hooked into vv_get_var for view variables viewing. | 
|---|---|
| Procs | |
| __auxtools_parse_gas_string | Returns: true. Parses gas strings like "o2=2500;plasma=5000;TEMP=370" and turns src mixes into the parsed gas mixture, invalid patterns will be ignored | 
| __gasmixture_register | Fills in the first unused slot in the gas mixtures vector, or adds another one, then sets the argument ByondValue to point to it. | 
| __gasmixture_unregister | Adds the gas mixture's ID to the queue of mixtures that have been deleted, to be reused later. This version is only if auxcleanup is not being used; it should be called from /datum/gas_mixture/Del. | 
| __remove | Args: (mixture, amount). Takes the given amount of gas from src and puts it into the argument mixture. Amount is amount of substance in moles. | 
| __remove_by_flag | Args: (mixture, flag, amount). Takes amountfrom src that have the givenflagand puts them into the givenmixture. Returns: 0 if gas didn't have any with that flag, 1 if it did. | 
| __remove_ratio | Args: (mixture, ratio). Takes the given ratio of gas from src and puts it into the argument mixture. Ratio is a number between 0 and 1. | 
| add | Args: (amount). Adds the given amount to each gas. | 
| adjust_heat | Args: (heat). Adds a given amount of heat to the mixture, i.e. in joules taking into account capacity. | 
| adjust_moles | Args: (gas_id, moles). Adjusts the given gas's amount by the given amount, e.g. (GAS_O2, -0.1) will remove 0.1 moles of oxygen from the mixture. | 
| adjust_moles_temp | Args: (gas_id, moles, temp). Adjusts the given gas's amount by the given amount, with that gas being treated as if it is at the given temperature. | 
| adjust_multi | Args: (gas_id_1, amount_1, gas_id_2, amount_2, ...). As adjust_moles, but with variadic arguments. | 
| clear | Clears the gas mixture my removing all of its gases. | 
| compare | Returns: true if the two mixtures are different enough for processing, false otherwise. | 
| copy_from | Arg: (mixture). Makes src into a copy of the argument mixture. | 
| divide | Args: (coefficient). Divides all gases by this amount. | 
| equalize | Distributes the contents of two mixes equally between themselves | 
| equalize_with | Args: (mixture). Makes srca copy ofmixture, with volumes taken into account. | 
| get_by_flag | Args: (flag). As get_gases(), but only returns gases with the given flag. | 
| get_fuel_amount | Args: (temperature). Returns: how much fuel for fire is in the mixture at the given temperature. If temperature is omitted, just uses current temperature instead. | 
| get_gases | Returns: a list of the gases in the mixture, associated with their IDs. | 
| get_moles | Args: (gas_id). Returns: the amount of substance of the given gas, in moles. | 
| get_oxidation_power | Args: (temperature). Returns: how much oxidizer for fire is in the mixture at the given temperature. If temperature is omitted, just uses current temperature instead. | 
| heat_capacity | Returns: Heat capacity, in J/K (probably). | 
| mark_immutable | Marks the mix as immutable, meaning it will never change. This cannot be undone. | 
| merge | Args: (mixture). Merges the gas from the giver into src, without modifying the giver mix. | 
| multiply | Args: (coefficient). Multiplies all gases by this amount. | 
| partial_heat_capacity | Args: (gas_id). Returns the heat capacity from the given gas, in J/K (probably). | 
| react | Args: (holder). Runs all reactions on this gas mixture. Holder is used by the reactions, and can be any arbitrary datum or null. | 
| release_gas_to | Releases gas from src to output air. This means that it can not transfer air to gas mixture with higher pressure. | 
| return_pressure | Returns: the mix's pressure, in kilopascals. | 
| return_temperature | Returns: the mix's temperature, in kelvins. | 
| return_volume | Returns: the mix's volume, in liters. | 
| scrub_into | Args: (mixture, ratio, gas_list). Takes gases given by gas_listand movesratioamount of those gases fromsrcintomixture. | 
| set_min_heat_capacity | Args: (min_heat_cap). Sets the mix's minimum heat capacity. | 
| set_moles | Args: (gas_id, moles). Sets the amount of substance of the given gas, in moles. | 
| set_temperature | Args: (temperature). Sets the temperature of the mixture. Will be set to 2.7 if it's too low. | 
| set_volume | Args: (volume). Sets the volume of the gas. | 
| subtract | Args: (amount). Subtracts the given amount from each gas. | 
| temperature_share | Args: (src, mixture, conductivity) or (src, conductivity, temperature, heat_capacity). Adjusts temperature of src based on parameters. Returns: temperature of sharer after sharing is complete. | 
| thermal_energy | Returns: the mix's thermal energy, the product of the mixture's heat capacity and its temperature. | 
| total_moles | Returns: Amount of substance, in moles. | 
| transfer_ratio_to | Args: (mixture, ratio). Transfers ratioofsrctomixture. | 
| transfer_to | Args: (mixture, amount). Takes the amountgiven and transfers it fromsrctomixture. | 
Var Details
gas_list_view_only
            
        
    
            
        
        Never ever set this variable, hooked into vv_get_var for view variables viewing.
Proc Details
__auxtools_parse_gas_string
Returns: true. Parses gas strings like "o2=2500;plasma=5000;TEMP=370" and turns src mixes into the parsed gas mixture, invalid patterns will be ignored
__gasmixture_register
Fills in the first unused slot in the gas mixtures vector, or adds another one, then sets the argument ByondValue to point to it.
__gasmixture_unregister
Adds the gas mixture's ID to the queue of mixtures that have been deleted, to be reused later. This version is only if auxcleanup is not being used; it should be called from /datum/gas_mixture/Del.
__remove
Args: (mixture, amount). Takes the given amount of gas from src and puts it into the argument mixture. Amount is amount of substance in moles.
__remove_by_flag
Args: (mixture, flag, amount). Takes amount from src that have the given flag and puts them into the given mixture. Returns: 0 if gas didn't have any with that flag, 1 if it did.
__remove_ratio
Args: (mixture, ratio). Takes the given ratio of gas from src and puts it into the argument mixture. Ratio is a number between 0 and 1.
add
Args: (amount). Adds the given amount to each gas.
adjust_heat
Args: (heat). Adds a given amount of heat to the mixture, i.e. in joules taking into account capacity.
adjust_moles
Args: (gas_id, moles). Adjusts the given gas's amount by the given amount, e.g. (GAS_O2, -0.1) will remove 0.1 moles of oxygen from the mixture.
adjust_moles_temp
Args: (gas_id, moles, temp). Adjusts the given gas's amount by the given amount, with that gas being treated as if it is at the given temperature.
adjust_multi
Args: (gas_id_1, amount_1, gas_id_2, amount_2, ...). As adjust_moles, but with variadic arguments.
clear
Clears the gas mixture my removing all of its gases.
compare
Returns: true if the two mixtures are different enough for processing, false otherwise.
copy_from
Arg: (mixture). Makes src into a copy of the argument mixture.
divide
Args: (coefficient). Divides all gases by this amount.
equalize
Distributes the contents of two mixes equally between themselves
equalize_with
Args: (mixture). Makes src a copy of mixture, with volumes taken into account.
get_by_flag
Args: (flag). As get_gases(), but only returns gases with the given flag.
get_fuel_amount
Args: (temperature). Returns: how much fuel for fire is in the mixture at the given temperature. If temperature is omitted, just uses current temperature instead.
get_gases
Returns: a list of the gases in the mixture, associated with their IDs.
get_moles
Args: (gas_id). Returns: the amount of substance of the given gas, in moles.
get_oxidation_power
Args: (temperature). Returns: how much oxidizer for fire is in the mixture at the given temperature. If temperature is omitted, just uses current temperature instead.
heat_capacity
Returns: Heat capacity, in J/K (probably).
mark_immutable
Marks the mix as immutable, meaning it will never change. This cannot be undone.
merge
Args: (mixture). Merges the gas from the giver into src, without modifying the giver mix.
multiply
Args: (coefficient). Multiplies all gases by this amount.
partial_heat_capacity
Args: (gas_id). Returns the heat capacity from the given gas, in J/K (probably).
react
Args: (holder). Runs all reactions on this gas mixture. Holder is used by the reactions, and can be any arbitrary datum or null.
release_gas_to
Releases gas from src to output air. This means that it can not transfer air to gas mixture with higher pressure.
return_pressure
Returns: the mix's pressure, in kilopascals.
return_temperature
Returns: the mix's temperature, in kelvins.
return_volume
Returns: the mix's volume, in liters.
scrub_into
Args: (mixture, ratio, gas_list). Takes gases given by gas_list and moves ratio amount of those gases from src into mixture.
set_min_heat_capacity
Args: (min_heat_cap). Sets the mix's minimum heat capacity.
set_moles
Args: (gas_id, moles). Sets the amount of substance of the given gas, in moles.
set_temperature
Args: (temperature). Sets the temperature of the mixture. Will be set to 2.7 if it's too low.
set_volume
Args: (volume). Sets the volume of the gas.
subtract
Args: (amount). Subtracts the given amount from each gas.
temperature_share
Args: (src, mixture, conductivity) or (src, conductivity, temperature, heat_capacity). Adjusts temperature of src based on parameters. Returns: temperature of sharer after sharing is complete.
thermal_energy
Returns: the mix's thermal energy, the product of the mixture's heat capacity and its temperature.
total_moles
Returns: Amount of substance, in moles.
transfer_ratio_to
Args: (mixture, ratio). Transfers ratio of src to mixture.
transfer_to
Args: (mixture, amount). Takes the amount given and transfers it from src to mixture.