tabletop
🎰 ビデオポーカー (宣言型定義版)
すべての存在(山札ゾーン、捨て札ゾーン、手札ゾーン、コイン)をJSONで宣言!カード移動アニメーション&ジッターオプション搭載。
📍 展開先の部屋:
読み込み中...
{
"version": "1.0",
"type": "tabletop",
"title": "ビデオポーカー (宣言型定義版)",
"board": {
"width": 10,
"depth": 7,
"color": "#0d3b1e"
},
"zones": {
"deck_zone": {
"type": "stack",
"x": -3.6,
"z": -1.8,
"name": "山札",
"faceUp": false
},
"discard_zone": {
"type": "stack",
"x": 3.6,
"z": -1.8,
"name": "捨て札",
"faceUp": true
},
"player_hand": {
"type": "hand",
"owner": "player1",
"x": 0,
"z": 1.4,
"spacing": 1.35,
"capacity": 5,
"name": "手札ゾーン",
"faceUp": true
}
},
"resources": {
"coins": {
"name": "コイン",
"initial": 100,
"min": 0
}
},
"items": [
{
"type": "deck_52",
"zone": "deck_zone",
"shuffle": true,
"jitter": true,
"deal": [
{
"to": "player_hand",
"count": 5
}
]
}
],
"actions": [
{
"id": "btn_draw",
"label": "🃏 カード交換 (DRAW)",
"color": "#2e7d32",
"action": "exchange",
"from": "player_hand",
"discardTo": "discard_zone",
"replenishFrom": "deck_zone",
"evaluate": "poker_hands",
"payoutTo": "coins"
},
{
"id": "btn_deal",
"label": "🔄 次のゲーム (DEAL)",
"color": "#1976d2",
"action": "reset_and_deal",
"bet": {
"resource": "coins",
"amount": 1
}
}
],
"rules": {
"turnBased": false,
"autoCamera": true,
"allowSelect": true,
"animateCards": true,
"jitter": true
}
}