From db7719ca478d240b004ca23af7795e69260a18de Mon Sep 17 00:00:00 2001 From: DKChan <524912269@qq.com> Date: Sun, 8 Nov 2026 06:29:55 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D(CI=E7=BA=A2=C2=B7=E8=BF=AD?= =?UTF-8?q?=E4=BB=A356=E8=BF=BD=E7=BB=BF=E4=B8=89):=20run136=E4=B8=A4?= =?UTF-8?q?=E7=BA=A2=E6=A0=B9=E5=9B=A0=E4=B8=8E=E4=BF=AE=E6=B3=95=E2=80=94?= =?UTF-8?q?=E2=80=94=E2=91=A0=E8=83=BD=E5=8A=9B=E5=AE=A1=E8=AE=A1:?= =?UTF-8?q?=E5=8D=A11=E6=96=B0=E5=BB=BA=E9=AA=8C=E8=AF=81=E5=87=BD?= =?UTF-8?q?=E6=95=B0=5Fassert=5Ffx=5Fchain=E6=BC=8F=E6=8C=82=E5=88=A4?= =?UTF-8?q?=E6=8D=AE=E5=87=BA=E5=A4=84=E6=B3=A8=E8=AE=B0(=E6=9C=BA?= =?UTF-8?q?=E6=A3=80=E7=BA=A2=E9=A1=B91=C2=B7Windows=E6=9C=AC=E5=9C=B0?= =?UTF-8?q?=E5=90=8C=E7=BA=A2=E5=A4=8D=E7=8E=B0=E5=B9=B3=E5=8F=B0=E6=97=A0?= =?UTF-8?q?=E5=85=B3)=E2=80=94=E2=80=94=E6=B3=A8=E8=AE=B0=E8=A1=A5?= =?UTF-8?q?=E6=8C=82=E5=87=BD=E6=95=B0=E4=BD=93=E5=86=85=E9=A6=96=E8=A1=8C?= =?UTF-8?q?(=E6=9C=BA=E6=A3=80=E6=89=AB=E6=8F=8F=E5=8C=BA=E9=97=B4=3D?= =?UTF-8?q?=E5=87=BD=E6=95=B0=E8=A1=8C=E8=B5=B7,=E5=86=99func=E4=B8=8A?= =?UTF-8?q?=E6=96=B9=E8=AE=A1=E5=85=A5=E4=B8=8A=E4=B8=80=E5=87=BD=E6=95=B0?= =?UTF-8?q?=E5=90=8D=E4=B8=8B,=E5=90=8C=E6=96=87=E4=BB=B6check/=5Finit?= =?UTF-8?q?=E8=BF=87=E6=A3=80=E5=BD=A2=E6=80=81=E5=90=8C=E6=AC=BE),?= =?UTF-8?q?=E9=94=9AHUD=E6=A1=86=E6=9E=B6.md:272=E7=BB=93=E7=AE=97?= =?UTF-8?q?=E9=80=90=E8=A1=8C=E5=AE=9E=E6=97=B6=E6=BB=9A=E5=87=BA;=20?= =?UTF-8?q?=E2=91=A1=E9=9D=99=E6=80=81=E6=89=AB=E6=8F=8FS9:=E5=8D=A12?= =?UTF-8?q?=E6=96=B0=E5=A2=9Eboard=5Fview.gd:585=E6=98=BE=E5=BC=8F?= =?UTF-8?q?=E9=9D=9E=E5=8F=82=E6=95=B0=E5=8C=96Dictionary=E6=B3=A8?= =?UTF-8?q?=E8=A7=A3=3DR1=E6=97=A0=E7=B1=BB=E5=9E=8B=E5=AE=B9=E5=99=A8(Win?= =?UTF-8?q?dows=E6=9C=AC=E5=9C=B0=E5=90=8C=E7=BA=A2=E5=A4=8D=E7=8E=B0)?= =?UTF-8?q?=E2=80=94=E2=80=94=E6=94=B9:=3D=E6=8E=A8=E6=96=AD=E5=BD=A2?= =?UTF-8?q?=E6=80=81(=E8=A7=84=E7=BA=A6=C2=A776=E5=90=88=E6=B3=95=E9=9D=A2?= =?UTF-8?q?=C2=B7=E7=B1=BB=E5=9E=8B=E5=8D=95=E7=82=B9=3Dcell=5Fidentity?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E5=A3=B0=E6=98=8E;=E5=8F=82=E6=95=B0?= =?UTF-8?q?=E5=8C=96Dictionary[String,Variant]=E6=B3=A8=E8=A7=A3=E5=AE=9E?= =?UTF-8?q?=E6=B5=8B=E6=8B=92=E6=94=B6=E5=87=BD=E6=95=B0=E8=BF=94=E5=9B=9E?= =?UTF-8?q?=E7=9A=84=E8=A3=B8Dictionary=E2=80=94=E2=80=94=E8=BF=90?= =?UTF-8?q?=E8=A1=8C=E6=97=B6Variant=E7=BA=A6=E6=9D=9F=E6=8C=89Nil?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C,10=E8=A1=8CSCRIPT=20ERROR=E5=AE=9E=E8=AF=81,?= =?UTF-8?q?=E8=AF=A5=E5=BD=A2=E6=80=81=E4=B8=8D=E5=8F=AF=E7=94=A8);=20?= =?UTF-8?q?=E8=AF=BB=E6=95=B0:=20=E8=83=BD=E5=8A=9B=E5=AE=A1=E8=AE=A1--str?= =?UTF-8?q?ict=E7=BB=BF(455=E5=87=BD=E6=95=B0=E7=BA=A2=E9=A1=B90)+?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E9=97=B8=E5=BD=92=E9=9B=B6+=E5=89=8D?= =?UTF-8?q?=E7=BD=AE=E6=A3=80=E6=9F=A5=E7=BB=BF(=E5=86=92=E7=83=9F+?= =?UTF-8?q?=E5=8D=95=E5=85=834=E5=88=86=E7=89=87)+=E7=B3=BB=E7=BB=9F?= =?UTF-8?q?=E6=B5=8B=E8=AF=9576=E9=A1=B90=E5=A4=B1=E8=B4=A5=E4=B8=89?= =?UTF-8?q?=E9=97=B8=E5=85=A8=E8=BF=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- game/presentation/views/board_view.gd | 2 +- game/tests/unit/presentation/pacing_queue_test.gd | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/game/presentation/views/board_view.gd b/game/presentation/views/board_view.gd index 9ad8f01c..7db729d0 100644 --- a/game/presentation/views/board_view.gd +++ b/game/presentation/views/board_view.gd @@ -582,7 +582,7 @@ func _paint_cell_ink(c: Vector2i, u: Node2D, revealed: bool, seal: bool) -> Colo # 封印受理即揭示:身份字形按板事实当场可见(cell_identity 单点——不用等轮末判定; # 数字遮蔽不适用——遮蔽打脸受理即揭示)。 bg = COL_FLOOR - var ident: Dictionary = _board.cell_identity(c) + var ident := _board.cell_identity(c) # 推断形态(规约§76 合法面)——参数化注解拒收函数返回的裸 Dictionary if String(ident.get("kind", "")) == "mine": glyph = "危" digit_col = UiKit.RED_MINE diff --git a/game/tests/unit/presentation/pacing_queue_test.gd b/game/tests/unit/presentation/pacing_queue_test.gd index 30f7e13e..def26380 100644 --- a/game/tests/unit/presentation/pacing_queue_test.gd +++ b/game/tests/unit/presentation/pacing_queue_test.gd @@ -188,6 +188,7 @@ class FakeBoardZone extends BoardZoneView: func _assert_fx_chain(main: Node, rows_seen: Array) -> void: + # 判据出处: design/gdd/systems/表现与支撑/HUD框架.md:272 (结算逐行实时滚出——行→FX 排播链计数逐位一致) var rp = RowPacerScript.new() var fstage := FakeStage.new(null, root.get_node("/root/ConfigDB").presentation.battle_layout) var ffx := FakeFx.new()