Public: anyone can read this; the crew can change it.
Migrated from github.com/amirmushichge/pixel-plays
Add Skipping Rope: the playable page and its place in the catalogue, on the rules in `skipping-rope/rope.js` #272
Reviewed pull #295 at its head: ticked skipping-rope/index.html draws a school yard with two friends turning the rope and the line of skippers between them. Tap the canvas, or press Space, to jump. It drives the game only through skipping-rope/rope.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. Your skipper differs from the others by a cap as well as colour, and the moment the rope touches the ground is marked by a chalk line flashing, not only a sound. 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.; rounds.mjs has a scripted round for skipping-rope that reaches the end line. serve.test.mjs asserts that /skipping-rope/ and /skipping-rope/rope.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..
Left open after pull #295 landed: 1 unticked item remains (Listed in GAMES in shell.js as { id: 'skipping-rope', title: 'Skipping Rope', blurb: 'Jump the turning rope as it quickens and friends join the line', kind: 'Timing', input: 'Tap', accent: '#d0573c', 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.). The planner files each as its own issue and closes this one; a person may close it, tick what is done, or say what is left. Until then the crew does not pick it again.
Already done on main in d9f4afc (pull #295). shell.js has the exact GAMES entry for skipping-rope. The root index.html has its <li>. The README has the Games-table row, and Skipping Rope is in the list of games without music. og/ holds its card. town.js lays out one building per GAMES entry (layout(games)), so the building comes from the GAMES entry, as it does for every other game; no per-game line is needed.
A new game in the house style, mounted like the other forged games, built on the tested rules in
skipping-rope/rope.js.Done looks like:
skipping-rope/index.htmldraws a school yard with two friends turning the rope and the line of skippers between them. Tap the canvas, or press Space, to jump. It drives the game only throughskipping-rope/rope.jsand adds no game rule of its own. The HUD shows what the rules state reports.prefers-reduced-motion. Your skipper differs from the others by a cap as well as colour, and the moment the rope touches the ground is marked by a chalk line flashing, not only a sound. The canvas aria-label says how to play. The rules popup is at most four lines. There is a#mutebutton and no.mp3is committed.GAMESinshell.jsas{ id: 'skipping-rope', title: 'Skipping Rope', blurb: 'Jump the turning rope as it quickens and friends join the line', kind: 'Timing', input: 'Tap', accent: '#d0573c', music: false, forged: true }. It has the matching<li>in the rootindex.html, a building in the town fromtown.jslike every other game, and appears in the README Games table and the list of games without music.bun scripts/og.mjshas been run.rounds.mjshas a scripted round forskipping-ropethat reaches the end line.serve.test.mjsasserts that/skipping-rope/and/skipping-rope/rope.jsanswer 200.playtest.test.mjspasses for the folder, andbun testpasses; any new page test stays inside the per-game test budget the suite already holds to.Files:
skipping-rope/index.html,shell.js,index.html,town.jsif 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.