turf
Vars | |
directional_opacity | 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. |
initial_temperature | How hot the turf is, in kelvin |
lighting_corner_NE | Lighting Corner datums. |
lighting_object | Our lighting object. |
opacity_sources | Lazylist of movable atoms providing opacity sources. |
rad_fullblocker | If TRUE, radiation waves will qdelete if they step forwards into this turf, and stop propagating sideways if they encounter it. Used to stop radiation from travelling across virtual z-levels such as transit zones and planetary encounters. |
smooth_underlay | The underlay generated and applied when a chisel makes a turf diagonal. Stored here for removal on un-diagonalizing |
to_be_destroyed | Used for fire, if a melting temperature was reached, it will be destroyed |
Procs | |
GetAtmosAdjacentTurfs | Returns a list of adjacent turfs that can share air with this one. alldir includes adjacent diagonal tiles that can share air with both of the related adjacent cardinal tiles |
Initialize | Turf Initialize |
__update_auxtools_turf_adjacency_info | Updates adjacency infos for turfs, only use this in immediateupdateturfs. |
add_opacity_source | Proc to add movable sources of opacity on the turf and let it handle lighting code. |
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 |
consider_pressure_difference | SPACEWIND |
expose_reagents | Handles exposing a turf to reagents. |
fromShuttleMove | Base procs |
is_blocked_turf | Check whether the specified turf is blocked by something dense inside it with respect to a specific atom. |
process_cell | SIMULATION |
recalculate_directional_opacity | Calculate on which directions this turfs block view. |
remove_opacity_source | Proc to remove movable sources of opacity on the turf and let it handle lighting code. |
update_air_ref | Returns: null. Updates turf air infos, whether the turf is closed, is space or a regular turf, or even a planet turf is decided here. |
wash | Called when this turf is being washed. Washing a turf will also wash any mopable floor decals |
Var Details
directional_opacity
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.
initial_temperature
How hot the turf is, in kelvin
lighting_corner_NE
Lighting Corner datums.
lighting_object
Our lighting object.
opacity_sources
Lazylist of movable atoms providing opacity sources.
rad_fullblocker
If TRUE, radiation waves will qdelete if they step forwards into this turf, and stop propagating sideways if they encounter it. Used to stop radiation from travelling across virtual z-levels such as transit zones and planetary encounters.
smooth_underlay
The underlay generated and applied when a chisel makes a turf diagonal. Stored here for removal on un-diagonalizing
to_be_destroyed
Used for fire, if a melting temperature was reached, it will be destroyed
Proc Details
GetAtmosAdjacentTurfs
Returns a list of adjacent turfs that can share air with this one. alldir includes adjacent diagonal tiles that can share air with both of the related adjacent cardinal tiles
Initialize
Turf Initialize
Doesn't call parent, see /atom/proc/Initialize
__update_auxtools_turf_adjacency_info
Updates adjacency infos for turfs, only use this in immediateupdateturfs.
add_opacity_source
Proc to add movable sources of opacity on the turf and let it handle lighting code.
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
consider_pressure_difference
SPACEWIND
expose_reagents
Handles exposing a turf to reagents.
fromShuttleMove
Base procs
is_blocked_turf
Check whether the specified turf is blocked by something dense inside it with respect to a specific atom.
Returns truthy value TURF_BLOCKED_TURF_DENSE if the turf is blocked because the turf itself is dense. Returns truthy value TURF_BLOCKED_CONTENT_DENSE if one of the turf's contents is dense and would block a source atom's movement. Returns falsey value TURF_NOT_BLOCKED if the turf is not blocked.
Arguments:
- exclude_mobs - If TRUE, ignores dense mobs on the turf.
- source_atom - If this is not null, will check whether any contents on the turf can block this atom specifically. Also ignores itself on the turf.
- ignore_atoms - Check will ignore any atoms in this list. Useful to prevent an atom from blocking itself on the turf.
process_cell
SIMULATION
recalculate_directional_opacity
Calculate on which directions this turfs block view.
remove_opacity_source
Proc to remove movable sources of opacity on the turf and let it handle lighting code.
update_air_ref
Returns: null. Updates turf air infos, whether the turf is closed, is space or a regular turf, or even a planet turf is decided here.
wash
Called when this turf is being washed. Washing a turf will also wash any mopable floor decals