bulge_print_reader 
One direction of a worn sprite while a patch is derived, read a row at a time: rows the rule never visits are never read. Lives for one derivation.
Vars | |
| all_read | Whether every row has been read; the row branch looks down whole columns. |
|---|---|
| frame | The sprite facing one way. |
| pixels | Row + 1 (rows from 0 at the top) -> its 32 pixels as GetPixel() text, null where transparent; null until read. |
| runs | Row + 1 -> its print as flat (first, last) column pairs, FALSE when it has none; null until read. |
Procs | |
| is_interior | Whether (column, row) is inside the print. |
| read_all_rows | Reads every row not read yet. |
| row_runs | Returns the print on row: flat (first, last) column pairs of the row's interior, or FALSE. Each run of garment
pixels counts whole when one or two pixels wide and loses its two end pixels (its outline) when wider. Reads the
row the first time. |
| source_pixel | The garment pixel (GetPixel() text) the print rule carries to (column, row) of a patch facing facing, or null
when the sprite has no print at all. Inside the print a pixel keeps its own colour. Elsewhere the print is mirrored
in from beside it: rows first (above the waistband or below the hem), then along the row toward the body in profile,
so stripes and patterns run on instead of one edge colour smearing out. |
Var Details
all_read 
Whether every row has been read; the row branch looks down whole columns.
frame 
The sprite facing one way.
pixels 
Row + 1 (rows from 0 at the top) -> its 32 pixels as GetPixel() text, null where transparent; null until read.
runs 
Row + 1 -> its print as flat (first, last) column pairs, FALSE when it has none; null until read.
Proc Details
is_interior
Whether (column, row) is inside the print.
read_all_rows
Reads every row not read yet.
row_runs
Returns the print on row: flat (first, last) column pairs of the row's interior, or FALSE. Each run of garment
pixels counts whole when one or two pixels wide and loses its two end pixels (its outline) when wider. Reads the
row the first time.
source_pixel
The garment pixel (GetPixel() text) the print rule carries to (column, row) of a patch facing facing, or null
when the sprite has no print at all. Inside the print a pixel keeps its own colour. Elsewhere the print is mirrored
in from beside it: rows first (above the waistband or below the hem), then along the row toward the body in profile,
so stripes and patterns run on instead of one edge colour smearing out.