merge: 迭代17卡⓪内容数据驱动扩展批落籍(EffectEngine事件发布订阅解释器+16发射点+19行23效果类型+组合规则6条+改写窗口;专长27行迁移+旧23挂点枚举消亡+伤害控制器13处消费点拆除+秘宝六件按id特判清零+令牌树收敛+文案表值化+断言面随迁净增17;闸=冒烟800/0+run_all 17套+probe_gate含click全绿+MC二档对拍40局逐位一致[seed0=83000 off/formed配对,判据两套全过]+doc三闸/熵增存量红零新增;active.md与并行迭代18两批union解+台账预配号381撞号改登383〔381/382系并行会话先占〕;台账383;遗留=掘进蓄能积点模判定归词汇表扩展批裁决+主动件kind词族改名不随批+实机目检归用户)
This commit is contained in:
commit
e535436695
25 files changed
+1727
-722
No files matched your search
@@ -131,40 +131,16 @@ static func bonus_result_text(result: Dictionary) -> String:
|
||||
return "已选择:%s\n其余选项已丢弃(不可反悔)" % name
|
||||
|
||||
|
||||
# 特性卡片文案(迭代 12 T1;2026-10-04 呈现补强——第三行=hook 效果摘要,用户反馈「不知道件是
|
||||
# 干嘛的」缺口承载;摘要=静态映射表 provisional 文案归代拍板白名单「件文案微调」)
|
||||
# 特性卡片文案(迭代 12 T1;2026-10-04 呈现补强——第三行=效果摘要,用户反馈「不知道件是
|
||||
# 干嘛的」缺口承载。内容数据驱动扩展批 T3 文案表值化:摘要=数据行 desc 字段,零硬编码映射——
|
||||
# 新件写行即有名有姓,措辞与旧 summaries 表逐字一致)
|
||||
static func feat_card_text(row: Dictionary) -> String:
|
||||
if row.is_empty() or String(row.get("feat_id", "")) == "":
|
||||
return "特性\n???"
|
||||
var arch_names := {"magic": "魔法", "pierce": "穿刺", "normal": "普攻", "dig": "开格",
|
||||
"flag": "标旗", "charge": "蓄力", "devour": "吞噬"}
|
||||
var arch := String(arch_names.get(String(row.get("archetype", "")), "流派"))
|
||||
var summaries := {
|
||||
"hero_attack_rider": "普攻附加必中伤害",
|
||||
"clamp_modifier": "克制面强化",
|
||||
"first_dig_spell": "首格追加奥术矢",
|
||||
"kill_overflow": "击杀半额弹射",
|
||||
"dig_count_segments": "开格积穿刺矢",
|
||||
"roll_discount": "打轻甲更易命中",
|
||||
"round_dig_bonus": "开格越多打得越疼",
|
||||
"hit_trade": "加伤换命中",
|
||||
"armor_roll_rewrite": "攻击恒75%折扣",
|
||||
"heavy_debuff": "打重甲附加破防",
|
||||
"dig_yield_mult": "开格产出放大",
|
||||
"deep_dig": "开格2AP·产出双份",
|
||||
"flag_resource": "标中雷额外得资源",
|
||||
"nest_aura": "控巢攻击光环",
|
||||
"flag_all_hit": "全中标旗伤加倍",
|
||||
"flag_strike": "标中旗必中打敌",
|
||||
"ap_carry": "剩AP转下轮攻击",
|
||||
"charge_shield": "蓄力转减伤",
|
||||
"charge_spike": "蓄满下轮爆发",
|
||||
"terrain_refund": "吃地形伤返资源",
|
||||
"terrain_dig_double": "挖伤害格双产出",
|
||||
"flag_neutralize": "标旗中和伤害格",
|
||||
"variant_counter": "吃地形伤反打全体",
|
||||
}
|
||||
var summary := String(summaries.get(String(row.get("hook", "")), ""))
|
||||
var summary := String(row.get("desc", ""))
|
||||
if summary != "":
|
||||
return "%s · %s\n%s" % [String(row.get("display_name", row.get("feat_id", ""))), arch, summary]
|
||||
return "特性 · %s\n%s" % [arch, String(row.get("display_name", row.get("feat_id", "")))]
|
||||
|
||||
@@ -191,27 +191,19 @@ func _curio_card_texts(candidates: Array, treasure_detail: Array = []) -> Array:
|
||||
return out
|
||||
|
||||
|
||||
# 道具件卡片行(掷定前置——具体道具名 + 效果摘要;空 iid = 无预掷回退态显示通用文案)
|
||||
# 道具件卡片行(掷定前置——具体道具名 + 效果摘要;空 iid = 无预掷回退态显示通用文案)。
|
||||
# 内容数据驱动扩展批 T4 文案表值化:效果摘要=数据行 desc 字段直读(零 kind 硬编码映射——
|
||||
# 新件写行即有名有姓)
|
||||
func _treasure_card_line(iid: String) -> String:
|
||||
if iid == "":
|
||||
return ""
|
||||
var row: Dictionary = db.treasure_item_row(iid)
|
||||
if row.is_empty():
|
||||
return ""
|
||||
var parts: Array[String] = []
|
||||
for k in (row.get("effect_kinds", []) as Array):
|
||||
if String(k) == "mine_reveal":
|
||||
parts.append("真视")
|
||||
elif String(k) == "reward_preview":
|
||||
parts.append("预读")
|
||||
elif String(k) == "ap_grant":
|
||||
parts.append("AP +%d" % int(row.get("magnitude", 0)))
|
||||
var tgt := String(row.get("target", "none"))
|
||||
if tgt == "area_3x3":
|
||||
parts.append("3×3")
|
||||
elif tgt == "board_wide":
|
||||
parts.append("全图")
|
||||
return "%s · %s" % [String(row.get("display_name", iid)), " ".join(parts)]
|
||||
var desc := String(row.get("desc", ""))
|
||||
if desc != "":
|
||||
return "%s · %s" % [String(row.get("display_name", iid)), desc]
|
||||
return String(row.get("display_name", iid))
|
||||
|
||||
|
||||
# 三选一刷新(迭代 11 第①批 T5b X/Y 双源 + 2026-10-06 用户令对齐商店 MC-1——免费位用尽转 GP 付费档:
|
||||
|
||||
Reference in new issue
Block a user