T5(迭代22秘宝批): 存档面+死通道拆除——treasure_inventory保留注记(主动件骑库存承载在役:线香/天眼handle+断点aux_items快照+set_attune_charges差额注入全链保留); 替换子交互整体拆除(CURIO_KINDS除名后不可达死通道=装配不可变契约1实现面保证): adventure_runner六函数删(_pick_treasure_item/resolve_treasure_replace/_resolve_node_replace/_replace_in_transit/_draw_pending_treasure/resolve_curio_replace)+_bonus_treasure_carry跨关携带/_last_draw_treasure掷定链/_roll_from/_bonus_treasure_pool/bonus_aux_carry断点键; level_runner.grant_treasure_item/treasure_items.holding_records删; 呈现面=controller替换子态三函数+aux_detail卡片直显链/curio_pick_overlay replace状态机(信号+面板+open_replace)/main两接线/level_autoplay替换策略; smoke与ui_click_probe替换分支摘除+reward_overlay_test替换段摘除; 修正则贪吃误删=apply_node_curio普通兑付主体补回。冒烟895/0+run_all 22套+探针全绿〔秘宝批 V15/V16拆除路线/V13〕
This commit is contained in:
1 parent
b7a2eadd2c
commit
73db171cb4
13 files changed
+42
-346
No files matched your search
@@ -1,7 +1,8 @@
|
||||
extends SceneTree
|
||||
# 三选一覆盖层 UI 直验套件(迭代 7 T5-hotfix 转正;迭代 10 追加批随面迁移改写)——
|
||||
# 原守 node_overlay.show_reward_items;奖励节点三选一与通关三选一合并共用 CurioPickOverlay 后,
|
||||
# 本套件改守共用面的「功能存在 ≠ 功能可达」盲区:选择外发/强制确认两段式/替换子面板两路/结果态。
|
||||
# 本套件改守共用面的「功能存在 ≠ 功能可达」盲区:选择外发/强制确认两段式/结果态。
|
||||
# 〔替换子面板两路段随迭代 22 秘宝批 T5 拆除——装配不可变契约 1,overlay replace 态退役。〕
|
||||
# 运行:godot --headless --path game --script res://tests/unit/presentation/reward_overlay_test.gd(expect 0)
|
||||
# T6 收口批:断言走 test_kit 计数(Kit.check)+ 失败即停早退协议保留(顺序状态机——坏态下后继断言无效)。
|
||||
const Kit := preload("res://tests/unit/test_kit.gd")
|
||||
@@ -21,10 +22,8 @@ func _run() -> void:
|
||||
var ov = load("res://presentation/views/curio_pick_overlay.gd").new()
|
||||
root.add_child(ov)
|
||||
var picked := []
|
||||
var replaced := []
|
||||
var continued := []
|
||||
ov.pick_confirmed.connect(func(id: String): picked.append(id))
|
||||
ov.replace_chosen.connect(func(tag: int): replaced.append(tag))
|
||||
ov.continue_pressed.connect(func(): continued.append(true))
|
||||
# ① 选择态:三卡呈现、确认钮隐藏(两段式——点选前不给确认)
|
||||
ov.open_pick("第 1 层通过!", [
|
||||
@@ -68,29 +67,11 @@ func _run() -> void:
|
||||
if not _req("点选确认未外发 pick_confirmed(gp)(%s)" % str(picked),
|
||||
ov._confirm_btn.visible and picked.size() == 1 and String(picked[0]) == "gp"):
|
||||
return
|
||||
# ③ 替换子面板:丢旧收新与放弃新件两路外发(通关渠道=携带序号 / 节点渠道=库存句柄——tag 直通)
|
||||
ov.open_replace([{"index": 0, "item_id": "incense_stick", "display_name": "线香"}], "天眼", 1, 1)
|
||||
var replace_btns := 0
|
||||
for c in ov._replace_box.get_children():
|
||||
if c is Button:
|
||||
replace_btns += 1
|
||||
if not _req("替换面板应 2 钮(N+1 选 N+放弃)且三卡隐藏(btns=%d)" % replace_btns,
|
||||
replace_btns == 2 and not ov._choice_box.visible):
|
||||
return
|
||||
var replaced_first := false
|
||||
for c in ov._replace_box.get_children():
|
||||
if c is Button:
|
||||
c.pressed.emit()
|
||||
replaced_first = true
|
||||
break
|
||||
if not _req("丢旧收新未外发 replace_chosen(0)(%s)" % str(replaced),
|
||||
replaced_first and replaced.size() == 1 and int(replaced[0]) == 0):
|
||||
return
|
||||
# ④ 结果态:继续钮点亮、唯一出口(刷新钮随选择态收——停点已兑付残钮零意图可点)
|
||||
# ③ 结果态:继续钮点亮、唯一出口(刷新钮随选择态收——停点已兑付残钮零意图可点)
|
||||
ov.set_refresh_display(2, 20, false)
|
||||
ov.show_result("已选择:攻击力提升 · 攻击 +1")
|
||||
if not _req("结果态应点亮继续且收替换面板与刷新钮",
|
||||
ov._continue_btn.visible and not ov._replace_box.visible and not ov._refresh_btn.visible):
|
||||
if not _req("结果态应点亮继续且收三卡与刷新钮",
|
||||
ov._continue_btn.visible and not ov._choice_box.visible and not ov._refresh_btn.visible):
|
||||
return
|
||||
ov.press_continue()
|
||||
if not _req("继续未外发 continue_pressed", continued.size() == 1):
|
||||
@@ -98,4 +79,4 @@ func _run() -> void:
|
||||
ov.close_pick()
|
||||
if not _req("close_pick 应收屏", not ov.visible):
|
||||
return
|
||||
quit(Kit.finish("reward_verify", "PASS — 三卡两段式/确认外发/替换两路/结果态/收屏 全过"))
|
||||
quit(Kit.finish("reward_verify", "PASS — 三卡两段式/确认外发/结果态/收屏 全过"))
|
||||
Reference in new issue
Block a user