From d71d3ce12801d7c12acdbf7c4d85018f5a379108 Mon Sep 17 00:00:00 2001 From: DKChan <524912269@qq.com> Date: Fri, 2 Oct 2026 18:31:49 +0800 Subject: [PATCH] =?UTF-8?q?t17=5Fdefer=5Fprobe=20=E8=A1=A5=E6=AF=AB?= =?UTF-8?q?=E7=A7=92=E6=97=B6=E9=97=B4=E6=88=B3=EF=BC=88=E7=BB=93=E7=AE=97?= =?UTF-8?q?=E5=85=A5=E9=98=9F/=E5=BC=B9=E7=AA=97=E5=8F=AF=E8=A7=81/?= =?UTF-8?q?=E7=9B=B8=E5=B7=AE+=E8=A1=8C=E6=95=B0=EF=BC=89=E2=80=94?= =?UTF-8?q?=E2=80=94=E5=AE=9E=E6=B5=8B=E6=95=B0=E6=8D=AE=E8=BF=9B=E8=AF=81?= =?UTF-8?q?=E6=8D=AE=E6=96=87=E4=BB=B6=EF=BC=8C=E6=8E=A2=E9=92=88=E6=9C=AC?= =?UTF-8?q?=E4=BD=93=E9=9A=8F=E6=89=B9=E5=85=A5=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- game/smoke/t17_defer_probe.gd | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/game/smoke/t17_defer_probe.gd b/game/smoke/t17_defer_probe.gd index e08f336a..4590ff73 100644 --- a/game/smoke/t17_defer_probe.gd +++ b/game/smoke/t17_defer_probe.gd @@ -65,6 +65,8 @@ func _ready() -> void: if String(main.settlement.battle_result) != "victory": _fail("战斗未胜利(result='%s')" % str(main.settlement.battle_result)) return + var t_settle := Time.get_ticks_msec() + var _rows_at_victory: int = main._row_pacer.pending_rows().size() # 时间戳①:结算入队完成帧(AP 耗尽/停手→五行段同步跑完→行全在队) # 断言①胜利同帧:终局面未开 + 挂起在案 + 队列非空(判别性——旧行为同帧开窗即红) if main._end_overlay.is_open(): _problems.append("胜利同帧终局面已开(演播后排窗失效——同帧 flush 旧路径回潮)") @@ -72,11 +74,15 @@ func _ready() -> void: _problems.append("胜利同帧挂起态缺失(_deferred_modal == null)") if main._row_pacer.pending_rows().is_empty(): _problems.append("胜利同帧排播队列已空(结算行未走排播链)") + var _played_rows: int = _rows_at_victory # 断言②排播放完:终局面开启(20s 守卫——0.22s×行数 ×10 余量) var waited := 0.0 while not main._end_overlay.is_open() and waited < 20.0: await get_tree().process_frame waited += get_process_delta_time() + var t_popup := Time.get_ticks_msec() # 时间戳②:终局面可见帧 + print("[t17_defer] 时间戳: 结算入队=%d ms · 弹窗可见=%d ms · 相差=%d ms(行数=%d)" % [ + t_settle, t_popup, t_popup - t_settle, main._row_pacer.pending_rows().size() + _played_rows]) if not main._end_overlay.is_open(): _problems.append("排播放完后终局面未开(%.1fs——演播完边沿派发失守)" % waited) if _problems.is_empty():