/tg/ Station 13 - Modules - TypesVar Details - Proc Details

reagents

Holder for a bunch of /datum/reagent

Vars

addiction_listcurrently addicted reagents
addiction_ticksee /datum/reagents/proc/metabolize for usage
chem_tempCurrent temp of the holder volume
flagsvarious flags, see code__DEFINES\reagents.dm
last_tickunused
maximum_volumeMax volume of this holder
my_atomThe atom this holder is attached to
reagent_listThe reagents being held
total_volumeCurrent volume of all the reagents

Procs

add_reagentAdds a reagent to this holder
add_reagent_listLike add_reagent but you can enter a list. Format it like this: list(/datum/reagent/toxin = 10, "beer" = 15)
clear_reagentsRemoves all reagents
conditional_updateCalls /datum/reagent/proc/on_update on every reagent in this holder
conditional_update_moveCalls /datum/reagent/proc/on_move on every reagent in this holder
copy_dataShallow copies (deep copy of viruses) data from the provided reagent into our copy of that reagent
copy_toCopies the reagents to the target object
del_reagentFuck this one reagent
end_metabolizationSignals that metabolization has stopped, triggering the end of trait-based effects
exposeApplies the relevant expose_ proc for every reagent in this holder
expose_singleSame as /datum/reagents/proc/expose but only for one reagent
expose_temperatureApplies heat to this holder
generate_taste_messageReturns what this holder's reagents taste like
get_datahelper function to preserve data across reactions (needed for xenoarch)
get_master_reagentGet a reference to the reagent there is the most of in this holder
get_master_reagent_idGet the id of the reagent there is the most of in this holder
get_master_reagent_nameGet the name of the reagent there is the most of in this holder
get_reagentGet a reference to the reagent if it exists
get_reagent_amountGet the amount of this reagent
get_reagentsGet a comma separated string of every reagent name in this holder
handle_reactionsHandle any reactions possible in this holder
holder_fullIs this holder full or not
isolate_reagentRemove every reagent except this one
log_listUsed in attack logs for reagents in pills and such
metabolizeTriggers metabolizing the reagents in this holder
remove_addictionRemoves addiction to a specific reagent on /datum/reagents/var/my_atom
remove_allRemoves all reagents from this holder
remove_all_typeRemoves all reagent of X type. @strict set to 1 determines whether the childs of the type are included.
remove_anyRemove an amount of reagents without caring about what they are
remove_reagentRemove a specific reagent
set_datahelper function to preserve data across reactions (needed for xenoarch)
specific_heatReturns the average specific heat for all reagents currently in this holder.
trans_id_toTransfer a specific reagent id to the target object
trans_toTransfer some stuff from this holder to a target object
update_totalUpdates /datum/reagents/var/total_volume

Var Details

addiction_list

currently addicted reagents

addiction_tick

see /datum/reagents/proc/metabolize for usage

chem_temp

Current temp of the holder volume

flags

various flags, see code__DEFINES\reagents.dm

last_tick

unused

maximum_volume

Max volume of this holder

my_atom

The atom this holder is attached to

reagent_list

The reagents being held

total_volume

Current volume of all the reagents

Proc Details

add_reagent

Adds a reagent to this holder

Arguments:

add_reagent_list

Like add_reagent but you can enter a list. Format it like this: list(/datum/reagent/toxin = 10, "beer" = 15)

clear_reagents

Removes all reagents

conditional_update

Calls /datum/reagent/proc/on_update on every reagent in this holder

Arguments:

conditional_update_move

Calls /datum/reagent/proc/on_move on every reagent in this holder

Arguments:

copy_data

Shallow copies (deep copy of viruses) data from the provided reagent into our copy of that reagent

copy_to

Copies the reagents to the target object

del_reagent

Fuck this one reagent

end_metabolization

Signals that metabolization has stopped, triggering the end of trait-based effects

expose

Applies the relevant expose_ proc for every reagent in this holder

expose_single

Same as /datum/reagents/proc/expose but only for one reagent

expose_temperature

Applies heat to this holder

generate_taste_message

Returns what this holder's reagents taste like

Arguments:

get_data

helper function to preserve data across reactions (needed for xenoarch)

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

Get a reference to the reagent if it exists

get_reagent_amount

Get the amount of this reagent

get_reagents

Get a comma separated string of every reagent name in this holder

handle_reactions

Handle any reactions possible in this holder

holder_full

Is this holder full or not

isolate_reagent

Remove every reagent except this one

log_list

Used in attack logs for reagents in pills and such

Arguments:

metabolize

Triggers metabolizing the reagents in this holder

Arguments:

remove_addiction

Removes addiction to a specific reagent on /datum/reagents/var/my_atom

remove_all

Removes all reagents from this holder

remove_all_type

Removes all reagent of X type. @strict set to 1 determines whether the childs of the type are included.

remove_any

Remove an amount of reagents without caring about what they are

remove_reagent

Remove a specific reagent

set_data

helper function to preserve data across reactions (needed for xenoarch)

specific_heat

Returns the average specific heat for all reagents currently in this holder.

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:

update_total

Updates /datum/reagents/var/total_volume