Space Station 13 - Modules - TypesVar Details - Proc Details

obj

Vars

acid_levelHow much acid is on this object?
being_shockedIs this object currently being zapped by lightning?
can_be_hitCan this object be attacked in melee?
custom_fire_overlayIf provided, a custom overlay representing being the object being on fire.
damage_deflectionDamage under this value will be completely ignored.
damtypeWhat type of damage does this object deal?
emaggedIs this object emagged?
forceHow much damage this object does in melee.
force_blueprintsForces the object to be on the blueprints, regardless of when it was created.
in_useIf we have a user using us, this will become TRUE. We will check if the user has stopped using us, and thus stop updating and LAGGING EVERYTHING!
integrity_failureHealth threshold below which the object will break. Defaults to 0 for no special broken behavior.
max_integrityMaximum health of the object, and default value of obj_integrity.
obj_integrityHealth of the object. If unspecified, defaults to max_integrity.
on_blueprintsAre we visible on the station blueprints at roundstart?
origin_techUsed by R&D to determine what research bonuses it grants.
req_accessA list of accesses as defined by code/__DEFINES/access_defines.dm. All accesses are required when checking.
req_one_accessA list of accesses as defined by code/__DEFINES/access_defines.dm. At least one access is required when checking.
resistance_flagsFlags that make this object harder to destroy, e.g. [ACID_PROOF], [FIRE_PROOF], [INDESTRUCTIBLE].
sharpCan this object cut?
species_exceptionA list of otherwise restricted /datum/species type paths that are permitted to wear this item.
speed_processShould this object speed process? Greatly increases the frequency of process events (5 times more frequent).
suicidal_handsDoes this object require you to hold it to commit suicide with it?

Procs

GetExplosionBlockreturns how much the object blocks an explosion. Used by subtypes.
acid_actthe obj's reaction when touched by acid
acid_meltcalled when the obj is destroyed by acid.
acid_processingthe proc called by the acid subsystem to process the acid that's on the obj
bitmask_smoothObject override to prevent unanchored objects from smoothing
burncalled when the obj is destroyed by fire
calculate_oneshot_damagereturns the amount of damage required to destroy this object in a single hit.
default_unfasten_wrenchHandles (un)anchoring. Returns TRUE if successful, otherwise returns FALSE.
default_welder_repairReturns TRUE if the object was successfully repaired. Fully repairs an object (setting BROKEN to FALSE), default repair time = 40.
extinguishCalled when the obj is no longer on fire.
fire_actFIRE
force_eject_occupantThis proc handles safely removing occupant mobs from the object if they must be teleported out (due to being SSD/AFK, by admin teleport, etc) or transformed.
gender_revealCreates an animation of the item slowly lifting up from the floor with a colored outline, then slowly drifting back down. Arguments:
hulk_damageCalled to get the damage that hulks will deal to the obj.
modify_max_integritychanges max_integrity while retaining current health percentage, returns TRUE if the obj got broken.
obj_destructionwhat happens when the obj's integrity reaches zero.
play_attack_soundthe sound played when the obj is damaged.
remove_gender_reveal_fxRemoves the non-animate effects from above proc
run_obj_armorreturns the damage value of the attack after processing the obj's various armor protections
set_sharpnessSet whether the item should be sharp or not
suicide_actOverride this to enable special self-termination interactions on an object when using the suicide command.
ui_login_actCall this from a proc that is called in ui_act() to process login actions
ui_login_attackbyConvenience function to perform login actions when the source object is hit by specific items.
ui_login_dataAppends login state data.
ui_login_ejectAttempts to eject the inserted ID.
ui_login_getReturns (or creates) the login state for the source object.
ui_login_insertAttempts to insert an object as an ID.
ui_login_loginAttempts to log in with the given login type.
ui_login_logoutAttempts to log out.
ui_login_on_loginCalled on successful login.
ui_login_on_logoutCalled on successful logout.
zap_actCalled when the obj is hit by a tesla bolt.
zap_buckle_checkOnly tesla coils, vehicles, and grounding rods currently call this because mobs are already targeted over all other objects, but this might be useful for more things later.

Var Details

acid_level

How much acid is on this object?

being_shocked

Is this object currently being zapped by lightning?

can_be_hit

Can this object be attacked in melee?

custom_fire_overlay

If provided, a custom overlay representing being the object being on fire.

damage_deflection

Damage under this value will be completely ignored.

damtype

What type of damage does this object deal?

emagged

Is this object emagged?

force

How much damage this object does in melee.

force_blueprints

Forces the object to be on the blueprints, regardless of when it was created.

in_use

If we have a user using us, this will become TRUE. We will check if the user has stopped using us, and thus stop updating and LAGGING EVERYTHING!

integrity_failure

Health threshold below which the object will break. Defaults to 0 for no special broken behavior.

max_integrity

Maximum health of the object, and default value of obj_integrity.

obj_integrity

Health of the object. If unspecified, defaults to max_integrity.

on_blueprints

Are we visible on the station blueprints at roundstart?

origin_tech

Used by R&D to determine what research bonuses it grants.

req_access

A list of accesses as defined by code/__DEFINES/access_defines.dm. All accesses are required when checking.

req_one_access

A list of accesses as defined by code/__DEFINES/access_defines.dm. At least one access is required when checking.

resistance_flags

Flags that make this object harder to destroy, e.g. [ACID_PROOF], [FIRE_PROOF], [INDESTRUCTIBLE].

sharp

Can this object cut?

species_exception

A list of otherwise restricted /datum/species type paths that are permitted to wear this item.

speed_process

Should this object speed process? Greatly increases the frequency of process events (5 times more frequent).

suicidal_hands

Does this object require you to hold it to commit suicide with it?

Proc Details

GetExplosionBlock

returns how much the object blocks an explosion. Used by subtypes.

acid_act

the obj's reaction when touched by acid

acid_melt

called when the obj is destroyed by acid.

acid_processing

the proc called by the acid subsystem to process the acid that's on the obj

bitmask_smooth

Object override to prevent unanchored objects from smoothing

burn

called when the obj is destroyed by fire

calculate_oneshot_damage

returns the amount of damage required to destroy this object in a single hit.

default_unfasten_wrench

Handles (un)anchoring. Returns TRUE if successful, otherwise returns FALSE.

default_welder_repair

Returns TRUE if the object was successfully repaired. Fully repairs an object (setting BROKEN to FALSE), default repair time = 40.

extinguish

Called when the obj is no longer on fire.

fire_act

FIRE

force_eject_occupant

This proc handles safely removing occupant mobs from the object if they must be teleported out (due to being SSD/AFK, by admin teleport, etc) or transformed.

gender_reveal

Creates an animation of the item slowly lifting up from the floor with a colored outline, then slowly drifting back down. Arguments:

hulk_damage

Called to get the damage that hulks will deal to the obj.

modify_max_integrity

changes max_integrity while retaining current health percentage, returns TRUE if the obj got broken.

obj_destruction

what happens when the obj's integrity reaches zero.

play_attack_sound

the sound played when the obj is damaged.

remove_gender_reveal_fx

Removes the non-animate effects from above proc

run_obj_armor

returns the damage value of the attack after processing the obj's various armor protections

set_sharpness

Set whether the item should be sharp or not

suicide_act

Override this to enable special self-termination interactions on an object when using the suicide command.

ui_login_act

Call this from a proc that is called in ui_act() to process login actions

Arguments:

ui_login_attackby

Convenience function to perform login actions when the source object is hit by specific items.

Arguments:

ui_login_data

Appends login state data.

Arguments:

ui_login_eject

Attempts to eject the inserted ID.

Arguments:

ui_login_get

Returns (or creates) the login state for the source object.

Arguments:

ui_login_insert

Attempts to insert an object as an ID.

Arguments:

ui_login_login

Attempts to log in with the given login type.

Arguments:

ui_login_logout

Attempts to log out.

Arguments:

ui_login_on_login

Called on successful login.

Arguments:

ui_login_on_logout

Called on successful logout.

Arguments:

zap_act

Called when the obj is hit by a tesla bolt.

zap_buckle_check

Only tesla coils, vehicles, and grounding rods currently call this because mobs are already targeted over all other objects, but this might be useful for more things later.