Детерминированный конечный автомат: apply(state, action) -> {state, events}.
Весь набор правил из GAMEPLAY.md проверяется headless-тестами.
- карты: Suit/Rank/Card (флайвейт, 36 штук), колода
- GameState + клонирование и сериализация в JSON
- действия (attack/defend/take/pass) и события для слоя отображения
- раздача, выбор первого атакующего, лимиты подкидывания,
взятие карт, добор, выбывание игроков, определение дурака
- 64 теста, strict typecheck
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
10 lines
171 B
Plaintext
10 lines
171 B
Plaintext
{
|
|
"ver": "4.0.24",
|
|
"importer": "typescript",
|
|
"imported": true,
|
|
"uuid": "e301a4f0-1703-47ba-9a1c-fa73e4d2935e",
|
|
"files": [],
|
|
"subMetas": {},
|
|
"userData": {}
|
|
}
|