From c1e3082f0897678399c525b599d6043601ffd0d4 Mon Sep 17 00:00:00 2001 From: ninemine <1371605831@qq.com> Date: Fri, 31 Oct 2025 17:26:30 +0800 Subject: [PATCH] =?UTF-8?q?=E5=90=88=E5=B9=B6=E8=B5=8C=E5=9C=BA=E7=B3=BB?= =?UTF-8?q?=E7=BB=9F=E5=88=86=E6=94=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .tasks/2025-10-30_1_add_casino_games.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/.tasks/2025-10-30_1_add_casino_games.md b/.tasks/2025-10-30_1_add_casino_games.md index ff00976..8a20686 100644 --- a/.tasks/2025-10-30_1_add_casino_games.md +++ b/.tasks/2025-10-30_1_add_casino_games.md @@ -502,5 +502,30 @@ if game_type == 'casino': - 阻碍因素:无 - 状态:成功 +[2025-10-31_17:24:08] +- 已修改:games/casino.py +- 更改:重构21点游戏指令流程,改为更符合标准的玩法 + - 修改_open_blackjack:改为`.赌场 21点 open <底注> <黑杰克倍数>`,移除max_bet参数 + - 新增_join_blackjack:添加`.赌场 21点 join`指令,玩家加入游戏时扣除底注,检查积分是否足够 + - 修改_bet_blackjack:改为加注功能,仅在playing阶段可用,加注金额必须不低于底注 + - 修改_deal_blackjack:实现标准发牌顺序(先玩家1张→庄家明牌→玩家第2张→庄家暗牌),庄家隐藏一张暗牌 + - 修改_status_blackjack:游戏阶段隐藏庄家暗牌,只显示明牌,结算后显示完整手牌 + - 修改_stand_blackjack:检查所有玩家是否都已完成(停牌或爆牌),如果所有玩家都完成则自动触发结算 + - 修改_hit_blackjack:如果爆牌后所有玩家都完成,也自动触发结算 + - 更新_get_blackjack_help:反映新的指令流程和规则 +- 原因:用户要求新的指令流程:启动(open)→加入(join)→发牌(deal)→操作(hit/stand/bet加注)→自动结算 +- 阻碍因素:无 +- 状态:成功 + +[2025-10-31_17:24:08] +- 已修改:games/casino.py +- 更改:修复停牌和要牌功能中的字典键访问错误 + - 修复_hit_blackjack中自动结算检查:将`player_hand['hand_status']`改为`player_hand['status']` + - 修复_stand_blackjack中自动结算检查:将`player_hand['hand_status']`改为`player_hand['status']` + - 原因:`get_all_blackjack_hands`返回的字典结构为`{user_id: {'cards': [...], 'status': ...}}`,应使用`status`而不是`hand_status` +- 原因:用户测试停牌功能时遇到KeyError: 'hand_status'错误 +- 阻碍因素:无 +- 状态:成功 + # 最终审查 待完成