feat(game): 添加摸牌和碰杠胡操作功能

- 在游戏状态中添加 needDraw 字段用于标识当前回合是否需要摸牌
- 实现 canDrawTile 计算属性控制摸牌按钮的显示和启用状态
- 添加 claimActionPending 状态防止重复提交操作
- 实现 myClaimState、visibleClaimOptions 和 showClaimActions 计算属性
- 添加 submitClaim 方法处理碰/杠/胡/过操作
- 实现 normalizePendingClaim 函数解析服务端推送的声明状态
- 在底部手牌区域将牌图片改为按钮以便点击弃牌
- 添加摸牌按钮和声明操作栏界面元素
- 更新房间创建表单添加局数选择选项
- 添加 E2E 测试文件验证多人房间流程
- 为登录页面输入框和按钮添加 testid 属性便于测试
- 修复 test-results 文件中的失败测试记录
This commit is contained in:
2026-03-29 17:46:34 +08:00
parent 5c9c2a180d
commit 7751d3b8e3
13 changed files with 543 additions and 42 deletions

View File

@@ -635,11 +635,36 @@
filter: drop-shadow(0 6px 12px rgba(0, 0, 0, 0.18));
}
.wall-live-tile-button {
padding: 0;
border: 0;
background: transparent;
appearance: none;
cursor: pointer;
}
.wall-live-tile-button:disabled {
cursor: default;
opacity: 1;
}
.wall-live-tile-button:disabled .wall-live-tile {
opacity: 1;
filter: drop-shadow(0 6px 12px rgba(0, 0, 0, 0.18));
}
.wall-bottom.wall-live .wall-live-tile-button + .wall-live-tile-button,
.wall-bottom.wall-live .wall-live-tile-button + .wall-live-tile,
.wall-bottom.wall-live .wall-live-tile + .wall-live-tile-button {
margin-left: -4px;
}
.wall-bottom.wall-live .wall-live-tile + .wall-live-tile {
margin-left: -4px;
}
.wall-bottom.wall-live .wall-live-tile.is-group-start {
.wall-bottom.wall-live .wall-live-tile.is-group-start,
.wall-bottom.wall-live .wall-live-tile-button.is-group-start {
margin-left: 12px;
}