/tg/ Station 13 - Modules - TypesVar Details - Proc Details

open

Vars

active_hotspotIf there is an active hotspot on us store a reference to it here
airOur gas mix
atmos_overlay_typesgas IDs of current active gas overlays
damaged_dmiDetermines the type of damage overlay that will be used for the tile
excitedAre we active?
excited_groupExcited group we are part of
fire_puff_cooldownthe cooldown on playing a fire starting sound each time a tile is ignited
planetary_atmosair will slowly revert to initial_gas_mix
pressure_differencePressure difference between two turfs
pressure_directionWhere the difference come from (from higher pressure to lower pressure)
run_lateronce our paired turfs are finished with all other shares, do one 100% share exists so things like space can ask to take 100% of a tile's gas
slowdownnegative for faster, positive for slower
smooth_brokenAre broken overlays smoothed? if they are we have to change a little bit about how we render them
smooth_burntAre burnt overlays smoothed? if they are we have to change a little bit about how we render them

Procs

Assimilate_AirAssimilate Air
broken_statesReturns a list of every turf state considered "broken". Will be randomly chosen if a turf breaks at runtime.
build_with_floor_tilesVery similar to build_with_rods, this exists to allow consistent behavior between different types in terms of how Building floors works
build_with_rodsBuilds with rods. This doesn't exist to be overridden, just to remove duplicate logic for turfs that want To support floor tile creation I'd make it a component, but one of these things is space. So no.
build_with_titaniumVery similar to build_with_rods, this exists to allow building transport/tram girders on openspace
build_with_transport_tilesVery similar to build_with_rods, this exists to allow consistent behavior between different types in terms of how Building floors works
burnt_statesReturns a list of every turf state considered "burnt". Will be randomly chosen if a turf is burnt at runtime.
can_atmos_passDo NOT use this to see if 2 turfs are connected, it mutates state, and we cache that info anyhow. Use TURFS_CAN_SHARE or TURF_SHARES depending on your usecase
conductivity_directionsReturns a set of directions that we should be conducting in, NOTE, atmos_supeconductivity is ACTUALLY inversed, don't worrry about it
consider_pressure_differenceSPACEWIND
hotspot_exposeHandles the creation of hotspots and initial activation of turfs. Setting the conditions for the reaction to actually happen for gasmixtures is handled by the hotspot itself, specifically perform_exposure().
quake_gatewayBespoke proc that happens when a proteon orb is activated, creating a gateway. If activated by a non-cultist, they get an unusual game over.
replace_floorReplace an open turf with another open turf while avoiding the pitfall of replacing plating with a floor tile, leaving a hole underneath. This replaces the current turf if it is plating and is passed plating, is tile and is passed tile. It places the new turf on top of itself if it is plating and is passed a tile. It also replaces the turf if it is tile and is passed plating, essentially destroying the over turf. Flags argument is passed directly to ChangeTurf or PlaceOnTop
update_visualsGAS OVERLAYS

Var Details

active_hotspot

If there is an active hotspot on us store a reference to it here

air

Our gas mix

atmos_overlay_types

gas IDs of current active gas overlays

damaged_dmi

Determines the type of damage overlay that will be used for the tile

excited

Are we active?

excited_group

Excited group we are part of

fire_puff_cooldown

the cooldown on playing a fire starting sound each time a tile is ignited

planetary_atmos

air will slowly revert to initial_gas_mix

pressure_difference

Pressure difference between two turfs

pressure_direction

Where the difference come from (from higher pressure to lower pressure)

run_later

once our paired turfs are finished with all other shares, do one 100% share exists so things like space can ask to take 100% of a tile's gas

slowdown

negative for faster, positive for slower

smooth_broken

Are broken overlays smoothed? if they are we have to change a little bit about how we render them

smooth_burnt

Are burnt overlays smoothed? if they are we have to change a little bit about how we render them

Proc Details

Assimilate_Air

Assimilate Air

broken_states

Returns a list of every turf state considered "broken". Will be randomly chosen if a turf breaks at runtime.

build_with_floor_tiles

Very similar to build_with_rods, this exists to allow consistent behavior between different types in terms of how Building floors works

build_with_rods

Builds with rods. This doesn't exist to be overridden, just to remove duplicate logic for turfs that want To support floor tile creation I'd make it a component, but one of these things is space. So no.

build_with_titanium

Very similar to build_with_rods, this exists to allow building transport/tram girders on openspace

build_with_transport_tiles

Very similar to build_with_rods, this exists to allow consistent behavior between different types in terms of how Building floors works

burnt_states

Returns a list of every turf state considered "burnt". Will be randomly chosen if a turf is burnt at runtime.

can_atmos_pass

Do NOT use this to see if 2 turfs are connected, it mutates state, and we cache that info anyhow. Use TURFS_CAN_SHARE or TURF_SHARES depending on your usecase

conductivity_directions

Returns a set of directions that we should be conducting in, NOTE, atmos_supeconductivity is ACTUALLY inversed, don't worrry about it

consider_pressure_difference

SPACEWIND

hotspot_expose

Handles the creation of hotspots and initial activation of turfs. Setting the conditions for the reaction to actually happen for gasmixtures is handled by the hotspot itself, specifically perform_exposure().

quake_gateway

Bespoke proc that happens when a proteon orb is activated, creating a gateway. If activated by a non-cultist, they get an unusual game over.

replace_floor

Replace an open turf with another open turf while avoiding the pitfall of replacing plating with a floor tile, leaving a hole underneath. This replaces the current turf if it is plating and is passed plating, is tile and is passed tile. It places the new turf on top of itself if it is plating and is passed a tile. It also replaces the turf if it is tile and is passed plating, essentially destroying the over turf. Flags argument is passed directly to ChangeTurf or PlaceOnTop

update_visuals

GAS OVERLAYS