byond - Modules - TypesVar Details - Proc Details

turf

Vars

assigned_oranges_earwhat /mob/oranges_ear instance is already assigned to us as there should only ever be one. used for guaranteeing there is only one oranges_ear per turf when assigned, speeds up view() iteration
directional_opacityList of light sources affecting this turf. Which directions does this turf block the vision of, taking into account both the turf's opacity and the movable opacity_sources.
dynamic_lumcountLumcount added by sources other than lighting datum objects, such as the overlay lighting component.
fixed_underlayIcon-smoothing variable to map a diagonal wall corner with a fixed underlay.
hard_armorFlat-damage-reduction-based armor.
hybrid_lights_affectinghybrid lights affecting this turf
lighting_corner_NELighting Corner datums.
opacity_sourcesLazylist of movable atoms providing opacity sources.
soft_armor%-reduction-based armor.
turf_flagsTurf bitflags, see code/__DEFINES/flags.dm

Procs

ScrapeAwayTake off the top layer turf and replace it with the next baseturf down
add_opacity_sourceProc to add movable sources of opacity on the turf and let it handle lighting code.
can_teleport_hereAre we able to teleport to this turf using in game teleport mechanics
check_alien_constructionCheck if alien abilities can construct structure on the turf Return TRUE if allowed, FALSE otherwise
check_disallow_alien_fortificationChecks for whether we can build advanced xeno structures here Returns TRUE if present, FALSE otherwise
clear_signal_refsWARNING WARNING Turfs DO NOT lose their signals when they get replaced, REMEMBER THIS It's possible because turfs are fucked, and if you have one in a list and it's replaced with another one, the list ref points to the new turf We do it because moving signals over was needlessly expensive, and bloated a very commonly used bit of code
fromShuttleMoveBase procs
get_submerge_depthReturns the number that shows how far an AM is offset when submerged in this turf
get_submerge_heightReturns the number that represents how submerged an AM is by a turf and its contents
on_change_areaAllows for reactions to an area change without inherently requiring change_area() be called (I hate maploading)
recalculate_directional_opacityCalculate on which directions this turfs block view.
reconsider_lightsCauses any affecting light sources to be queued for a visibility update, for example a door got opened.
remove_opacity_sourceProc to remove movable sources of opacity on the turf and let it handle lighting code.
static_lighting_build_overlayBuilds a lighting object for us, but only if our area is dynamic.
transfer_area_lightingTransfer the lighting of one area to another
washcleans any cleanable decals from the turf
zFallPrecipitates a movable (plus whatever buckled to it) to lower z levels if possible and then calls zImpact()
zImpactCalled each time the target falls down a z level possibly making their trajectory come to a halt. see __DEFINES/movement.dm.
zPassInIf we'd allow anything to travel into us
zPassOutIf we'd allow anything to travel out of us

Var Details

assigned_oranges_ear

what /mob/oranges_ear instance is already assigned to us as there should only ever be one. used for guaranteeing there is only one oranges_ear per turf when assigned, speeds up view() iteration

directional_opacity

List of light sources affecting this turf. Which directions does this turf block the vision of, taking into account both the turf's opacity and the movable opacity_sources.

dynamic_lumcount

Lumcount added by sources other than lighting datum objects, such as the overlay lighting component.

fixed_underlay

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

hard_armor

Flat-damage-reduction-based armor.

hybrid_lights_affecting

hybrid lights affecting this turf

lighting_corner_NE

Lighting Corner datums.

opacity_sources

Lazylist of movable atoms providing opacity sources.

soft_armor

%-reduction-based armor.

turf_flags

Turf bitflags, see code/__DEFINES/flags.dm

Proc Details

ScrapeAway

Take off the top layer turf and replace it with the next baseturf down

add_opacity_source

Proc to add movable sources of opacity on the turf and let it handle lighting code.

can_teleport_here

Are we able to teleport to this turf using in game teleport mechanics

check_alien_construction

Check if alien abilities can construct structure on the turf Return TRUE if allowed, FALSE otherwise

check_disallow_alien_fortification

Checks for whether we can build advanced xeno structures here Returns TRUE if present, FALSE otherwise

clear_signal_refs

WARNING WARNING Turfs DO NOT lose their signals when they get replaced, REMEMBER THIS It's possible because turfs are fucked, and if you have one in a list and it's replaced with another one, the list ref points to the new turf We do it because moving signals over was needlessly expensive, and bloated a very commonly used bit of code

fromShuttleMove

Base procs

get_submerge_depth

Returns the number that shows how far an AM is offset when submerged in this turf

get_submerge_height

Returns the number that represents how submerged an AM is by a turf and its contents

on_change_area

Allows for reactions to an area change without inherently requiring change_area() be called (I hate maploading)

recalculate_directional_opacity

Calculate on which directions this turfs block view.

reconsider_lights

Causes any affecting light sources to be queued for a visibility update, for example a door got opened.

remove_opacity_source

Proc to remove movable sources of opacity on the turf and let it handle lighting code.

static_lighting_build_overlay

Builds a lighting object for us, but only if our area is dynamic.

transfer_area_lighting

Transfer the lighting of one area to another

wash

cleans any cleanable decals from the turf

zFall

Precipitates a movable (plus whatever buckled to it) to lower z levels if possible and then calls zImpact()

zImpact

Called each time the target falls down a z level possibly making their trajectory come to a halt. see __DEFINES/movement.dm.

zPassIn

If we'd allow anything to travel into us

zPassOut

If we'd allow anything to travel out of us