reagents

Vars | |
addiction_list | currently addicted reagents |
---|---|
addiction_tick | see /datum/reagents/proc/metabolize for usage |
chem_temp | Current temp of the holder volume |
last_tick | unused |
maximum_volume | Max volume of this holder |
my_atom | The atom this holder is attached to |
reagent_flags | various flags, see code__DEFINES\reagents.dm |
reagent_list | The reagents being held |
total_volume | Current volume of all the reagents |
Procs | |
clear_reagents | Removes all reagents |
copy_to | Copies the reagents to the target object |
del_reagent | Remove a reagent datum with the type provided from this container. True if one is removed, false otherwise. |
get_holder | Getter proc for our atom holder |
get_master_reagent | Get a reference to the reagent there is the most of in this holder |
get_master_reagent_id | Get the id of the reagent there is the most of in this holder |
get_master_reagent_name | Get the name of the reagent there is the most of in this holder |
get_reagent | Returns a regent if it is in this datum |
get_reagents | Returns a list of all reagents in this datum |
log_list | Used in attack logs for reagents in pills and such |
metabolize | Triggers metabolizing the reagents in this holder |
remove_all | Removes all reagents from this holder |
remove_any | Remove an amount of reagents without caring about what they are |
remove_reagent | Like add_reagent but you can enter a list. Format it like this: list(/datum/reagent/toxin = 10, /datum/reagent/consumable/ethanol/beer = 15) |
trans_id_to | Transfer a specific reagent id to the target object |
trans_to | Transfer some stuff from this holder to a target object |
Var Details
addiction_list

currently addicted reagents
addiction_tick

see /datum/reagents/proc/metabolize for usage
chem_temp

Current temp of the holder volume
last_tick

unused
maximum_volume

Max volume of this holder
my_atom

The atom this holder is attached to
reagent_flags

various flags, see code__DEFINES\reagents.dm
reagent_list

The reagents being held
total_volume

Current volume of all the reagents
Proc Details
clear_reagents
Removes all reagents
copy_to
Copies the reagents to the target object
del_reagent
Remove a reagent datum with the type provided from this container. True if one is removed, false otherwise.
get_holder
Getter proc for our atom holder
get_master_reagent
Get a reference to the reagent there is the most of in this holder
get_master_reagent_id
Get the id of the reagent there is the most of in this holder
get_master_reagent_name
Get the name of the reagent there is the most of in this holder
get_reagent
Returns a regent if it is in this datum
get_reagents
Returns a list of all reagents in this datum
log_list
Used in attack logs for reagents in pills and such
Arguments:
- external_list - list of reagent types = amounts
metabolize
Triggers metabolizing the reagents in this holder
Arguments:
- mob/living/carbon/C - The mob to metabolize in, if null it uses /datum/reagents/var/my_atom
- can_overdose - Allows overdosing
- liverless - Stops reagents that aren't set as /datum/reagent/var/self_consuming from metabolizing
remove_all
Removes all reagents from this holder
remove_any
Remove an amount of reagents without caring about what they are
remove_reagent
Like add_reagent but you can enter a list. Format it like this: list(/datum/reagent/toxin = 10, /datum/reagent/consumable/ethanol/beer = 15)
trans_id_to
Transfer a specific reagent id to the target object
trans_to
Transfer some stuff from this holder to a target object
Arguments:
- obj/target - Target to attempt transfer to
- amount - amount of reagent volume to transfer
- multiplier - multiplies amount of each reagent by this number
- preserve_data - if preserve_data=0, the reagents data will be lost. Usefull if you use data for some strange stuff and don't want it to be transferred.
- no_react - passed through to [/datum/reagents/proc/add_reagent]
- mob/transfered_by - used for logging
- remove_blacklisted - skips transferring of reagents with can_synth = FALSE
- method - passed through to [/datum/reagents/proc/react_single] and [/datum/reagent/proc/on_transfer]
- show_message - passed through to [/datum/reagents/proc/react_single]
- round_robin - if round_robin=TRUE, so transfer 5 from 15 water, 15 sugar and 15 plasma becomes 10, 15, 15 instead of 13.3333, 13.3333 13.3333. Good if you hate floating point errors