merge: 三时间戳语义化

This commit is contained in:
DKChan committed 2026-10-02 18:47:39 +08:00
commit c2e4be3ff2
1 file changed
+5 -2
+5 -2
View File
@@ -51,6 +51,7 @@ func _ready() -> void:
# 直挖至击杀胜利(settle_batch 真实管线——step_row 信号→排播队列,与点击路径同链)
var ms = main.settlement.minesweeper
var guard := 200
var t_ap_out := -1 # 时间戳⓪:AP 用完/停手——行动经济翻 Waiting 的那一帧(轮末结算触发点)
while guard > 0 and String(main.settlement.battle_result) == "":
guard -= 1
var plan = load("res://smoke/auto_player.gd").choose_dig(ms)
@@ -61,6 +62,8 @@ func _ready() -> void:
if plan.hero_cell != ms.hero_pos():
ms.settle_batch([{"action": "move", "cell": plan.hero_cell}])
ms.settle_batch([{"action": "dig", "cell": plan.dig_cell}])
if t_ap_out < 0 and main.settlement.action_economy.phase != "Active":
t_ap_out = Time.get_ticks_msec()
await get_tree().process_frame
if String(main.settlement.battle_result) != "victory":
_fail("战斗未胜利(result='%s')" % str(main.settlement.battle_result))
@@ -81,8 +84,8 @@ func _ready() -> void:
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])
print("[t17_defer] AP用完/触发结算=%d ms · 结算行入队完成=%d ms(两者相差 %d ms——核心同步架构同帧)· 弹窗出现=%d ms(距触发结算 %d ms = 逐行演播时长,行数 %d)" % [
t_ap_out, t_settle, t_settle - t_ap_out, t_popup, t_popup - t_ap_out, _played_rows])
if not main._end_overlay.is_open():
_problems.append("排播放完后终局面未开(%.1fs——演播完边沿派发失守)" % waited)
if _problems.is_empty():