Space Station 13 - Modules - TypesVar Details - Proc Details

turf

Vars

affecting_lightsList of light sources affecting this turf.
atmos_environmentThe external environment that this tile is exposed to for ATMOS_MODE_EXPOSED_TO_ENVIRONMENT
atmos_modeThe general behavior of atmos on this tile.
atmos_superconductivitymakes turfs less picky about where they transfer gas. Largely just used in the SM
cornersA list of our lighting corners.
dynamic_lightingHandles if the lighting should be dynamic. Generally lighting is dynamic if it's not in space
fixed_underlayIcon-smoothing variable to map a diagonal wall corner with a fixed underlay.
has_opaque_atomNot to be confused with opacity, this will be TRUE if there's any opaque atom on the tile.
lighting_corners_initialisedIf you're curious why these are TMP vars, I don't know! TMP only affects savefiles so this does nothing :) - GDN Is the lighting on this turf inited
lighting_objectThe lighting Object affecting us
oxygenProperties for open tiles (/floor) All the gas vars, on the turf, are meant to be utilized for initializing a gas datum and setting its first gas values; the turf vars are never further modified at runtime; it is never directly used for calculations by the atmospherics system.
pathing_pass_methodHow pathing algorithm will check if this turf is passable by itself (not including content checks). By default it's just density check. WARNING: Currently to use a density shortcircuiting this does not support dense turfs with special allow through function
pressure_differenceThe pressure difference between the turf and it's neighbors. Affects movables by pulling them in the path of least resistance
pressure_directionThe direction movables should travel when affected by pressure. Set to the biggest difference in atmos by turf neighbors
real_layerSet if the turf should appear on a different layer while in-game and map editing, otherwise use normal layer.
transparent_floorused to check if pipes should be visible under the turf or not

Procs

AdjacentTurfsReturns the adjacent turfs. Can check for density or cardinal directions only instead of all 8, or just dense turfs entirely. dense_only takes precedence over open_only.
LinkBlockedWithAccessFor seeing if we can actually move between 2 given turfs while accounting for our access and the caller's pass_flags
blind_release_airBlindly releases air to this tile. Do not use if you care what the tile previously held, implement /datum/milla_safe instead.
get_readonly_airGets a read-only version of this tile's air. Do not use if you intend to modify the air later, implement /datum/milla_safe instead.
private_unsafe_get_airDo not call this directly. Use get_readonly_air or implement /datum/milla_safe.

Var Details

affecting_lights

List of light sources affecting this turf.

atmos_environment

The external environment that this tile is exposed to for ATMOS_MODE_EXPOSED_TO_ENVIRONMENT

atmos_mode

The general behavior of atmos on this tile.

atmos_superconductivity

makes turfs less picky about where they transfer gas. Largely just used in the SM

corners

A list of our lighting corners.

dynamic_lighting

Handles if the lighting should be dynamic. Generally lighting is dynamic if it's not in space

fixed_underlay

Icon-smoothing variable to map a diagonal wall corner with a fixed underlay.

has_opaque_atom

Not to be confused with opacity, this will be TRUE if there's any opaque atom on the tile.

lighting_corners_initialised

If you're curious why these are TMP vars, I don't know! TMP only affects savefiles so this does nothing :) - GDN Is the lighting on this turf inited

lighting_object

The lighting Object affecting us

oxygen

Properties for open tiles (/floor) All the gas vars, on the turf, are meant to be utilized for initializing a gas datum and setting its first gas values; the turf vars are never further modified at runtime; it is never directly used for calculations by the atmospherics system.

pathing_pass_method

How pathing algorithm will check if this turf is passable by itself (not including content checks). By default it's just density check. WARNING: Currently to use a density shortcircuiting this does not support dense turfs with special allow through function

pressure_difference

The pressure difference between the turf and it's neighbors. Affects movables by pulling them in the path of least resistance

pressure_direction

The direction movables should travel when affected by pressure. Set to the biggest difference in atmos by turf neighbors

real_layer

Set if the turf should appear on a different layer while in-game and map editing, otherwise use normal layer.

transparent_floor

used to check if pipes should be visible under the turf or not

Proc Details

AdjacentTurfs

Returns the adjacent turfs. Can check for density or cardinal directions only instead of all 8, or just dense turfs entirely. dense_only takes precedence over open_only.

LinkBlockedWithAccess

For seeing if we can actually move between 2 given turfs while accounting for our access and the caller's pass_flags

Assumes destinantion turf is non-dense - check and shortcircuit in code invoking this proc to avoid overhead. Makes some other assumptions, such as assuming that unless declared, non dense objects will not block movement. It's fragile, but this is VERY much the most expensive part of pathing, so it'd better be fast

Arguments:

blind_release_air

Blindly releases air to this tile. Do not use if you care what the tile previously held, implement /datum/milla_safe instead.

get_readonly_air

Gets a read-only version of this tile's air. Do not use if you intend to modify the air later, implement /datum/milla_safe instead.

private_unsafe_get_air

Do not call this directly. Use get_readonly_air or implement /datum/milla_safe.