feat: module 05 assemble

Cards become JSON data in course/cards (one file per card, validated
against card.schema.json and the catalog); the M5 references load them
via registerCards and interpret effects, replacing content closures.
Adds assemble(base, donor, half), the assemble/buffHand effects with an
injected chooser, Fleshshape as the data-only Expansion Drop, and stages
course/cards in verify-references and start-module.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Lucas WintherandClaude Opus 5.5 committed 2026-10-29 03:17:21 +01:00
1 parent 55fe5a71d7
commit e04dc1a11f
73 files changed
+6010 -9

No files matched your search

+28
View File
@@ -174,6 +174,34 @@
"text": "",
"fictional": true
},
{
"name": "Test Sponge",
"kind": "card",
"type": "minion",
"cost": 1,
"attack": 1,
"health": 3,
"text": "",
"fictional": true
},
{
"name": "Test Chorus",
"kind": "card",
"type": "minion",
"cost": 1,
"attack": 1,
"health": 5,
"text": "Your minions trigger their Deathrattles an additional time.",
"fictional": true
},
{
"name": "Test Workshop",
"kind": "card",
"type": "spell",
"cost": 2,
"text": "Assemble a Battlecry minion. Give all minions in your hand +1/+1.",
"fictional": true
},
{
"name": "BABA",
"kind": "word",