diff --git a/game/presentation/views/board_cell_unit.gd b/game/presentation/views/board_cell_unit.gd index 42026571..67d709dd 100644 --- a/game/presentation/views/board_cell_unit.gd +++ b/game/presentation/views/board_cell_unit.gd @@ -140,19 +140,19 @@ func _draw() -> void: draw_texture_rect(tex_mutation, rect, false) # ③ 数字/徽章(数字 ≥ 格高 50% 墨族对格底 ≥4.5:1;徽章右下角金,遮蔽态 = "?") if glyph != "": - # 数字色牌(原则二:数字一律垫素色直角牌——对比由牌墨承载,可读不依赖格底;暗地面瓦片批的 - # 可读性修复 2026-09-26。牌尺寸 0.66/0.68 格边居中——字形 ≥0.5 格边在牌内留白 ≥1px; - # 旗=未开格不垫牌(旗朱在墙瓦片上已可读)) + # 数字色牌(原则二:数字一律垫素色直角牌——对比由牌墨承载,可读不依赖格底。 + # 牌尺寸 0.60/0.62 格边居中 = 样张 v2 冻结值(2026-09-28 四冻结·数字形制;字形 0.5 格边 + # 在牌内留白 ≥2px);旗=未开格不垫牌(封印黑在墙瓦片上已可读)) if plate: - var pw := edge * 0.66 - var ph := edge * 0.68 + var pw := edge * 0.60 + var ph := edge * 0.62 var pr := Rect2((edge - pw) * 0.5, (edge - ph) * 0.5, pw, ph) draw_rect(pr, UiKit.DIGIT_PLATE, true) draw_rect(pr, UiKit.DIGIT_PLATE_EDGE, false, 1.0) if tex_glyph != null: draw_texture_rect(tex_glyph, rect, false) else: - _draw_glyph(glyph, glyph_color, maxi(14, int(edge * 0.5))) + _draw_glyph(glyph, glyph_color, maxi(18, int(ceil(edge * 0.5)))) # 字号下限 18(§7.4 冻结公式) if badge_glyph != "": if tex_badge != null: draw_texture_rect(tex_badge, rect, false) diff --git a/game/presentation/views/board_view.gd b/game/presentation/views/board_view.gd index 4b757bad..fbd27805 100644 --- a/game/presentation/views/board_view.gd +++ b/game/presentation/views/board_view.gd @@ -627,6 +627,16 @@ func _badge_glyph(category: String) -> String: # ---- 格态渲染(灰度截图可辨:完整覆尘 / 碎裂裸土 / 已开数字) ---- +# 数字墨三档色温(样张 v2 冻结批 T4——art-bible §4.1:1-3 青墨/4-5 赭墨/6-8 锈墨; +# 冷=稀疏、暖=密集的氛围档,字形为唯一数值载体——禁八色分色) +func _digit_ink(d: int) -> Color: + if d <= 3: + return UiKit.INK_COLD + if d <= 5: + return UiKit.INK_OCHRE + return UiKit.INK_RUST + + func _paint_cell(c: Vector2i, hero: Vector2i) -> void: var u: Node2D = _cells.get(c) if u == null: @@ -651,6 +661,7 @@ func _paint_cell(c: Vector2i, hero: Vector2i) -> void: glyph = "?" # 数字遮蔽(地形变异 hide_number——信息型:该格真实数字不显示) else: glyph = str(d) + digit_col = _digit_ink(d) # 数字墨三档色温(样张 v2 冻结批 T4——§4.1) else: if flag: bg = COL_BRICK diff --git a/game/presentation/views/ui_kit.gd b/game/presentation/views/ui_kit.gd index 203a6d2a..0886f9a5 100644 --- a/game/presentation/views/ui_kit.gd +++ b/game/presentation/views/ui_kit.gd @@ -7,6 +7,9 @@ extends RefCounted # ── 色板(语义族;值 = 2026-09-20 收敛时现值) ── const INK := Color8(51, 38, 27) # 墨族——正文/数字(对格底 ≥4.5:1) +const INK_COLD := Color8(19, 46, 54) # 青墨 1-3 #132E36(数字墨三档·冷=稀疏——样张 v2 定稿 2026-09-28) +const INK_OCHRE := Color8(60, 37, 12) # 赭墨 4-5 #3C250C(数字墨三档·中) +const INK_RUST := Color8(74, 30, 20) # 锈墨 6-8 #4A1E14(数字墨三档·暖=密集) const INK_LABEL := Color8(46, 34, 24) # 标签深墨 const INK_TITLE := Color8(30, 26, 22) # 亮底标题墨 const INK_ROUTE := Color8(24, 20, 16) # 节点图最深墨