Yogstation 13 - Modules - TypesDefine Details

code/__DEFINES/movement.dm

DELAY_TO_GLIDE_SIZEBroken down, here's what this does: divides the world icon_size (32) by delay divided by ticklag to get the number of pixels something should be moving each tick. The division result is given a min value of 1 to prevent obscenely slow glide sizes from being set Then that's multiplied by the global glide size multiplier. 1.25 by default feels pretty close to spot on. This is just to try to get byond to behave. The whole result is then clamped to within the range above. Not very readable but it works
CURRENTLY_Z_FALLINGcurrently_z_moving defines. Higher numbers mean higher priority. This one is for falling down open space from stuff such as deleted tile, pit grate...
CURRENTLY_Z_MOVING_GENERICcurrently_z_moving is set to this in zMove() if 0.
CURRENTLY_Z_FALLING_FROM_MOVEThis one is for falling down open space from movement.
CURRENTLY_Z_ASCENDINGThis one is for going upstairs.
FALL_INTERCEPTEDpossible bitflag return values of [atom/proc/intercept_zImpact] calls Stops the movable from falling further and crashing on the ground. Example: stairs.
FALL_NO_MESSAGESuppresses the "[movable] falls through [old_turf]" message because it'd make little sense in certain contexts like climbing stairs.
FALL_STOP_INTERCEPTINGUsed when the whole intercept_zImpact forvar loop should be stopped. For example: when someone falls into the supermatter and becomes dust.
FALL_RETAIN_PULLUsed when the grip on a pulled object shouldn't be broken.
ZMOVE_CHECK_PULLINGRuns check_pulling() by the end of [/atom/movable/proc/zMove] for every movable that's pulling something. Should be kept enabled unless you know what you are doing.
ZMOVE_CHECK_PULLEDBYChecks if pulledby is nearby. if not, stop being pulled.
ZMOVE_FALL_CHECKSflags for different checks done in /atom/movable/proc/can_z_move. Should be self-explainatory.
ZMOVE_IGNORE_OBSTACLESDoesn't call zPassIn() and zPassOut()
ZMOVE_FEEDBACKGives players chat feedbacks if they're unable to move through z levels.
ZMOVE_ALLOW_BUCKLEDWhether we check the movable (if it exists) the living mob is buckled on or not.
ZMOVE_VENTCRAWLINGIf the movable is actually ventcrawling vertically.
ZMOVE_INCLUDE_PULLEDIncludes movables that're either pulled by the source or mobs buckled to it in the list of moving movables.
ZMOVE_ALLOW_ANCHOREDSkips check for whether the moving atom is anchored or not.
ZMOVE_FLIGHT_FLAGSFlags used in "Move Upwards" and "Move Downwards" verbs.
ZMOVE_STAIRS_FLAGSUsed when walking upstairs
ZMOVE_FALL_FLAGSUsed for falling down open space.

Define Details

CURRENTLY_Z_ASCENDING

This one is for going upstairs.

CURRENTLY_Z_FALLING

currently_z_moving defines. Higher numbers mean higher priority. This one is for falling down open space from stuff such as deleted tile, pit grate...

CURRENTLY_Z_FALLING_FROM_MOVE

This one is for falling down open space from movement.

CURRENTLY_Z_MOVING_GENERIC

currently_z_moving is set to this in zMove() if 0.

DELAY_TO_GLIDE_SIZE

Broken down, here's what this does: divides the world icon_size (32) by delay divided by ticklag to get the number of pixels something should be moving each tick. The division result is given a min value of 1 to prevent obscenely slow glide sizes from being set Then that's multiplied by the global glide size multiplier. 1.25 by default feels pretty close to spot on. This is just to try to get byond to behave. The whole result is then clamped to within the range above. Not very readable but it works

FALL_INTERCEPTED

possible bitflag return values of [atom/proc/intercept_zImpact] calls Stops the movable from falling further and crashing on the ground. Example: stairs.

FALL_NO_MESSAGE

Suppresses the "[movable] falls through [old_turf]" message because it'd make little sense in certain contexts like climbing stairs.

FALL_RETAIN_PULL

Used when the grip on a pulled object shouldn't be broken.

FALL_STOP_INTERCEPTING

Used when the whole intercept_zImpact forvar loop should be stopped. For example: when someone falls into the supermatter and becomes dust.

ZMOVE_ALLOW_ANCHORED

Skips check for whether the moving atom is anchored or not.

ZMOVE_ALLOW_BUCKLED

Whether we check the movable (if it exists) the living mob is buckled on or not.

ZMOVE_CHECK_PULLEDBY

Checks if pulledby is nearby. if not, stop being pulled.

ZMOVE_CHECK_PULLING

Runs check_pulling() by the end of [/atom/movable/proc/zMove] for every movable that's pulling something. Should be kept enabled unless you know what you are doing.

ZMOVE_FALL_CHECKS

flags for different checks done in /atom/movable/proc/can_z_move. Should be self-explainatory.

ZMOVE_FALL_FLAGS

Used for falling down open space.

ZMOVE_FEEDBACK

Gives players chat feedbacks if they're unable to move through z levels.

ZMOVE_FLIGHT_FLAGS

Flags used in "Move Upwards" and "Move Downwards" verbs.

ZMOVE_IGNORE_OBSTACLES

Doesn't call zPassIn() and zPassOut()

ZMOVE_INCLUDE_PULLED

Includes movables that're either pulled by the source or mobs buckled to it in the list of moving movables.

ZMOVE_STAIRS_FLAGS

Used when walking upstairs

ZMOVE_VENTCRAWLING

If the movable is actually ventcrawling vertically.