/tg/ Station 13 - Modules - Types — Define Details

code/__DEFINES/~aphelion_defines/dirt.dm

DIRT_ROLE_NONENo role: a bare pixel.
DIRT_ROLE_HAZEThe palest edge, drawn as half coverage in the film mask.
DIRT_ROLE_FILMA thin coat, from DIRT_THRESHOLD_FILM up: a mark's fringe and edges.
DIRT_ROLE_BODYA solid coat, from DIRT_THRESHOLD_BODY up: most of a mark.
DIRT_ROLE_COREThe thickest part: the contact point, or a wet coat's underside.
DIRT_ROLE_FLECKA speck highlight: dirt_cleanup() and dirt_despeckle() leave it as it is.
DIRT_ROLE_GLINTA wet coat's highlight.
DIRT_LIMB_HEADThe head, the only limb the face's guards apply on.
DIRT_LIMB_TORSOThe torso, down to DIRT_BELT: its rows from there down count as the legs'.
DIRT_LIMB_R_ARMThe right arm.
DIRT_LIMB_L_ARMThe left arm.
DIRT_LIMB_R_LEGThe right leg, and its side of the torso from DIRT_BELT down.
DIRT_LIMB_L_LEGThe left leg, and its side of the torso from DIRT_BELT down.
DIRT_PIXEL_LIMBA pixel's limb, a DIRT_LIMB_* define, or 0 off the surface: bits 0 to 3.
DIRT_PIXEL_ZONEA pixel's zone, its place in dirt_pixel_zones(), or 0 off the body (the margin, and off the surface): bits 4 to 7.
DIRT_PIXEL_RIMThe rim, bit 8: the silhouette's edge and the margin's first ring, where clothing draws its outline. Each leg's sole stays off it: it's in contact with the floor.
DIRT_PIXEL_OUTLINEThe outline, bit 9, once /datum/dirt_surface/proc/outline() has marked it: the body pixels a covering coat fades at.
DIRT_PIXEL_BANDThe outline and the pixels beside it, bit 10, once /datum/dirt_surface/proc/outline_band() has marked them: where a covering coat breaks in profile.
DIRT_BELTThe first row, counted down from the top, whose torso pixels count as the legs'. Dirt climbs the legs to the hips.
DIRT_SURFACE_MARGINHow many pixels round a body its surface reaches, so dirt may run past the silhouette onto clothing.
DIRT_GUARD_EYEAn eye or a pixel beside it. The eye's diagonals take film at most instead (eye_soft).
DIRT_GUARD_MOUTHA human head's mouth, whose pixels are the head sprite's.
DIRT_CONTACTThe most any mark lies but a contact point or a wet coat's underside, which lie just past it to draw core.
DIRT_BODY_TA solid coat's thickness, drawn as body.
DIRT_FILM_TA fringe's or thin edge's thickness, drawn as film; also the most a covering mark lies on the outline.
DIRT_HAZE_TA marker, not a thickness: exactly this value draws as haze.
DIRT_THRESHOLD_CORECore: only a contact point or a wet coat's underside reaches it.
DIRT_THRESHOLD_BODYBody: a solid coat (DIRT_BODY_T) passes it.
DIRT_THRESHOLD_FILMFilm, and the least that draws at all: anything thinner is dropped.
DIRT_ZONE_FACEThe lower face, under the eyes. Whatever covers the mouth takes the shot.
DIRT_ZONE_CHESTThe torso's upper front.
DIRT_ZONE_STOMACHThe belly: the torso's front between the groin and the chest.
DIRT_ZONE_BACKThe back, under the shoulder blades. On a taur, the taur body's back takes a share too.
DIRT_ZONE_GROINThe front at the waistband: the torso's lowest part and the tops of the legs.
DIRT_ZONE_THIGHSThe front of the thighs, from the knee up.
DIRT_ZONE_BUTTThe cheeks either side of the cleft, and the backs of the upper legs.
DIRT_ZONE_COCKThe penis, through a one-part portal.
DIRT_SURFACE_SKINBare skin: bare legs streak, lone pixels go, and each limb's mask is clipped to that limb's pixels.
DIRT_SURFACE_CLOTHA worn item or underclothes: one mask over the whole canvas, clipped to what the garment shows.
DIRT_SKIN_LAYERThe layer skin's mess draws at: under the underclothes (UNDER_UNIFORM_LAYER and UNDER_UNIFORM_SOCKS_LAYER) and the genitals, over body hair (BODY_HAIR_LAYER), markings and the limbs.
DIRT_UNDERCLOTHES_LAYERThe layer mess on the underclothes draws at: over them, under the uniform and genitals drawn above underwear.
DIRT_PRIVATE_KEYStarts each key mess adds to a limb's render key: a limb drawn under a key carrying it keeps its images on its own mob (/mob/living/carbon/proc/limb_icons_for()), not in tg's shared limb icon cache.
DIRT_LIMB_ICONS_STEADYThe images update_body_parts() draws a limb with under the key it was last drawn with. A body holding no private images reads tg's limb_icon_cache as tg does, and calls limb_icons_for() only for a key the cache lacks: a private one whose entry left with a swapped limb. It reads key more than once, so pass it a variable. For a /mob/living/carbon proc only.
DIRT_LIMB_ICONS_CHANGEDThe images update_body_parts() draws a limb with under a new key. A body holding no private images, drawn under a key without DIRT_PRIVATE_KEY, fills tg's limb_icon_cache as tg does. It reads key more than once, so pass it a variable. For a /mob/living/carbon proc only.
DIRT_UNDERCLOTHES_UNDERWEARThe underwear slot: the groin, butt and the thighs it reaches; a one-piece swimsuit the chest too.
DIRT_UNDERCLOTHES_BRAThe bra slot: the chest.
DIRT_UNDERCLOTHES_UNDERSHIRTThe undershirt slot: the chest, stomach and back; a corset or leotard the groin and butt too.
DIRT_UNDERCLOTHES_SOCKSThe socks slot: the thighs, groin and butt where they reach (stockings, tights). Taurs and bodies with fewer than two legs wear none.
DIRT_MESS_VARIANTSVariants of each zone's mess.
DIRT_MESS_MAX_LEVELThe level a splat stops growing at, the one that covers its zone; what a shot adds past it starts another splat.
DIRT_MESS_AMOUNT_HEAVYThe least amount, in units of fluid, that adds two levels rather than one.
DIRT_MESS_AMOUNT_HUGEThe least amount that goes straight to DIRT_MESS_MAX_LEVEL.
DIRT_MESS_MAX_SPLATSThe most splats a person carries across their skin, parts and worn items. The oldest goes first.
DIRT_PORTAL_NONENo portal: the whole person.
DIRT_PORTAL_LOWER_BODYA wall portal: the groin and the butt (dirt_portal_shows()), and only on what its relay draws.
DIRT_PORTAL_PENISA portal relaying one part alone: only that part's zone is offered, while the part draws its front image.
DIRT_MASKS_DEFERREDWhether a mask that isn't made yet waits for SSdirt, drawn without it until it's done, rather than being made as it's drawn. Comment it out to make every mask as it's drawn.
DIRT_MASKS_BODYA body, from its limbs' template: its skin, its underclothes or a worn item.
DIRT_MASKS_PARTA part's own share (DIRT_PART_*), read from the part's sprites.
DIRT_MASKS_TAURA taur body's back, or a taur suit's over it, on the DIRT_TAUR_WIDTH canvas.
DIRT_REDRAW_BODYThe body's own overlays: its skin, underclothes and taur body (update_body_parts()).
DIRT_REDRAW_UNIFORMThe uniform slot's item (update_worn_undersuit()).
DIRT_REDRAW_SUITThe suit slot's item (update_worn_oversuit()).
DIRT_REDRAW_HEADThe head slot's item (update_worn_head()).
DIRT_REDRAW_MASKThe mask slot's item (update_worn_mask()).
DIRT_REDRAW_COVERNot masks: what the body wears changed, so its skin's mess may fade at other edges.
DIRT_REDRAW_PARTSNot masks: what draws the body's parts may have changed, so the masks they shape may be made again.
DIRT_REDRAW_SHAREA part's own share: the whole body, whose redraw a portal relay showing the part follows.
DIRT_FADE_RINGSHow many pixels skin mess fades out over before what's worn over it, rather than cut off at its edge.
DIRT_RUN_GAPPixels of skin a view keeps between two runs or drops, and between splats: side by side they filled into a sheet.
DIRT_RUN_GROUP_EARLYThe run group of level 2's carry-on from a deposit's first drop.
DIRT_PART_BREASTSThe breasts organ drawn as breasts, sharing the chest's mess.
DIRT_PART_PECSThe breasts organ drawn as pecs, or the plain pecs' shape a human chest without breasts takes mess in.
DIRT_PART_PENISThe penis, sharing the groin's mess as a bead behind its tip rather than in lobes.
DIRT_PART_TESTICLESThe testicles, sharing the groin's mess.
DIRT_PART_VAGINAThe vulva, sharing the groin's mess; on skin it also takes the ring of visible pixels round it.
DIRT_PART_BUTTThe butt, sharing the butt's mess, read from its front and back images.
DIRT_PART_MIDLINEThe column a pair of parts (breasts, pecs, a butt, testicles) parts along, front and back.
DIRT_PART_MAX_LEVELThe last level a part's own mess has: a splat at the top level draws its parts at this one.
DIRT_TAUR_WIDTHPixels across the canvas a taur body is drawn on, centred on its tile.
DIRT_TAUR_INSETHow far into the taur canvas the body's own tile starts.
DIRT_TAUR_MAX_LEVELThe last level a taur body's pools have: a splat at the top level draws them at this one.
DIRT_TAUR_RIDERWhat a taur canvas pixel shows where the rider is drawn over the taur body.
DIRT_MODULOvalue modulo divisor with the divisor's sign, as the reference generator takes it, where BYOND's % and %% keep the value's. Exact for whole numbers from -(2^24 - divisor) up to 2^24. It reads value twice, so pass it a variable, never a call such as draw().
DIRT_WRAP_DEGREESAn angle in degrees turned into the range -180 up to 180, never 180, as the reference generator wraps one. Exact from -540 up to 540, which a difference of two thetas never leaves. It reads degrees up to five times, so pass it a variable.
VV_HK_DIRT_CLEARAdmin-only VV action using the Clear Dirt admin verb.

Define Details

DIRT_BELT

The first row, counted down from the top, whose torso pixels count as the legs'. Dirt climbs the legs to the hips.

DIRT_BODY_T

A solid coat's thickness, drawn as body.

DIRT_CONTACT

The most any mark lies but a contact point or a wet coat's underside, which lie just past it to draw core.

DIRT_FADE_RINGS

How many pixels skin mess fades out over before what's worn over it, rather than cut off at its edge.

DIRT_FILM_T

A fringe's or thin edge's thickness, drawn as film; also the most a covering mark lies on the outline.

DIRT_GUARD_EYE

An eye or a pixel beside it. The eye's diagonals take film at most instead (eye_soft).

DIRT_GUARD_MOUTH

A human head's mouth, whose pixels are the head sprite's.

DIRT_HAZE_T

A marker, not a thickness: exactly this value draws as haze.

DIRT_LIMB_HEAD

The head, the only limb the face's guards apply on.

DIRT_LIMB_ICONS_CHANGED

The images update_body_parts() draws a limb with under a new key. A body holding no private images, drawn under a key without DIRT_PRIVATE_KEY, fills tg's limb_icon_cache as tg does. It reads key more than once, so pass it a variable. For a /mob/living/carbon proc only.

DIRT_LIMB_ICONS_STEADY

The images update_body_parts() draws a limb with under the key it was last drawn with. A body holding no private images reads tg's limb_icon_cache as tg does, and calls limb_icons_for() only for a key the cache lacks: a private one whose entry left with a swapped limb. It reads key more than once, so pass it a variable. For a /mob/living/carbon proc only.

DIRT_LIMB_L_ARM

The left arm.

DIRT_LIMB_L_LEG

The left leg, and its side of the torso from DIRT_BELT down.

DIRT_LIMB_R_ARM

The right arm.

DIRT_LIMB_R_LEG

The right leg, and its side of the torso from DIRT_BELT down.

DIRT_LIMB_TORSO

The torso, down to DIRT_BELT: its rows from there down count as the legs'.

DIRT_MASKS_BODY

A body, from its limbs' template: its skin, its underclothes or a worn item.

DIRT_MASKS_DEFERRED

Whether a mask that isn't made yet waits for SSdirt, drawn without it until it's done, rather than being made as it's drawn. Comment it out to make every mask as it's drawn.

DIRT_MASKS_PART

A part's own share (DIRT_PART_*), read from the part's sprites.

DIRT_MASKS_TAUR

A taur body's back, or a taur suit's over it, on the DIRT_TAUR_WIDTH canvas.

DIRT_MESS_AMOUNT_HEAVY

The least amount, in units of fluid, that adds two levels rather than one.

DIRT_MESS_AMOUNT_HUGE

The least amount that goes straight to DIRT_MESS_MAX_LEVEL.

DIRT_MESS_MAX_LEVEL

The level a splat stops growing at, the one that covers its zone; what a shot adds past it starts another splat.

DIRT_MESS_MAX_SPLATS

The most splats a person carries across their skin, parts and worn items. The oldest goes first.

DIRT_MESS_VARIANTS

Variants of each zone's mess.

DIRT_MODULO

value modulo divisor with the divisor's sign, as the reference generator takes it, where BYOND's % and %% keep the value's. Exact for whole numbers from -(2^24 - divisor) up to 2^24. It reads value twice, so pass it a variable, never a call such as draw().

DIRT_PART_BREASTS

The breasts organ drawn as breasts, sharing the chest's mess.

DIRT_PART_BUTT

The butt, sharing the butt's mess, read from its front and back images.

DIRT_PART_MAX_LEVEL

The last level a part's own mess has: a splat at the top level draws its parts at this one.

DIRT_PART_MIDLINE

The column a pair of parts (breasts, pecs, a butt, testicles) parts along, front and back.

DIRT_PART_PECS

The breasts organ drawn as pecs, or the plain pecs' shape a human chest without breasts takes mess in.

DIRT_PART_PENIS

The penis, sharing the groin's mess as a bead behind its tip rather than in lobes.

DIRT_PART_TESTICLES

The testicles, sharing the groin's mess.

DIRT_PART_VAGINA

The vulva, sharing the groin's mess; on skin it also takes the ring of visible pixels round it.

DIRT_PIXEL_BAND

The outline and the pixels beside it, bit 10, once /datum/dirt_surface/proc/outline_band() has marked them: where a covering coat breaks in profile.

DIRT_PIXEL_LIMB

A pixel's limb, a DIRT_LIMB_* define, or 0 off the surface: bits 0 to 3.

DIRT_PIXEL_OUTLINE

The outline, bit 9, once /datum/dirt_surface/proc/outline() has marked it: the body pixels a covering coat fades at.

DIRT_PIXEL_RIM

The rim, bit 8: the silhouette's edge and the margin's first ring, where clothing draws its outline. Each leg's sole stays off it: it's in contact with the floor.

DIRT_PIXEL_ZONE

A pixel's zone, its place in dirt_pixel_zones(), or 0 off the body (the margin, and off the surface): bits 4 to 7.

DIRT_PORTAL_LOWER_BODY

A wall portal: the groin and the butt (dirt_portal_shows()), and only on what its relay draws.

DIRT_PORTAL_NONE

No portal: the whole person.

DIRT_PORTAL_PENIS

A portal relaying one part alone: only that part's zone is offered, while the part draws its front image.

DIRT_PRIVATE_KEY

Starts each key mess adds to a limb's render key: a limb drawn under a key carrying it keeps its images on its own mob (/mob/living/carbon/proc/limb_icons_for()), not in tg's shared limb icon cache.

DIRT_REDRAW_BODY

The body's own overlays: its skin, underclothes and taur body (update_body_parts()).

DIRT_REDRAW_COVER

Not masks: what the body wears changed, so its skin's mess may fade at other edges.

DIRT_REDRAW_HEAD

The head slot's item (update_worn_head()).

DIRT_REDRAW_MASK

The mask slot's item (update_worn_mask()).

DIRT_REDRAW_PARTS

Not masks: what draws the body's parts may have changed, so the masks they shape may be made again.

DIRT_REDRAW_SHARE

A part's own share: the whole body, whose redraw a portal relay showing the part follows.

DIRT_REDRAW_SUIT

The suit slot's item (update_worn_oversuit()).

DIRT_REDRAW_UNIFORM

The uniform slot's item (update_worn_undersuit()).

DIRT_ROLE_BODY

A solid coat, from DIRT_THRESHOLD_BODY up: most of a mark.

DIRT_ROLE_CORE

The thickest part: the contact point, or a wet coat's underside.

DIRT_ROLE_FILM

A thin coat, from DIRT_THRESHOLD_FILM up: a mark's fringe and edges.

DIRT_ROLE_FLECK

A speck highlight: dirt_cleanup() and dirt_despeckle() leave it as it is.

DIRT_ROLE_GLINT

A wet coat's highlight.

DIRT_ROLE_HAZE

The palest edge, drawn as half coverage in the film mask.

DIRT_ROLE_NONE

No role: a bare pixel.

DIRT_RUN_GAP

Pixels of skin a view keeps between two runs or drops, and between splats: side by side they filled into a sheet.

DIRT_RUN_GROUP_EARLY

The run group of level 2's carry-on from a deposit's first drop.

DIRT_SKIN_LAYER

The layer skin's mess draws at: under the underclothes (UNDER_UNIFORM_LAYER and UNDER_UNIFORM_SOCKS_LAYER) and the genitals, over body hair (BODY_HAIR_LAYER), markings and the limbs.

DIRT_SURFACE_CLOTH

A worn item or underclothes: one mask over the whole canvas, clipped to what the garment shows.

DIRT_SURFACE_MARGIN

How many pixels round a body its surface reaches, so dirt may run past the silhouette onto clothing.

DIRT_SURFACE_SKIN

Bare skin: bare legs streak, lone pixels go, and each limb's mask is clipped to that limb's pixels.

DIRT_TAUR_INSET

How far into the taur canvas the body's own tile starts.

DIRT_TAUR_MAX_LEVEL

The last level a taur body's pools have: a splat at the top level draws them at this one.

DIRT_TAUR_RIDER

What a taur canvas pixel shows where the rider is drawn over the taur body.

DIRT_TAUR_WIDTH

Pixels across the canvas a taur body is drawn on, centred on its tile.

DIRT_THRESHOLD_BODY

Body: a solid coat (DIRT_BODY_T) passes it.

DIRT_THRESHOLD_CORE

Core: only a contact point or a wet coat's underside reaches it.

DIRT_THRESHOLD_FILM

Film, and the least that draws at all: anything thinner is dropped.

DIRT_UNDERCLOTHES_BRA

The bra slot: the chest.

DIRT_UNDERCLOTHES_LAYER

The layer mess on the underclothes draws at: over them, under the uniform and genitals drawn above underwear.

DIRT_UNDERCLOTHES_SOCKS

The socks slot: the thighs, groin and butt where they reach (stockings, tights). Taurs and bodies with fewer than two legs wear none.

DIRT_UNDERCLOTHES_UNDERSHIRT

The undershirt slot: the chest, stomach and back; a corset or leotard the groin and butt too.

DIRT_UNDERCLOTHES_UNDERWEAR

The underwear slot: the groin, butt and the thighs it reaches; a one-piece swimsuit the chest too.

DIRT_WRAP_DEGREES

An angle in degrees turned into the range -180 up to 180, never 180, as the reference generator wraps one. Exact from -540 up to 540, which a difference of two thetas never leaves. It reads degrees up to five times, so pass it a variable.

DIRT_ZONE_BACK

The back, under the shoulder blades. On a taur, the taur body's back takes a share too.

DIRT_ZONE_BUTT

The cheeks either side of the cleft, and the backs of the upper legs.

DIRT_ZONE_CHEST

The torso's upper front.

DIRT_ZONE_COCK

The penis, through a one-part portal.

DIRT_ZONE_FACE

The lower face, under the eyes. Whatever covers the mouth takes the shot.

DIRT_ZONE_GROIN

The front at the waistband: the torso's lowest part and the tops of the legs.

DIRT_ZONE_STOMACH

The belly: the torso's front between the groin and the chest.

DIRT_ZONE_THIGHS

The front of the thighs, from the knee up.

VV_HK_DIRT_CLEAR

Admin-only VV action using the Clear Dirt admin verb.