/tg/ Station 13 - Modules - Types — Var Details - Proc Details

dirt_mask_request

What a surface's masks are made from: the body they're drawn on and the splats on it. Requests with the same mask_key() share their masks, so bodies drawn from the same sprites with the same splats draw the same icons. A request is made once and never changed: it keeps copies of the splats, so a splat that levels up or lands while its masks wait in the queue changes neither the key nor what's drawn under it.

Vars

clipFor cloth on underclothes, the sprites its mess is kept to, each list(icon, icon state)...
coverFor skin, the sprites worn over it, from dirt_cover_sprites(): its mess fades out beside them.
cut...less the pixels of these, drawn over them.
facingsFor a part's masks, the directions it draws its share in, where it shows over what it lies on; null for all four.
kindWhat it's drawn on: DIRT_MASKS_BODY, DIRT_MASKS_PART or DIRT_MASKS_TAUR.
part_sourceFor a part's masks, the part they're drawn on: their mess keeps to its pixels.
partsThe parts the splats reach, each a /datum/dirt_part_source, lowest first. They drop the mess's level below the top one, which keeps its glaze, and it leaves out the rounded ones' pixels; in each direction a part drawn under the surface (/datum/dirt_part_source/proc/under()) has its own mess drawn in these masks, and one drawn over it on itself.
splatsCopies of the surface's /datum/dirt_splat as they were when it was made, oldest first. They merge in this order.
surface_kindDIRT_SURFACE_SKIN or DIRT_SURFACE_CLOTH. A taur body's pools are drawn per layer on skin (on the taur body's own images), on cloth over the whole canvas (inset on a taur suit).
surface_layerThe layer of the surface the masks are drawn on, which the parts are drawn under or over.
taur_sourceFor a taur body's pools, the taur body they're drawn on.
zone_sourcesThe body's sprites, as dirt_zone_sources() returns them: its template's. On a taur, the rider's.

Procs

NewArguments:
mask_keyReturns the masks' key: an MD5 of what they're drawn on, each splat's zone, level and variant in order, the sprites that fade or keep them, and the parts that shape them, each with where it draws against the surface in each direction, or the part or taur body they're drawn on and the directions it draws in. Serials stay out of it, so splats that landed apart draw alike. A part's splats count at the level they draw at. A taur body's count at their own: the rider's mess its pools keep clear of is drawn at it.
read_partsReturns every part the request reads: the parts its splats reach, or the part its masks are drawn on.
read_spritesReturns the sprites a request reads besides its template, each list(icon, icon state, what for): "cover", "clip" or "cut".

Var Details

clip

For cloth on underclothes, the sprites its mess is kept to, each list(icon, icon state)...

cover

For skin, the sprites worn over it, from dirt_cover_sprites(): its mess fades out beside them.

cut

...less the pixels of these, drawn over them.

facings

For a part's masks, the directions it draws its share in, where it shows over what it lies on; null for all four.

kind

What it's drawn on: DIRT_MASKS_BODY, DIRT_MASKS_PART or DIRT_MASKS_TAUR.

part_source

For a part's masks, the part they're drawn on: their mess keeps to its pixels.

parts

The parts the splats reach, each a /datum/dirt_part_source, lowest first. They drop the mess's level below the top one, which keeps its glaze, and it leaves out the rounded ones' pixels; in each direction a part drawn under the surface (/datum/dirt_part_source/proc/under()) has its own mess drawn in these masks, and one drawn over it on itself.

splats

Copies of the surface's /datum/dirt_splat as they were when it was made, oldest first. They merge in this order.

surface_kind

DIRT_SURFACE_SKIN or DIRT_SURFACE_CLOTH. A taur body's pools are drawn per layer on skin (on the taur body's own images), on cloth over the whole canvas (inset on a taur suit).

surface_layer

The layer of the surface the masks are drawn on, which the parts are drawn under or over.

taur_source

For a taur body's pools, the taur body they're drawn on.

zone_sources

The body's sprites, as dirt_zone_sources() returns them: its template's. On a taur, the rider's.

Proc Details

New

Arguments:

mask_key

Returns the masks' key: an MD5 of what they're drawn on, each splat's zone, level and variant in order, the sprites that fade or keep them, and the parts that shape them, each with where it draws against the surface in each direction, or the part or taur body they're drawn on and the directions it draws in. Serials stay out of it, so splats that landed apart draw alike. A part's splats count at the level they draw at. A taur body's count at their own: the rider's mess its pools keep clear of is drawn at it.

read_parts

Returns every part the request reads: the parts its splats reach, or the part its masks are drawn on.

read_sprites

Returns the sprites a request reads besides its template, each list(icon, icon state, what for): "cover", "clip" or "cut".