Crapette: add the foundation-priority stop rule and sequenced house moves

* cg-crapette.el (cg-crapette-stops): new defcustom.
(cg-crap--stop): call STOP (end your turn) or block, per the custom, when
you skip an available foundation play; wired into drop, draw, and end.
(cg-crap--builds-down-p, cg-crap--house-run, cg-crap--free-houses,
cg-crap--capacity, cg-crap--house-move, cg-crap--do-move): move a legal
sequence between houses, limited by the number of empty houses.
* test/card-games-tests.el: add cgt-crap-house-run, -sequence-move,
-sequence-space, -stop.
* NEWS: note the stop rule and sequenced moves.
This commit is contained in:
Corwin Brust 2026-07-01 03:25:50 -05:00
parent 0d8901041f
commit f7932047ce
3 changed files with 200 additions and 45 deletions

7
NEWS
View file

@ -16,8 +16,11 @@ the mouse as well as the keyboard.
- Rummy family: Gin Rummy, Rummy, Rummy 500, Hand & Foot.
- Matching: Go Fish, Old Maid.
- Shedding and climbing: Crazy Eights, President.
- Two-player: Russian Bank / Crapette, played against the computer
(foundations, shared houses, and loading cards onto your opponent).
- Two-player: Russian Bank / Crapette, played against the computer --
foundations, shared houses, loading cards onto your opponent, the
"stop" rule that ends your turn if you skip a foundation play
(toggle with ~cg-crapette-stops~), and sequenced house-to-house
moves limited by the number of empty houses.
- Pegging: Cribbage. Capturing: Scopa, Casino. Spite & Malice.
(These join Gaps/Montana, Hell's Half-Acre, and 500 from 1.0.60.)