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

clothing

Vars

bulge_familyThe family this underwear or undershirt bulges with when it is the cover (/datum/bulge_family/none: never).
bulge_printedDrawn from the garment's own print instead of the adaptive palette.
digi_icon_stateIcon state in the digitigrade template file to use if the wearer is digitigrade. If null, no special digitigrade handling is done.
female_sprite_flagsWhat kind of gender shaping this sprite accessory should use (in case your sprite gets a weird missing pixel in the center)
fit_modeHow this style is redrawn over fitness limbs and pecs drawn under it, a GARMENT_FIT_* define, or null to draw it as it is on every body.
greyscale_colorsColor pallete for static colored underwear, like hearts. Used so greyscale copies can have the same palette.
greyscale_configAllows you to specify a greyscale config
has_custom_digi_spriteSet to TRUE if this icon has its own custom icon for digi (as opposed to the GAGS autogenerated ones)
hides_breastsWhether this underwear includes a top (Because gender = FEMALE doesn't actually apply here.). Hides breasts, nothing more.
layerThe layer this sprite accessory should render on

Procs

bares_near_forearmWhether this top leaves the near forearm bare below its sleeve in its side views, edged by a strip of cloth at the back, as the polo shirts do. Fitted over a bigger arm, the forearm then shows at that arm's own width (/datum/garment_fit_view/proc/bare_near_forearm()); otherwise the strip moves out across it as a sleeve's hem would, and the forearm looks thin. Only the polos opt in: other shirts keep their fit. A proc, as hangs_straight_over_pecs() is.
chest_cut_stateReturns the state a top cut for a chest with breasts draws on wearer: its own state over breasts, and on a female body unless its breasts are pecs; on any other chest, without breasts or with pecs, the state its suffixes name.
fitted_spriteReturns this style's sprite as make_appearance() draws it on wearer, fitted to their fitness limbs and to pecs drawn under it: a cached resource. Null to draw it as it is: on a Normal-sized body with no pecs under it (its garment_fit is null), a style that isn't fitted, worn by nobody, like a mannequin's, a fit that leaves it as it is, or one still being made by SSgarment_fitting, which draws the body again once it's done (GARMENT_FITS_DEFERRED; a dummy's fits are made as it's drawn).
garment_covers_chestWhether this style is worn over the chest, so pecs drawn under it shape it: an undershirt or a bra always, other underclothes when they hide breasts, as /obj/item/organ/genital/proc/covered_by_underclothes() has it.
get_icon_stateOverride to return a different icon state given a bodytype or physique
hangs_straight_over_pecsWhether this top hangs straight over pecs drawn under it: its front and back panels stay as drawn, and the pecs show where they reach past them, at the armholes. Its front view still shades their lower curve, and its side views still cover their bulge. Otherwise its chest panel moves out over them (/datum/garment_fit_view/proc/fit_pecs()). A proc rather than a var, as garment_covers_chest() is: a style opts in by overriding it.
make_appearanceGenerate an appearance from this clothing datum

Var Details

bulge_family

The family this underwear or undershirt bulges with when it is the cover (/datum/bulge_family/none: never).

bulge_printed

Drawn from the garment's own print instead of the adaptive palette.

digi_icon_state

Icon state in the digitigrade template file to use if the wearer is digitigrade. If null, no special digitigrade handling is done.

female_sprite_flags

What kind of gender shaping this sprite accessory should use (in case your sprite gets a weird missing pixel in the center)

fit_mode

How this style is redrawn over fitness limbs and pecs drawn under it, a GARMENT_FIT_* define, or null to draw it as it is on every body.

greyscale_colors

Color pallete for static colored underwear, like hearts. Used so greyscale copies can have the same palette.

greyscale_config

Allows you to specify a greyscale config

has_custom_digi_sprite

Set to TRUE if this icon has its own custom icon for digi (as opposed to the GAGS autogenerated ones)

hides_breasts

Whether this underwear includes a top (Because gender = FEMALE doesn't actually apply here.). Hides breasts, nothing more.

layer

The layer this sprite accessory should render on

Proc Details

bares_near_forearm

Whether this top leaves the near forearm bare below its sleeve in its side views, edged by a strip of cloth at the back, as the polo shirts do. Fitted over a bigger arm, the forearm then shows at that arm's own width (/datum/garment_fit_view/proc/bare_near_forearm()); otherwise the strip moves out across it as a sleeve's hem would, and the forearm looks thin. Only the polos opt in: other shirts keep their fit. A proc, as hangs_straight_over_pecs() is.

chest_cut_state

Returns the state a top cut for a chest with breasts draws on wearer: its own state over breasts, and on a female body unless its breasts are pecs; on any other chest, without breasts or with pecs, the state its suffixes name.

Arguments:

fitted_sprite

Returns this style's sprite as make_appearance() draws it on wearer, fitted to their fitness limbs and to pecs drawn under it: a cached resource. Null to draw it as it is: on a Normal-sized body with no pecs under it (its garment_fit is null), a style that isn't fitted, worn by nobody, like a mannequin's, a fit that leaves it as it is, or one still being made by SSgarment_fitting, which draws the body again once it's done (GARMENT_FITS_DEFERRED; a dummy's fits are made as it's drawn).

The legs are fitted through their digitigrade templates where the legs drawn are digitigrade art: a "_d" state (a style with has_custom_digi_sprite) or the GAGS digitigrade mask (digi_icon_state). A plantigrade state on a digitigrade body is fitted as the human legs it draws, and a taur body's legs aren't fitted. A style worn over the chest is also fitted to pecs drawn under it (pecs_under_underclothes()), and while they flex, animated with them (/datum/garment_fit_job/underclothes/flex). Its fits over those pecs flexing, one for each pec flex sheet, are queued the first time it's drawn over them and made in the background, so it moves from their first flex on; a flex that comes before its fit is made draws the still fit meanwhile. On a dummy, or with GARMENT_FITS_DEFERRED off, nothing is queued ahead: each is made as the flex that first needs it draws.

Each fit is made once a round, and cached by the fit and the style's state, cut and mask.

Arguments:

garment_covers_chest

Whether this style is worn over the chest, so pecs drawn under it shape it: an undershirt or a bra always, other underclothes when they hide breasts, as /obj/item/organ/genital/proc/covered_by_underclothes() has it.

get_icon_state

Override to return a different icon state given a bodytype or physique

hangs_straight_over_pecs

Whether this top hangs straight over pecs drawn under it: its front and back panels stay as drawn, and the pecs show where they reach past them, at the armholes. Its front view still shades their lower curve, and its side views still cover their bulge. Otherwise its chest panel moves out over them (/datum/garment_fit_view/proc/fit_pecs()). A proc rather than a var, as garment_covers_chest() is: a style opts in by overriding it.

make_appearance

Generate an appearance from this clothing datum