- holdem 引擎与 UI:筹码不足大盲的「坐板凳」状态补全 * eligibleCount 从 seatedWithChips 改用 seatedCanPlay(只看筹码足够大盲的玩家) * broke 判定从 stack <= 0 改为 stack < bigBlind(短筹码也能补码) * 座位卡新增「筹码不足」徽章(提示玩家补码) * 行动者切换时 raiseAmt 重置(避免上一位玩家拖动的值残留) * WaitingControls 接收 gameover prop,便于 UI 显示结算 - holdem.test.ts:覆盖新逻辑(broke / eligible / 补码 / 行动者切换 raise 重置) - pig 引擎与 UI:墩满 3 秒延迟收牌 + 玩家名同步 * G.trickWinner 字段:满墩但未收牌期间用于 UI 高亮;3 秒后由 collectTrick 收牌推进 * G.playerNames 字段:setName move 写入,server join 时 best-effort 派发 + 客户端 mount 兜底 * pig.test.ts:新增 trickWinner / collectTrick / setName 单测 - PigBoard.tsx:座位卡显示真实姓名(优先 G.playerNames → prop → 玩家N 回退) * 挂载时调 setName 把本人真实名写入引擎,广播后所有人可见 * 墩满时显示赢家高亮 + 3 秒倒计时收牌 - rooms.ts:注释说明 join 阶段 setName 派发为 best-effort(boardgame.io 对非 active 玩家在 stateID=0 拦截 move),真实可靠的姓名来自客户端连上后的 setName - 新增联机 E2E(playwright): * holdem-3p-allin.spec.ts:3 人德州 all-in 流局 + 边池分配 * holdem-allin-repro.spec.ts:all-in 重现回归 * pig-names-and-trick-delay.spec.ts:拱猪 4 人真实姓名显示 + 墩满延迟收牌 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
7.0 KiB
7.0 KiB