iter44-卡1:卡①(组合根注册面批): ui_registry+三域容器建件·main.gd 49→15·全消费面改址main.ui.*·四闸主证行为零变化
This commit is contained in:
1 parent
14054d9dfb
commit
d2b36e59cb
41 files changed
+1073
-1070
No files matched your search
@@ -31,15 +31,15 @@ func _ready() -> void:
|
||||
# 同 ui_click_probe 隔离纪律。首次冒险布尔位置位=对齐真实档游玩史口径,模板抽签路径不变;
|
||||
# isolate_save 先删后建——上次运行的残留断点会触发互斥确认早退)
|
||||
ProbeUiUtil.isolate_save(main, "smoke_input_probe_save", true, false, true)
|
||||
main.debug_overlay.seed_edit.text = "42" # 种子钉死(种子框默认为空=非首局随机,探针确定性禁依赖默认分支)
|
||||
main.ui.modals.debug_overlay.seed_edit.text = "42" # 种子钉死(种子框默认为空=非首局随机,探针确定性禁依赖默认分支)
|
||||
main._start_adventure_from_menu()
|
||||
await get_tree().process_frame
|
||||
# ---- ⑫ 图上命中真实输入(回归闸):入口停点候选节点中心
|
||||
# push_input 真实鼠标路径 motion+click → 悬停预承诺置位 → route_chosen 到达组合根。
|
||||
# 由来=真机 bug:深层节点(L1 Boss 内容 x=802)在固定画布命中区外,press_candidate 直调
|
||||
# 命中函数探针全绿、真鼠标点不中——本 case 封住输入管线,⑬封住几何拟合。
|
||||
if main.level_screen.visible:
|
||||
var ro = main.level_screen
|
||||
if main.ui.modals.level_screen.visible:
|
||||
var ro = main.ui.modals.level_screen
|
||||
var cands: Array = main.run_scope.runner.next_candidate_ids()
|
||||
# ---- ⑱ 信息迷雾呈现接线(回归闸):真机 display_probe 读实际绘制记录(雾下节点类型未画、
|
||||
# Boss 描边画了、候选类型画了)+点击雾下非候选节点零提交(雾不扩大可点域——候选集即合法集)----
|
||||
@@ -90,9 +90,9 @@ func _ready() -> void:
|
||||
await get_tree().process_frame
|
||||
await get_tree().process_frame
|
||||
ro.route_chosen.disconnect(on_route)
|
||||
if not submitted.is_empty() or not main.level_screen.visible or not main.run_scope.runner.awaiting_choice():
|
||||
if not submitted.is_empty() or not main.ui.modals.level_screen.visible or not main.run_scope.runner.awaiting_choice():
|
||||
_pre_fail("case⑱ 雾下节点点击产生提交(提交=%s visible=%s 选路态=%s——雾不扩大可点域)〔fv9〕"
|
||||
% [str(submitted), str(main.level_screen.visible), str(main.run_scope.runner.awaiting_choice())])
|
||||
% [str(submitted), str(main.ui.modals.level_screen.visible), str(main.run_scope.runner.awaiting_choice())])
|
||||
return
|
||||
var nds: Array = main.run_scope.runner.nodes()
|
||||
var tgt := {}
|
||||
@@ -116,13 +116,13 @@ func _ready() -> void:
|
||||
main.get_viewport().push_input(evc, true)
|
||||
await get_tree().process_frame
|
||||
await get_tree().process_frame
|
||||
if main.level_screen.visible or main.run_scope.runner.awaiting_choice():
|
||||
_pre_fail("图上真实点击未提交选路(overlay 可见=%s 选路态=%s)" % [str(main.level_screen.visible), str(main.run_scope.runner.awaiting_choice())])
|
||||
if main.ui.modals.level_screen.visible or main.run_scope.runner.awaiting_choice():
|
||||
_pre_fail("图上真实点击未提交选路(overlay 可见=%s 选路态=%s)" % [str(main.ui.modals.level_screen.visible), str(main.run_scope.runner.awaiting_choice())])
|
||||
for i in range(3):
|
||||
await get_tree().process_frame
|
||||
# ---- ⑬ 画布随图拟合(同 bug 的几何面回归):复刻分层公式独立推导最深节点内容 x,
|
||||
# 断言画布 min 尺寸覆盖之(open_choices 每 stop 拟合——L1 单链 Boss x=70+6*122=802 曾越界)
|
||||
var ro2 = main.level_screen
|
||||
var ro2 = main.ui.modals.level_screen
|
||||
var nds2: Array = main.run_scope.runner.nodes()
|
||||
var layer2 := {}
|
||||
var inbound2 := {}
|
||||
@@ -155,7 +155,7 @@ func _ready() -> void:
|
||||
var cvmin: Dictionary = ro2.canvas_probe()
|
||||
if float(cvmin["min_size"].x) < need_x2 - 0.5:
|
||||
_pre_fail("画布拟合不足(min.x=%.0f < 最深内容 %.0f——深层节点不可点回归)" % [cvmin["min_size"].x, need_x2])
|
||||
var bv = main.board_view
|
||||
var bv = main.ui.battle.board_zone.board_view
|
||||
var ms = main.run_scope.settlement.minesweeper if main.run_scope.settlement != null else null
|
||||
if ms == null or bv.cells_probe().is_empty():
|
||||
_pre_fail("战斗未就绪(cells=%d settlement=%s)" % [bv.cells_probe().size(), str(main.run_scope.settlement)])
|
||||
@@ -517,29 +517,29 @@ func _ready() -> void:
|
||||
if status_dig.x == -9:
|
||||
_problems.append("case⑯ 无可挖无封印格(板面异常——锁断言中断)")
|
||||
else:
|
||||
var pbtn16: Button = main.board_zone.status_badge
|
||||
var pbtn16: Button = main.ui.battle.board_zone.status_badge
|
||||
var bpos: Vector2 = pbtn16.get_global_rect().get_center()
|
||||
_push_click(bpos, MOUSE_BUTTON_LEFT)
|
||||
_push_release(bpos, MOUSE_BUTTON_LEFT) # Button pressed 信号走 release 沿——按压+释放成对
|
||||
await get_tree().process_frame
|
||||
if not main.status_panel.visible or not main._input_locked():
|
||||
if not main.ui.modals.status_panel.visible or not main.ui.modals.flow.locks_input():
|
||||
_problems.append("case⑯ 角标真点击未开状态面板(visible=%s locked=%s——入口可达性失守)"
|
||||
% [str(main.status_panel.visible), str(main._input_locked())])
|
||||
% [str(main.ui.modals.status_panel.visible), str(main.ui.modals.flow.locks_input())])
|
||||
else:
|
||||
_push_click(_pos(bv, status_dig), MOUSE_BUTTON_LEFT)
|
||||
await get_tree().process_frame
|
||||
await get_tree().process_frame
|
||||
if _has_action(status_dig, "dig") or ms.is_revealed(status_dig):
|
||||
_problems.append("case⑯ 状态面板开启时挖掘穿透(R3 输入锁破——目标=%s)" % status_dig)
|
||||
var resume_btn: Button = ProbeUiUtil.find_button(main.status_panel, "继续", "prefix")
|
||||
var resume_btn: Button = ProbeUiUtil.find_button(main.ui.modals.status_panel, "继续", "prefix")
|
||||
if resume_btn == null:
|
||||
_problems.append("case⑯ 状态面板关闭钮缺失")
|
||||
else:
|
||||
resume_btn.pressed.emit()
|
||||
await get_tree().process_frame
|
||||
if main.status_panel.visible or main._input_locked():
|
||||
if main.ui.modals.status_panel.visible or main.ui.modals.flow.locks_input():
|
||||
_problems.append("case⑯ 关闭后未恢复(visible=%s locked=%s——R3 残留)"
|
||||
% [str(main.status_panel.visible), str(main._input_locked())])
|
||||
% [str(main.ui.modals.status_panel.visible), str(main.ui.modals.flow.locks_input())])
|
||||
_push_click(_pos(bv, status_dig), MOUSE_BUTTON_LEFT)
|
||||
await get_tree().process_frame
|
||||
await get_tree().process_frame
|
||||
|
||||
Reference in new issue
Block a user