/datum/statusEffect
Our datum that keeps track of an individual status effect.
Vars | |
desc | Tooltip desc |
---|---|
duration | In deciseconds (tenths of a second, same as ticks just sane). A duration of NULL is infinite. (This is distinct from 0) |
effect_quality | If the effect is positive (buffs), negative (debuffs), or neutral (misc) |
exclusiveGroup | optional name of a group of buffs. players can only have a certain number of buffs of a given group - any new applications fail. useful for food buffs etc. |
icon_state | Icon state to display. |
id | Unique ID of the status effect |
maxDuration | If non-null, duration of the effect will be clamped to be max. this amount. |
move_triggered | has an on-move effect |
movement_modifier | Has a movement-modifying effect |
name | Tooltip name to display |
owner | Owner of the status effect |
track_cat | Put a label here to track anyone with this effect into this category |
unique | If true, this status effect can only have one instance on any given object. |
visible | Is this visible in the status effect bar? |
Procs | |
dropSweat | Called by some foods, use inside onUpdate(timePassed) |
getChefHint | Used to generate text specifically for the chef examining food. Otherwise fallbacks to getTooltip(). |
getExamine | Information that should show up when an object has this effect and is examined. |
getTooltip | Used to generate tooltip. Can be changed to have dynamic tooltips. |
onAdd | Called when the status is added to an object. owner is already set at this point. |
onChange | Called when the status is changed using setStatus. Called after duration is updated etc. |
onCheck | Called by hasStatus. Used to handle additional checks with the optional arg in that proc. |
onRemove | Called when the status is removed from the object. owner is still set at this point. |
onUpdate | Called every tick by the status controller. |
preCheck | Used to run a custom check before adding status to an object. For when you want something to be flat out immune or something. |
Var Details
desc
Tooltip desc
duration
In deciseconds (tenths of a second, same as ticks just sane). A duration of NULL is infinite. (This is distinct from 0)
effect_quality
If the effect is positive (buffs), negative (debuffs), or neutral (misc)
exclusiveGroup
optional name of a group of buffs. players can only have a certain number of buffs of a given group - any new applications fail. useful for food buffs etc.
icon_state
Icon state to display.
id
Unique ID of the status effect
maxDuration
If non-null, duration of the effect will be clamped to be max. this amount.
move_triggered
has an on-move effect
movement_modifier
Has a movement-modifying effect
name
Tooltip name to display
owner
Owner of the status effect
track_cat
Put a label here to track anyone with this effect into this category
unique
If true, this status effect can only have one instance on any given object.
visible
Is this visible in the status effect bar?
Proc Details
dropSweat
Called by some foods, use inside onUpdate(timePassed)
Required: sweatReagent - the chemical you're sweating
targetTurf should be left default
getChefHint
Used to generate text specifically for the chef examining food. Otherwise fallbacks to getTooltip().
getExamine
Information that should show up when an object has this effect and is examined.
getTooltip
Used to generate tooltip. Can be changed to have dynamic tooltips.
onAdd
Called when the status is added to an object. owner is already set at this point.
optional {optional} - arg from setStatus (passed in)
onChange
Called when the status is changed using setStatus. Called after duration is updated etc.
optional {optional} - arg from setStatus (passed in)
onCheck
Called by hasStatus. Used to handle additional checks with the optional arg in that proc.
onRemove
Called when the status is removed from the object. owner is still set at this point.
onUpdate
Called every tick by the status controller.
required {timePassed} - the actual time since the last update call.
preCheck
Used to run a custom check before adding status to an object. For when you want something to be flat out immune or something.
- return = 1 allow, 0 = do not allow