iter8-T8 卡⑤ 打磨包:①图例解码=RAP 行(LegendOverlay 构造参数表值注入 rap_refresh_cost——禁字面量)+九徽章解码条目(攻守爆医弱穿魔行金九键)②放弃按钮文案收敛 level-map 4 字上限(基态「放弃」,同失败结算语义移确认态)③判定文案两处措辞统一(phase_text 相位行战斗结束→随 battle_end_text 同词战斗胜利/失败)④封印旗纹理=素材在盘缺位(board/ui 全目录核证无旗件)→降级案维持文字占位+06 债务登记(HUD框架节新条目)——闸:冒烟 596/0+click/input/layout 全绿
This commit is contained in:
1 parent
b8e6b27538
commit
79427d0f98
8 files changed
+350
-8
No files matched your search
@@ -82,7 +82,7 @@ rows = [{
|
||||
"polarity": "negative",
|
||||
"effect_id": "",
|
||||
"display_name": "反噬震荡",
|
||||
"power": 1,
|
||||
"power": 4,
|
||||
"weight": 0,
|
||||
"pool_tag": "cell",
|
||||
"tier": 1
|
||||
@@ -146,7 +146,7 @@ rows = [{
|
||||
"polarity": "negative",
|
||||
"effect_id": "",
|
||||
"display_name": "穿刺陷阱",
|
||||
"power": 2,
|
||||
"power": 5,
|
||||
"weight": 0,
|
||||
"pool_tag": "cell",
|
||||
"tier": 1
|
||||
@@ -156,7 +156,7 @@ rows = [{
|
||||
"polarity": "negative",
|
||||
"effect_id": "",
|
||||
"display_name": "魔法反噬",
|
||||
"power": 2,
|
||||
"power": 5,
|
||||
"weight": 0,
|
||||
"pool_tag": "cell",
|
||||
"tier": 1
|
||||
|
||||
@@ -59,7 +59,9 @@ static func battle_end_text(result: String, level_end: bool) -> String:
|
||||
static func phase_text(round_index: int, battle_result: String, waiting: bool, boss_active: bool, boss_name: String) -> String:
|
||||
var boss_tag := " · Boss:%s" % boss_name if boss_active else ""
|
||||
if battle_result != "":
|
||||
return "第 %d 轮 · 战斗结束%s" % [round_index, boss_tag]
|
||||
# 打磨包 2026-09-29——判定文案两处措辞统一:相位行随结算判定行同词(战斗胜利/战斗失败,
|
||||
# 与 battle_end_text 同源措辞),「战斗结束」退役
|
||||
return "第 %d 轮 · %s%s" % [round_index, "战斗胜利" if battle_result == "victory" else "战斗失败", boss_tag]
|
||||
if waiting:
|
||||
return "第 %d 轮 · 结算中%s" % [round_index, boss_tag]
|
||||
return "第 %d 轮 · 挖掘中%s" % [round_index, boss_tag]
|
||||
|
||||
@@ -64,7 +64,7 @@ static func build_battle_ui(root: Control, db) -> Dictionary:
|
||||
# 模态覆盖层组(z 序 = 登记序:图例 < 明细回看 < 节点 < 终局 < 商店 < 调整板)。
|
||||
# 返回 {legend_overlay, review_overlay, node_overlay, end_overlay, shop_overlay, tune_panel};调用方按本序 addChild。
|
||||
static func build_overlays(host: Control, db, base_atk: int, base_hp: int) -> Dictionary:
|
||||
var legend_overlay := LegendOverlay.new()
|
||||
var legend_overlay := LegendOverlay.new(int(db.action_economy.rap_refresh_cost)) # 打磨包 2026-09-29——RAP 行表值注入
|
||||
host.add_child(legend_overlay)
|
||||
|
||||
var review_overlay := SettlementReviewOverlay.new()
|
||||
|
||||
@@ -15,13 +15,18 @@ const ENTRIES := [
|
||||
["#000000", "旗", "封印印记(呈现名·不能拔)——轮末自动判定标中;插错可左键直接挖开(安全格零奖励、雷格吃挖雷惩罚)"],
|
||||
["#2e86de", "小人", "探险者——8 向相邻未开格常驻微光 = 可挖域"],
|
||||
["#F0A828", "金徽章", "已开格奖励身份 icon(旗之下、数值之上,不进数字区)"],
|
||||
["#F0A828", "九徽章解码", "攻=攻击 · 守=护甲 · 爆=爆裂 · 医=回复 · 弱=削弱 · 穿=穿刺 · 魔=魔法 · 行=行动点 · 金=金币(打磨包 2026-09-29 入列)"],
|
||||
["#33261B", "状态槽空态", "无状态效果时槽位隐藏,数据框上移补位——非异常"],
|
||||
]
|
||||
|
||||
var _panel: PanelContainer
|
||||
|
||||
|
||||
func _init() -> void:
|
||||
var _rap_cost := -1 # <0 = 不渲染 RAP 行(打磨包 2026-09-29——构造参数注表值,禁字面量)
|
||||
|
||||
|
||||
func _init(rap_cost: int = -1) -> void:
|
||||
_rap_cost = rap_cost
|
||||
var dim := ColorRect.new()
|
||||
dim.color = Color(UiKit.DIM, 0.55)
|
||||
dim.set_anchors_preset(Control.PRESET_FULL_RECT)
|
||||
@@ -55,6 +60,21 @@ func _init() -> void:
|
||||
row.add_child(lab)
|
||||
box.add_child(row)
|
||||
box.add_child(HSeparator.new())
|
||||
# RAP 行(打磨包 2026-09-29——表值驱动,禁字面量:刷新代价读行动经济表)
|
||||
if _rap_cost >= 0:
|
||||
var rap_row := HBoxContainer.new()
|
||||
rap_row.add_theme_constant_override("separation", 8)
|
||||
var rap_chip := ColorRect.new()
|
||||
rap_chip.custom_minimum_size = Vector2(18, 18)
|
||||
rap_chip.color = Color("#F0A828")
|
||||
rap_row.add_child(rap_chip)
|
||||
var rap_lab := UiKit.label("RAP 储备行动点 —— 停手时剩余 AP 转存;弃图刷新消耗 RAP−%d(旧板旗作废,AP 保留继续挖)" % _rap_cost, 13, false)
|
||||
rap_lab.add_theme_color_override("font_color", UiKit.INK_LABEL)
|
||||
rap_lab.autowrap_mode = TextServer.AUTOWRAP_WORD_SMART
|
||||
rap_lab.custom_minimum_size = Vector2(440, 0)
|
||||
rap_row.add_child(rap_lab)
|
||||
box.add_child(rap_row)
|
||||
box.add_child(HSeparator.new())
|
||||
var close_btn := UiKit.button("关闭")
|
||||
close_btn.pressed.connect(close)
|
||||
box.add_child(close_btn)
|
||||
|
||||
@@ -140,7 +140,7 @@ func _init() -> void:
|
||||
var spacer := Control.new()
|
||||
spacer.size_flags_horizontal = Control.SIZE_EXPAND_FILL
|
||||
bottom.add_child(spacer)
|
||||
abandon_btn = UiKit.button("放弃冒险(同失败结算——已获大奖励保留)")
|
||||
abandon_btn = UiKit.button("放弃") # 打磨包 2026-09-29——文案收敛 level-map 4 字上限(同失败结算语义移入确认态文案)
|
||||
abandon_btn.add_theme_color_override("font_color", COL_ABANDON) # 破坏性动作红(危险红族)
|
||||
abandon_btn.pressed.connect(_on_abandon_pressed)
|
||||
abandon_btn.visible = false
|
||||
@@ -206,7 +206,7 @@ func _reset_abandon_confirm() -> void:
|
||||
_abandon_armed = false
|
||||
_confirm_left = 0.0
|
||||
abandon_btn.modulate = Color(1, 1, 1, 1)
|
||||
abandon_btn.text = "放弃冒险(同失败结算——已获大奖励保留)"
|
||||
abandon_btn.text = "放弃" # 打磨包 2026-09-29——文案收敛 level-map 4 字上限(确认态转义面见 _on_abandon_pressed)
|
||||
|
||||
|
||||
func _process(delta: float) -> void:
|
||||
|
||||
@@ -3248,6 +3248,13 @@ func _smoke_nine_types_gp_stream() -> void:
|
||||
if String(row.get("reward_id", "")) == "gp_lose":
|
||||
gp_neg = int(row.weight)
|
||||
check(cell_rows == 22, "奖励字典 22 行(九型×正负 18 格 + aux 正三投放/负一占位——魔法道具内容批 2026-09-29;清图槽独立批尾不计)")
|
||||
# 雷格负向直伤当量(迭代 8 卡⑧——真人反馈「三雷 3/4 血无后果感」投值:三行各抬 +3 档,负向≈正向 2 倍定价)
|
||||
var mine_power := {"heal_backlash": 4, "pierce_snare": 5, "magic_recoil": 5}
|
||||
for row in _db.reward.rows:
|
||||
var rid := String(row.get("reward_id", ""))
|
||||
if mine_power.has(rid):
|
||||
check(int(row.get("power", -1)) == int(mine_power[rid]),
|
||||
"雷格负向直伤 %s power=%d(卡⑧投值)" % [rid, int(mine_power[rid])])
|
||||
# 正向权重结构校验(配置推导,2026-09-23 重构):正向 cell 行权重 ≥1(必在池)、负向行权重恒 0(不入池)、
|
||||
# 合计即配置自身的和(改表自动跟随,不再硬编码合计值)。
|
||||
var pos_all_in_pool := true
|
||||
|
||||
Reference in new issue
Block a user