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

bulge_family

Bulge families: the set of shapes a garment bulges with. A garment names its family by typepath in its bulge_family var (garment_families.dm).

A family is never instantiated. Its data are vars initialised here and read with initial() from the typepath: nothing is allocated or retained, there is no lookup list, and a read costs about what a datum var read does.

The shapes are named from these vars: "[shapes][half|hard][size][plain|digi]" up to small_cap, in the template sheets (icons/templates, found by templates.dm), and past it one per penis shape, "[shapes][half|hard][size][plain|digi]_[penis shape]", derived at run time from the penis sprites (top_row, hem, contained, curtain and long say how). Those five vars belong to the shapes stem, as a loincloth's worn_icon, worn_icon_state, first_column, last_column, start_x, start_y and drop belong to its drapes stem: what is derived is kept for the round by its name, so the families that share a stem must agree on them (bulge_derivation checks it). Where a family draws another family's shapes by design, it names that family (half_shapes_of, hard_shapes_of, large_shapes_of) instead of repeating them. A garment whose approved look differs from its family's is given a subtype of the family that says how.

Vars

clearanceSkirts whose shaft shows through the cloth have anatomy clearance masks (skirt_clearance.dmi).
containedSizes past small_cap (BULGE_SIZE_BIT()) at which the cloth still holds the whole penis below top_row: only its head shows, below the hem when half hard and at the tip facing east and west when hard.
curtainSizes past small_cap at which the hard bulge of the human penis hangs a curtain of cloth from the tip down to the hem, facing east and west (every other penis shape is amended there instead: bulge_derive_large()).
drapesStem of a loincloth's drape and cut names (both derived at run time: bulge_drape(), bulge_loincloth_cut()).
dropHow far a loincloth's flap drops past its hinge: a penis reaching less far than that has the rest hang below it.
finishThe finish its adaptive palette is computed with (BULGE_FINISH_*).
first_columnThe columns (from the left of the tile) of a loincloth's flap facing south: the rows of its drape there.
flapsSkirts that reveal cut a flap off the cover when hard (skirt_flaps.dmi).
flat_tip_fromBulge size from which the loincloth's drape has a flat tip; 0 when it never has.
half_capLargest bulge size the family has shapes for when half hard; 0 when it never draws.
half_shapes_ofThe family whose half-hard shapes (up to small_cap) this family draws, when they are that family's by design.
hard_capLargest bulge size the family has shapes for when hard; 0 when it never draws.
hard_shapes_ofThe family whose hard shapes (up to small_cap) this family draws by design, with their anatomy clearance and flaps, except at the sizes it has its own of.
hemThe last row they cover it to, the garment's hem over the crotch.
large_digi_formsForms (BULGE_FORM_*) whose shapes past small_cap have digitigrade versions; the others draw the plain ones.
large_shapes_ofThe family whose shapes past small_cap (one per penis shape) this family draws, by design.
lifted_hemThe cut a hard loincloth takes when its drape stays above the hem facing south (a tentacle's stub).
loinclothLoincloths lift their flap when hard: the penis shows under a drape instead of a hard bulge. Every loincloth names its drapes, so this is the same as drapes being set; it is kept as the plain question.
longLong legs: past small_cap the cloth holds the whole penis below top_row and never bares the head of a half-hard one, which it presses flat along the thigh, facing east and west.
own_clearance_sizesHard sizes at which such a family has its own anatomy clearance.
own_flap_sizesHard sizes at which such a family has its own flap.
own_shape_sizesHard sizes (BULGE_SIZE_BIT()) at which a family that draws another family's hard shapes has its own shape.
print_capLargest size a printed garment of this family has a printed look for. A bigger bulge is drawn from the family's own shapes up to its caps, and stays at this size where the family has none.
printed_patchesStem of a printed garment's precoloured patches past small_cap (printed_patches.dmi), drawn instead of a print derived from its sprite; null when its prints are derived.
shapesStem of the names of the family's own shapes, and of a skirt's own anatomy clearance and flaps; null when it has none of its own.
small_capLargest size drawn from shapes that do not depend on the penis shape; past it, a shape per penis shape.
start_xWhere a loincloth's drape starts facing east, the flap's hinge: its column and row. The flap's two columns facing east end there, and its cut facing east and west takes them from that row down.
top_rowThe first row (from the top of the tile) the family's shapes past small_cap cover the penis from (bulge_shape()).
worn_iconA loincloth's own worn sprite and state: its drape's rows facing south and its cuts are taken from it.

Var Details

clearance

Skirts whose shaft shows through the cloth have anatomy clearance masks (skirt_clearance.dmi).

contained

Sizes past small_cap (BULGE_SIZE_BIT()) at which the cloth still holds the whole penis below top_row: only its head shows, below the hem when half hard and at the tip facing east and west when hard.

curtain

Sizes past small_cap at which the hard bulge of the human penis hangs a curtain of cloth from the tip down to the hem, facing east and west (every other penis shape is amended there instead: bulge_derive_large()).

drapes

Stem of a loincloth's drape and cut names (both derived at run time: bulge_drape(), bulge_loincloth_cut()).

drop

How far a loincloth's flap drops past its hinge: a penis reaching less far than that has the rest hang below it.

finish

The finish its adaptive palette is computed with (BULGE_FINISH_*).

first_column

The columns (from the left of the tile) of a loincloth's flap facing south: the rows of its drape there.

flaps

Skirts that reveal cut a flap off the cover when hard (skirt_flaps.dmi).

flat_tip_from

Bulge size from which the loincloth's drape has a flat tip; 0 when it never has.

half_cap

Largest bulge size the family has shapes for when half hard; 0 when it never draws.

half_shapes_of

The family whose half-hard shapes (up to small_cap) this family draws, when they are that family's by design.

hard_cap

Largest bulge size the family has shapes for when hard; 0 when it never draws.

hard_shapes_of

The family whose hard shapes (up to small_cap) this family draws by design, with their anatomy clearance and flaps, except at the sizes it has its own of.

hem

The last row they cover it to, the garment's hem over the crotch.

large_digi_forms

Forms (BULGE_FORM_*) whose shapes past small_cap have digitigrade versions; the others draw the plain ones.

large_shapes_of

The family whose shapes past small_cap (one per penis shape) this family draws, by design.

lifted_hem

The cut a hard loincloth takes when its drape stays above the hem facing south (a tentacle's stub).

loincloth

Loincloths lift their flap when hard: the penis shows under a drape instead of a hard bulge. Every loincloth names its drapes, so this is the same as drapes being set; it is kept as the plain question.

long

Long legs: past small_cap the cloth holds the whole penis below top_row and never bares the head of a half-hard one, which it presses flat along the thigh, facing east and west.

own_clearance_sizes

Hard sizes at which such a family has its own anatomy clearance.

own_flap_sizes

Hard sizes at which such a family has its own flap.

own_shape_sizes

Hard sizes (BULGE_SIZE_BIT()) at which a family that draws another family's hard shapes has its own shape.

print_cap

Largest size a printed garment of this family has a printed look for. A bigger bulge is drawn from the family's own shapes up to its caps, and stays at this size where the family has none.

printed_patches

Stem of a printed garment's precoloured patches past small_cap (printed_patches.dmi), drawn instead of a print derived from its sprite; null when its prints are derived.

shapes

Stem of the names of the family's own shapes, and of a skirt's own anatomy clearance and flaps; null when it has none of its own.

small_cap

Largest size drawn from shapes that do not depend on the penis shape; past it, a shape per penis shape.

start_x

Where a loincloth's drape starts facing east, the flap's hinge: its column and row. The flap's two columns facing east end there, and its cut facing east and west takes them from that row down.

top_row

The first row (from the top of the tile) the family's shapes past small_cap cover the penis from (bulge_shape()).

worn_icon

A loincloth's own worn sprite and state: its drape's rows facing south and its cuts are taken from it.