/tg/ Station 13 - Modules - TypesDefine Details

code/__DEFINES/living.dm

MOVES_ON_ITS_OWNSimple mob trait, indicating it may follow continuous move actions controlled by code instead of by user input.
ALWAYS_DEATHGASPAlways does *deathgasp when they die If unset mobs will only deathgasp if supplied a death sound or custom death message
QUEUE_NUTRITION_UPDATENutrition changed last life tick, so we should bulk update this tick
COMSIG_LIVING_LIMBLESS_MOVESPEED_UPDATEUpdating a mob's movespeed when lacking limbs. (list/modifiers)
COMSIG_CARBON_PAIN_GAINEDSent when a carbon gains pain. (source = mob/living/carbon/human, obj/item/bodypart/affected_bodypart, amount, type)
COMSIG_CARBON_PAIN_LOSTSent when a carbon loses pain. (source = mob/living/carbon/human, obj/item/bodypart/affected_bodypart, amount, type)
COMISG_TEMPERATURE_PACK_ENABLEDSent when a temperature pack is applied to a mob. (source = obj/item/temperature_pack)
COMSIG_TEMPERATURE_PACK_EXPIREDSent when a temperature pack runs out of juice. (source = obj/item/temperature_pack)
HOMEOSTASIS_HANDLEDReturn to do no homeostasis at all
HOMEOSTASIS_NO_HUNGERReturn to not reduce hunger at all
COMSIG_HUMAN_ON_HANDLE_BREATH_TEMPERATURESend when sharing body temperature to breath
HANDLE_BREATH_TEMPERATURE_HANDLEDStops further processing
COMSIG_MOVABLE_PINNING_MOBMovable is pinning a mob (source = the mob doing the pinning, mob/living/pinned_mob)
COMSIG_MOVABLE_UNPINNING_MOBMovable is unpinning a mob (source = the mob doing the unpinning, mob/living/unpinned_mob)
COMSIG_LIVING_PINNED_BYLiving mob is being pinned by some movable (source = the movable doing the pinning, atom/movable/pinning)
COMSIG_LIVING_UNPINNED_BYLiving mob is being unpinned by some movable (source = the movable doing the unpinning, atom/movable/unpinning)
BODY_ZONES_ALLVarious lists of body zones affected by pain.
PAIN_EMOTESList of some emotes that convey pain.
PAIN_LIMB_DISMEMBEREDAmount of pain gained (to chest) from dismembered limb
PAIN_LIMB_REMOVEDAmount of pain gained (to chest) from surgically removed limb
MAX_TRAUMATIC_SHOCKCap on shock level
MAX_LIMB_PAINHard cap on pain level
CAN_FEEL_PAINChecks if a mob can feel pain.
TRAIT_ABATES_SHOCKIf the mob enters shock, they will have +1 cure condition (helps cure it faster)
TRAIT_SOFT_CRITAll this trait does is change your stat to soft crit, which itself doesn't do much, but as your stat is changed many stat checks will block you (such as using the radio)
TRAIT_LABOURED_BREATHINGSkip a breath once in every x breaths (where x is ticks between breaths)
TRAIT_ASSISTED_BREATHINGBlocks losebreath from accumulating from things such as heart attacks or choking
TRAIT_NO_ORGAN_DECAYStops organs from decaying while dead
TRAIT_NO_GRAB_SPEED_PENALTYDon't get slowed down by aggro grabbing (or above)
TRAIT_NO_MOVE_PULLDoesn't let a mob shift this atom around with move_pulled
TRAIT_CPR_CERTIFIEDDoes not harm patients when undergoing CPR
TRAIT_HEART_RATE_BOOSTBoosts the heart rate of the mob (raises blood pressure) One application of the trait translates to +10 bpm, which may translate to +10 blood pressure
TRAIT_HEART_RATE_SLOWSlows the heart rate of the mob (lowers blood pressure) One application of the trait translates to -10 bpm, which may translate to -10 blood pressure
TRAIT_VASOCONSTRICTEDConstricts blood vessels (raises blood pressure) One application of the trait translates to +0.2 "vasoconstriction", which is a +0.2 multiplier to blood pressure
TRAIT_VASODILATEDDilates blood vessels (lowers blood pressure) One application of the trait translates to -0.2 "vasodilation", which is a -0.2 multiplier to blood pressure
TRAIT_HEART_RATE_STABILIZEDAttempts to stabilize the heart, boosting it if it's too slow and slowing it if it's too fast.
TRAIT_ROBOTIC_LIMBATTACHMENTThe trait that determines if someone has the robotic limb reattachment quirk.
TRAIT_NO_LEG_AIDMob can walk despite having two disabled/missing legs so long as they have two of this trait. Kind of jank, refactor at a later day when I can think of a better solution. Just be sure to call update_limbless_locomotion() after applying / removal
TRAIT_CLOSED_EYESEyelids are closed so long as this trait is present
TRAIT_TURF_PROJECTS_WHISPERSAttach to a turf to have whispers project across it if the speaker is facing it (basically expanding the range of whispers by one tile in the direction of the speaker) Used to allow people to whisper across desks/tables since they otherwise are too distant
SELECT_LEFT_OR_RIGHTHelper for picking between left or right when given a value Used primarily for hand or foot indexes
CKEY_ANONHide ckey
NAME_ANONHide character name
JOB_ANONHide top job preference
MAX_OXYLOSSCalculates oxyloss cap
UPDATE_SELF_DAMAGECall update_damage_hud()
UPDATE_SELF_HEALTHCall update_health_hud()
UPDATE_MEDHUD_HEALTHCall med_hud_set_health()
UPDATE_MEDHUD_STATUSCall med_hud_set_status()
UPDATE_CONCall update_conscisouness()
UPDATE_MEDHUDUpdates the entire medhud
UPDATE_SELFUpdates associated self-huds on the mob
SLOW_HEARTBEAT_THRESHOLDThreshold that heart beat becomes "slow"
FAST_HEARTBEAT_THRESHOLDThreshold that heart beat becomes "fast"
DANGER_HEARTBEAT_THRESHOLDThreshold that heart beat starts to cause heart damaage
DEADLY_HEARTBEAT_THRESHOLDThreshold that heart beat's heart damage doubles and it has a chance to stop outright
TRAIT_BLOCK_HEADSET_USEDisables headset use, but not internal radio / intercom use
BASE_MOVEMENT_HUNGER_DRAINCalculates hunger drain per step taken
IS_MOVING_INTENTIONALLYChecks if a mob is moving intentionally (ie, nothing is forcing them to move like another mob or a conveyor)
TRAIT_SMALLDwarf but without some side effects
TRAIT_HUGEGiant but without some side effects
EXAMINING_WHATFormats text for an object for a mob that they are examining
WITNESSING_EXAMINE_WHATFormats text for an object for a mob witnessing another mob examining it
examining_span_normalFor consistent examine span formatting (normal size)
examining_span_smallFor consistent examine span formatting (small size)
SMELL_INTENSITY_FAINTVery faint - Often low enough to not noticed, but if noticed, people get used to it quickly
SMELL_INTENSITY_WEAKWill be noticed for a short time but eventually people get used to it
SMELL_INTENSITY_MODERATENoticable, will take a while to get used to
SMELL_INTENSITY_STRONGVery strong, hard to ignore, very unlikely to get used to
SMELL_INTENSITY_OVERPOWERINGOverpowers all other smells, extremely hard to ignore
IS_PHYSICAL_DAMAGEDamtype is "physical" like a slap to the face
IS_DISABLING_DAMAGEDamtype is intended to disable rather than kill

Define Details

ALWAYS_DEATHGASP

Always does *deathgasp when they die If unset mobs will only deathgasp if supplied a death sound or custom death message

BASE_MOVEMENT_HUNGER_DRAIN

Calculates hunger drain per step taken

BODY_ZONES_ALL

Various lists of body zones affected by pain.

CAN_FEEL_PAIN

Checks if a mob can feel pain.

CKEY_ANON

Hide ckey

COMISG_TEMPERATURE_PACK_ENABLED

Sent when a temperature pack is applied to a mob. (source = obj/item/temperature_pack)

COMSIG_CARBON_PAIN_GAINED

Sent when a carbon gains pain. (source = mob/living/carbon/human, obj/item/bodypart/affected_bodypart, amount, type)

COMSIG_CARBON_PAIN_LOST

Sent when a carbon loses pain. (source = mob/living/carbon/human, obj/item/bodypart/affected_bodypart, amount, type)

COMSIG_HUMAN_ON_HANDLE_BREATH_TEMPERATURE

Send when sharing body temperature to breath

COMSIG_LIVING_LIMBLESS_MOVESPEED_UPDATE

Updating a mob's movespeed when lacking limbs. (list/modifiers)

COMSIG_LIVING_PINNED_BY

Living mob is being pinned by some movable (source = the movable doing the pinning, atom/movable/pinning)

COMSIG_LIVING_UNPINNED_BY

Living mob is being unpinned by some movable (source = the movable doing the unpinning, atom/movable/unpinning)

COMSIG_MOVABLE_PINNING_MOB

Movable is pinning a mob (source = the mob doing the pinning, mob/living/pinned_mob)

COMSIG_MOVABLE_UNPINNING_MOB

Movable is unpinning a mob (source = the mob doing the unpinning, mob/living/unpinned_mob)

COMSIG_TEMPERATURE_PACK_EXPIRED

Sent when a temperature pack runs out of juice. (source = obj/item/temperature_pack)

DANGER_HEARTBEAT_THRESHOLD

Threshold that heart beat starts to cause heart damaage

DEADLY_HEARTBEAT_THRESHOLD

Threshold that heart beat's heart damage doubles and it has a chance to stop outright

EXAMINING_WHAT

Formats text for an object for a mob that they are examining

FAST_HEARTBEAT_THRESHOLD

Threshold that heart beat becomes "fast"

HANDLE_BREATH_TEMPERATURE_HANDLED

Stops further processing

HOMEOSTASIS_HANDLED

Return to do no homeostasis at all

HOMEOSTASIS_NO_HUNGER

Return to not reduce hunger at all

IS_DISABLING_DAMAGE

Damtype is intended to disable rather than kill

IS_MOVING_INTENTIONALLY

Checks if a mob is moving intentionally (ie, nothing is forcing them to move like another mob or a conveyor)

IS_PHYSICAL_DAMAGE

Damtype is "physical" like a slap to the face

JOB_ANON

Hide top job preference

MAX_LIMB_PAIN

Hard cap on pain level

MAX_OXYLOSS

Calculates oxyloss cap

MAX_TRAUMATIC_SHOCK

Cap on shock level

MOVES_ON_ITS_OWN

Simple mob trait, indicating it may follow continuous move actions controlled by code instead of by user input.

NAME_ANON

Hide character name

PAIN_EMOTES

List of some emotes that convey pain.

PAIN_LIMB_DISMEMBERED

Amount of pain gained (to chest) from dismembered limb

PAIN_LIMB_REMOVED

Amount of pain gained (to chest) from surgically removed limb

QUEUE_NUTRITION_UPDATE

Nutrition changed last life tick, so we should bulk update this tick

SELECT_LEFT_OR_RIGHT

Helper for picking between left or right when given a value Used primarily for hand or foot indexes

SLOW_HEARTBEAT_THRESHOLD

Threshold that heart beat becomes "slow"

SMELL_INTENSITY_FAINT

Very faint - Often low enough to not noticed, but if noticed, people get used to it quickly

SMELL_INTENSITY_MODERATE

Noticable, will take a while to get used to

SMELL_INTENSITY_OVERPOWERING

Overpowers all other smells, extremely hard to ignore

SMELL_INTENSITY_STRONG

Very strong, hard to ignore, very unlikely to get used to

SMELL_INTENSITY_WEAK

Will be noticed for a short time but eventually people get used to it

TRAIT_ABATES_SHOCK

If the mob enters shock, they will have +1 cure condition (helps cure it faster)

TRAIT_ASSISTED_BREATHING

Blocks losebreath from accumulating from things such as heart attacks or choking

TRAIT_BLOCK_HEADSET_USE

Disables headset use, but not internal radio / intercom use

TRAIT_CLOSED_EYES

Eyelids are closed so long as this trait is present

TRAIT_CPR_CERTIFIED

Does not harm patients when undergoing CPR

TRAIT_HEART_RATE_BOOST

Boosts the heart rate of the mob (raises blood pressure) One application of the trait translates to +10 bpm, which may translate to +10 blood pressure

TRAIT_HEART_RATE_SLOW

Slows the heart rate of the mob (lowers blood pressure) One application of the trait translates to -10 bpm, which may translate to -10 blood pressure

TRAIT_HEART_RATE_STABILIZED

Attempts to stabilize the heart, boosting it if it's too slow and slowing it if it's too fast.

TRAIT_HUGE

Giant but without some side effects

TRAIT_LABOURED_BREATHING

Skip a breath once in every x breaths (where x is ticks between breaths)

TRAIT_NO_GRAB_SPEED_PENALTY

Don't get slowed down by aggro grabbing (or above)

TRAIT_NO_LEG_AID

Mob can walk despite having two disabled/missing legs so long as they have two of this trait. Kind of jank, refactor at a later day when I can think of a better solution. Just be sure to call update_limbless_locomotion() after applying / removal

TRAIT_NO_MOVE_PULL

Doesn't let a mob shift this atom around with move_pulled

TRAIT_NO_ORGAN_DECAY

Stops organs from decaying while dead

TRAIT_ROBOTIC_LIMBATTACHMENT

The trait that determines if someone has the robotic limb reattachment quirk.

TRAIT_SMALL

Dwarf but without some side effects

TRAIT_SOFT_CRIT

All this trait does is change your stat to soft crit, which itself doesn't do much, but as your stat is changed many stat checks will block you (such as using the radio)

TRAIT_TURF_PROJECTS_WHISPERS

Attach to a turf to have whispers project across it if the speaker is facing it (basically expanding the range of whispers by one tile in the direction of the speaker) Used to allow people to whisper across desks/tables since they otherwise are too distant

TRAIT_VASOCONSTRICTED

Constricts blood vessels (raises blood pressure) One application of the trait translates to +0.2 "vasoconstriction", which is a +0.2 multiplier to blood pressure

TRAIT_VASODILATED

Dilates blood vessels (lowers blood pressure) One application of the trait translates to -0.2 "vasodilation", which is a -0.2 multiplier to blood pressure

UPDATE_CON

Call update_conscisouness()

UPDATE_MEDHUD

Updates the entire medhud

UPDATE_MEDHUD_HEALTH

Call med_hud_set_health()

UPDATE_MEDHUD_STATUS

Call med_hud_set_status()

UPDATE_SELF

Updates associated self-huds on the mob

UPDATE_SELF_DAMAGE

Call update_damage_hud()

UPDATE_SELF_HEALTH

Call update_health_hud()

WITNESSING_EXAMINE_WHAT

Formats text for an object for a mob witnessing another mob examining it

examining_span_normal

For consistent examine span formatting (normal size)

examining_span_small

For consistent examine span formatting (small size)