iter56-卡2:封印动作改版(迭代56卡2·受理即揭示): 规则核心(target_sealed挖封印格拒/清图口径=挖开∪封印/能清图的封最优先/notify_cleared清图收轮/sealed_identity撤出→BoardData.cell_identity——上限20用户裁)+结算面dug_under_seal删净+破封一击退役+呈现层(地板+身份字形+印记不依赖揭示态+文案四件)+探针V8-V10+sim域(标空封印剔除约束增强+错触直挖补偿注入0.10)+golden三图换代; MC同批重锚50/档=100局(2026-11-08用户批准)三方对照无结构性恶化; 高档审计通过(17行全量·审计后勘误2项闭环)

This commit is contained in:
DKChan committed 2026-11-08 03:47:33 +08:00
1 parent 908e518306
commit 5ec4a311bb
34 files changed
+589 -164

No files matched your search

+8
View File
@@ -43,6 +43,14 @@ func is_safe(c: Vector2i) -> bool:
func digit_of(c: Vector2i) -> int:
return digits.get(c, -1)
## 格身份事实(封闭枚举):kind = "mine"(digit 恒 -1)| "safe"(digit = 邻雷数)。
## 封印受理即揭示的消费形态 = 呈现/测量侧按封印态(MinesweeperRules.has_seal)取本读数拼装——
## 身份事实单点在板数据(is_mine/digit_of 同源),禁消费方各自拼 kind 枚举。
func cell_identity(c: Vector2i) -> Dictionary:
if is_mine(c):
return {"kind": "mine", "digit": -1}
return {"kind": "safe", "digit": digit_of(c)}
func variant_ids(c: Vector2i) -> Array:
return variants.get(c, [])