二七王:修正 design 全量重核发现的 3 项不一致(亮牌快照/报无主下发面/甩牌张数上限)
- §8.2 亮牌改用埋牌后 28 张静态快照 get_seat_cards_award,不再用 get_seat_cards(只含未出的牌)——否则闲家重连时 get_deskinfo 按庄家 当前剩余手牌重算,亮牌统计缩水甚至变 null。 - §9 出牌包由只带出牌者一家的 info 改为整表下发三家 seatlist,与重连包 PushCards.seatlist 同名同构;报无主后另两家的主牌数/对子数不再滞后两次出牌。 - §5.4.3 甩牌"无组合数量限制":can_playcard 去掉规则外的 14 张硬上限, 改为结构性上界 28(单人手牌上限,牌型编码在此范围内不溢出)。 协议文档同步改写 chupai 三处 info 条目与 liangpai 口径;合规文档补记第四轮 核对(流程层无缺环,规则层 3 项已收口)。全套单测 368 项通过。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -499,8 +499,11 @@ var cls_youle_erqiwang_arith = cls_youle_erqiwang_arith || {
|
||||
delete can.cardvalue;
|
||||
}
|
||||
|
||||
//规则外的约定,一次最多只能出14张牌
|
||||
if (cards.length > 14){
|
||||
//张数上界:design §5.4.3 明确甩牌「无组合数量限制」,故不设规则性上限;
|
||||
//这里只挡结构性越界——出牌阶段一名玩家最多持 28 张(埋牌后),
|
||||
//超过即不可能是合法出牌(调用方 mod.chupai 已先做 check_cards_inhand 持牌校验)。
|
||||
//注:牌型编码在 28 张内不会溢出各自区间(单张≤128、多对≤214、拖拉机≤314)
|
||||
if (cards.length > 28){
|
||||
do_returnfalse();
|
||||
return can;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user