Merge branch 'master' into iter38
# Conflicts: # game/README.md # game/tests/验证集清单.md
This commit is contained in:
commit
416ca84aeb
85 files changed
+2939
-2054
No files matched your search
@@ -542,7 +542,7 @@ func _rebuild_recent(data: Dictionary) -> void:
|
||||
verdict = "完成"
|
||||
elif String(s.get("result", "")) == "abandoned":
|
||||
verdict = "放弃"
|
||||
lines.append("最近冒险:%s · 通关 %d 关 · 钥石 +%d · 种子 %d" % [verdict,
|
||||
lines.append("最近冒险:%s · 完成 %d 关 · 钥石 +%d · 种子 %d" % [verdict,
|
||||
int(s.get("levels_cleared", 0)), int(s.get("keystone_total", 0)), int(s.get("master_seed", 0))])
|
||||
_recent_list.text = " | ".join(lines)
|
||||
|
||||
|
||||
@@ -8,8 +8,8 @@ extends Control
|
||||
signal closed
|
||||
|
||||
var _total_label: Label # 冒险总局数(开局即计含放弃与失败)
|
||||
var _cleared_label: Label # 通关局数(三关全通才计 1)
|
||||
var _clears_label: Label # 各关通关次数(一行三关——display_name ×次数)
|
||||
var _cleared_label: Label # 冒险成功局数(三关全通才计 1)
|
||||
var _clears_label: Label # 各关完成次数(一行三关——display_name ×次数)
|
||||
var _boss_first_label: Label # Boss 首杀(已首杀关数/总关数)
|
||||
var _boss_kills_label: Label # Boss 总击杀(含重复)
|
||||
var _keystone_badge: UiKit.KeystoneBadge # 钥石余额(badge 工厂件——状态面板同形制)
|
||||
@@ -33,14 +33,14 @@ func _init() -> void:
|
||||
UiKit.FS_HINT, false, UiKit.WARM_SOFT)
|
||||
box.add_child(hint)
|
||||
|
||||
# 组一·冒险战绩(终身计数域——存档 v6:总局数开局即计、通关局数三关全通才计)
|
||||
# 组一·冒险战绩(终身计数域——存档 v6:总局数开局即计、冒险成功局数三关全通才计)
|
||||
# 对比度口径:页底=暖亮档深棕(BG_BRIGHT),文字全用亮墨族 token(WARM 9.0:1 / WARM_SOFT 8.0:1 /
|
||||
# CANDLE 7.2:1 / INK_L_GOLD 9.1:1 实测对 BG_BRIGHT 全过 §7.2 ≥4.5:1——深墨族〔INK_LABEL〕
|
||||
# 压深棕底仅 ~1.3:1 属违例,禁用)
|
||||
_section_head(box, "冒险战绩")
|
||||
_total_label = _row(box, "冒险总局数")
|
||||
_cleared_label = _row(box, "通关局数")
|
||||
_clears_label = _row(box, "各关通关次数")
|
||||
_cleared_label = _row(box, "冒险成功局数")
|
||||
_clears_label = _row(box, "各关完成次数")
|
||||
_boss_first_label = _row(box, "Boss 首杀")
|
||||
_boss_kills_label = _row(box, "Boss 总击杀")
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
## VERTICAL SLICE - NOT FOR PRODUCTION
|
||||
## 提升三选一覆盖层(模态):通关停点的三卡点选→确认→兑付反馈两态呈现。
|
||||
## 提升三选一覆盖层(模态):关卡完成停点的三卡点选→确认→兑付反馈两态呈现。
|
||||
## 文案拼装归 Narrator 经组合根喂入——本类零文案装配。
|
||||
class_name CurioPickOverlay
|
||||
extends Control
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
## VERTICAL SLICE - NOT FOR PRODUCTION
|
||||
## 选档界面·全屏页:3 存档位(新档/进档/删档)+ 槽摘要三项(钥石余额/通关局数/冒险总局数)。
|
||||
## 选档界面·全屏页:3 存档位(新档/进档/删档)+ 槽摘要三项(钥石余额/冒险成功局数/冒险总局数)。
|
||||
## 结构树层级:选档 → 进档 → 营地(本面零存档内功能入口——禁营地/冒险/生涯跳转与购买/查看入口);
|
||||
## 删档必经二次确认(确认弹窗与分派归组合根消费方编排——本面只发意图信号)。
|
||||
## 槽数与槽态(空/有档)唯一来自组合根喂入数据(open_save_select 每开重建——组合根经卡① 窥视 API
|
||||
@@ -15,7 +15,7 @@ signal load_slot_requested(slot: int)
|
||||
signal delete_slot_requested(slot: int)
|
||||
|
||||
var _rows_box: VBoxContainer
|
||||
var _summary_labels: Dictionary[int, Label] = {} # 槽号→摘要读数 label(通关/冒险两值——探针取值缝)
|
||||
var _summary_labels: Dictionary[int, Label] = {} # 槽号→摘要读数 label(冒险成功/冒险两值——探针取值缝)
|
||||
var _occupied_flags: Dictionary[int, bool] = {} # 槽号→有档态(操作集二分断言缝;判定源=喂入数据)
|
||||
var _new_btns: Dictionary[int, Button] = {} # 槽号→新档钮(空/坏槽——操作集断言与点击链驱动缝)
|
||||
var _load_btns: Dictionary[int, Button] = {} # 槽号→进档钮(有档槽)
|
||||
@@ -84,7 +84,7 @@ func _build_slot_row(sd: Dictionary) -> void:
|
||||
sp.size_flags_horizontal = Control.SIZE_EXPAND_FILL
|
||||
if occupied:
|
||||
row.add_child(UiKit.keystone_badge("钥石 %d" % int(sd.get("keystone", 0))))
|
||||
var summary_l := UiKit.label("通关 %d 局 · 冒险 %d 局" % [int(sd.get("cleared", 0)), int(sd.get("total", 0))],
|
||||
var summary_l := UiKit.label("冒险成功 %d 局 · 冒险 %d 局" % [int(sd.get("cleared", 0)), int(sd.get("total", 0))],
|
||||
UiKit.FS_BODY, false, UiKit.CANDLE)
|
||||
_summary_labels[slot] = summary_l # 摘要读数缝(禁词断言枚举 Label 全集时含此件)
|
||||
row.add_child(summary_l)
|
||||
|
||||
@@ -208,7 +208,7 @@ const HEX_LOG_DMG_BODY := "e0a050" # 伤害行正文橙
|
||||
const HEX_LOG_VOIDED := "b08060" # 未生效行暗橙(⚠ 划线)
|
||||
const HEX_LOG_CAST := "b09a72" # 施放行暖石(✦ 具名技能)
|
||||
const HEX_LOG_DECAY := "8a9ab0" # 状态衰减蓝灰
|
||||
const HEX_LOG_WIN := "80d080" # 胜利判定绿(模拟报告通关率同档)
|
||||
const HEX_LOG_WIN := "80d080" # 胜利判定绿(模拟报告关卡完成率同档)
|
||||
const HEX_ROUTE_NOTE := "d0c090" # 奖励点预告暗金(narrator 行)
|
||||
const HEX_SEED_NOTE := "c8a860" # 种子/开场行暗金(narrator 行)
|
||||
|
||||
@@ -400,7 +400,7 @@ const FS_H1 := 34 # 主标题/演算暴击
|
||||
|
||||
# ── 秘宝解锁条件计数键 → 呈现标签(秘宝匣柜台条件进度文案单点;键域=
|
||||
# TreasureItemTable.UNLOCK_COUNTER_KEYS 封闭枚举,键出域走「条件」兜底不炸)──
|
||||
const TREASURE_REQ_LABELS := {"adventure_cleared": "通关", "boss_kill_count": "Boss击杀", "vision_used": "真视使用"}
|
||||
const TREASURE_REQ_LABELS := {"adventure_cleared": "冒险成功", "boss_kill_count": "Boss击杀", "vision_used": "真视使用"}
|
||||
# 秘宝档位 → 呈现名(契约 2 三档;legendary 传说空集合法不在柜)
|
||||
const TREASURE_TIER_LABELS := {"common": "普通", "excellent": "优秀", "rare": "稀有", "legendary": "传说"}
|
||||
|
||||
|
||||
Reference in new issue
Block a user