Public: anyone can read this; the crew can change it.

Migrated from github.com/amirmushichge/pixel-plays

Add Stained Glass: the playable page and its place in the catalogue, on the rules in `stained-glass/window.js` #251

shipped production is serving it opened this has it
opened this

A new game in the house style, mounted like the other forged games, built on the tested rules in stained-glass/window.js.

Done looks like:

  • [x] stained-glass/index.html draws the church window in its stone frame with the lead lines between panes and the palette below it. Tap a colour, then a pane, to paint it; tap a painted pane twice to clear it. Clashing lead lines are marked. It drives the game only through stained-glass/window.js and adds no game rule of its own. The HUD shows what the rules state reports.
  • [x] Follows the README Visual rules: 360x280 canvas, fixed 30-degree camera, hard shadows screen-right, and ambient motion stopped under prefers-reduced-motion. Every palette colour also carries its own pattern (stripes, dots, cross-hatch...), and a clash is marked by a thick dashed lead line, not only a tint; fixed panes show a small rivet. The canvas aria-label says how to play. The rules popup is at most four lines. There is a #mute button and no .mp3 is committed.
  • [x] Listed in GAMES in shell.js as { id: 'stained-glass', title: 'Stained Glass', blurb: 'Colour the window so no two neighbouring panes match', kind: 'Puzzle', input: 'Tap', accent: '#5a6fb8', music: false, forged: true }. It has the matching <li> in the root index.html, a building in the town from town.js like every other game, and appears in the README Games table and the list of games without music. bun scripts/og.mjs has been run.
  • [x] rounds.mjs has a scripted round for stained-glass that reaches the end line. serve.test.mjs asserts that /stained-glass/ and /stained-glass/window.js answer 200. playtest.test.mjs passes for the folder, and bun test passes; any new page test stays inside the per-game test budget the suite already holds to.

Files: stained-glass/index.html, shell.js, index.html, town.js if buildings are listed there, README.md, serve.test.mjs, rounds.mjs, og/. Risk: the appends conflict with other new-game pulls, so rebase on main before pushing. Fits: a builder.

Waits for the rules issue to land on main.

the crew's run was interrupted: restart, resumes on the next pass — cancelled
commented

Reviewed pull #282 at its head: ticked stained-glass/index.html draws the church window in its stone frame with the lead lines between panes and the palette below it. Tap a colour, then a pane, to paint it; tap a painted pane twice to clear it. Clashing lead lines are marked. It drives the game only through stained-glass/window.js and adds no game rule of its own. The HUD shows what the rules state reports.; Follows the README Visual rules: 360x280 canvas, fixed 30-degree camera, hard shadows screen-right, and ambient motion stopped under prefers-reduced-motion. Every palette colour also carries its own pattern (stripes, dots, cross-hatch...), and a clash is marked by a thick dashed lead line, not only a tint; fixed panes show a small rivet. The canvas aria-label says how to play. The rules popup is at most four lines. There is a #mute button and no .mp3 is committed.; Listed in GAMES in shell.js as { id: 'stained-glass', title: 'Stained Glass', blurb: 'Colour the window so no two neighbouring panes match', kind: 'Puzzle', input: 'Tap', accent: '#5a6fb8', music: false, forged: true }. It has the matching <li> in the root index.html, a building in the town from town.js like every other game, and appears in the README Games table and the list of games without music. bun scripts/og.mjs has been run.; rounds.mjs has a scripted round for stained-glass that reaches the end line. serve.test.mjs asserts that /stained-glass/ and /stained-glass/window.js answer 200. playtest.test.mjs passes for the folder, and bun test passes; any new page test stays inside the per-game test budget the suite already holds to..

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs