feat(skill): 优化技能描述与UI显示

1.  调整技能商店卡牌描述,添加"召唤"动作描述,适配多召唤数量逻辑
2.  更新技能描述模板,支持根据overrides.num动态计算召唤数量
3.  重构部分UI预制体布局与节点激活状态
4.  新增一批单体攻击技能配置模板
This commit is contained in:
pan
2026-08-03 10:50:22 +08:00
parent 5116bb01fd
commit 2535f638d9
8 changed files with 1553 additions and 493 deletions

View File

@@ -100,6 +100,82 @@ export const SkillDescSet: Record<number, SkillDescConfig> = {
templPerm: "{target}以{value}%生命复活",
},
// ==================== 技能商店单体攻击卡6001-6016ap = 攻击力%伤害 ====================
// 注:暴击/冰冻/击晕/击退等附加概率由 buildCardDescRich 扫描 crt/frz/stun/bck 动态追加,不在模板写死
6001: {
verb: "", unit: "%", permField: "ap",
templPerm: "造成攻击力{value}{unit}的伤害",
},
6002: {
verb: "", unit: "%", permField: "ap",
templPerm: "造成攻击力{value}{unit}的伤害",
},
6003: {
verb: "", unit: "%", permField: "ap",
templPerm: "造成攻击力{value}{unit}的伤害",
},
6004: {
verb: "", unit: "%", permField: "ap",
templPerm: "造成攻击力{value}{unit}的伤害",
},
6005: {
verb: "", unit: "%", permField: "ap",
templPerm: "造成攻击力{value}{unit}的伤害",
},
6006: {
verb: "", unit: "%", permField: "ap",
templPerm: "造成攻击力{value}{unit}的伤害",
},
6007: {
verb: "", unit: "%", permField: "ap",
templPerm: "造成攻击力{value}{unit}的伤害",
},
6008: {
verb: "", unit: "%", permField: "ap",
templPerm: "造成攻击力{value}{unit}的伤害",
},
6009: {
verb: "", unit: "%", permField: "ap",
templPerm: "造成攻击力{value}{unit}的伤害",
},
6010: {
verb: "", unit: "%", permField: "ap",
templPerm: "造成攻击力{value}{unit}的伤害",
},
6011: {
verb: "", unit: "%", permField: "ap",
templPerm: "造成攻击力{value}{unit}的伤害",
},
6012: {
verb: "", unit: "%", permField: "ap",
templPerm: "造成攻击力{value}{unit}的伤害",
},
6013: {
verb: "", unit: "%", permField: "ap",
templPerm: "造成攻击力{value}{unit}的伤害",
},
6014: {
verb: "", unit: "%", permField: "ap",
templPerm: "造成攻击力{value}{unit}的伤害",
},
6015: {
verb: "", unit: "%", permField: "ap",
templPerm: "造成攻击力{value}{unit}的伤害",
},
6016: {
verb: "", unit: "%", permField: "ap",
templPerm: "造成攻击力{value}{unit}的伤害",
},
// ==================== 技能商店中阶攻击卡6101-6102ap = 攻击力%伤害 ====================
6101: {
verb: "", unit: "%", permField: "ap",
templPerm: "造成攻击力{value}{unit}的伤害",
},
6102: {
verb: "", unit: "%", permField: "ap",
templPerm: "造成攻击力{value}{unit}的伤害",
},
// ==================== 技能商店范围攻击卡6201-6206ap = 单段伤害 ====================
// 注:暴击/冰冻/击晕/击退等附加概率由 buildCardDescRich 扫描 crt/frz/stun/bck 动态追加,不在模板写死
6201: {
@@ -208,23 +284,23 @@ export interface FieldDescConfig {
* 数值永远取 FieldSkillConfig.value 实时渲染,替代手写 info杜绝漂移。
*/
export const FieldDescSet: Record<number, FieldDescConfig> = {
[FieldSkillType.SummonCount]: { verb: "召唤触发技能次数", fmt: FieldValueFmt.Int },
[FieldSkillType.DeadCount]: { verb: "死亡触发技能次数", fmt: FieldValueFmt.Int },
[FieldSkillType.StartCount]: { verb: "战斗开始触发技能次数", fmt: FieldValueFmt.Int },
[FieldSkillType.EndCount]: { verb: "战斗结束触发技能次数", fmt: FieldValueFmt.Int },
[FieldSkillType.WaveGold]: { verb: "每回合金币收益", fmt: FieldValueFmt.Int },
[FieldSkillType.SellGold]: { verb: "卖出英雄金币", fmt: FieldValueFmt.Int },
[FieldSkillType.WaveHeal]: { verb: "战斗结束生命回复量", fmt: FieldValueFmt.Percent },
[FieldSkillType.HeroAtk]: { verb: "英雄攻击力", fmt: FieldValueFmt.Percent },
[FieldSkillType.HeroStun]: { verb: "英雄击晕概率", fmt: FieldValueFmt.Percent },
[FieldSkillType.HeroCrit]: { verb: "英雄暴击率", fmt: FieldValueFmt.Percent },
[FieldSkillType.HeroCritDamage]: { verb: "英雄暴击伤害", fmt: FieldValueFmt.Percent },
[FieldSkillType.HeroSpeed]: { verb: "英雄攻击速度", fmt: FieldValueFmt.Percent },
[FieldSkillType.BuyDiscount]: { verb: "购买卡牌费用", fmt: FieldValueFmt.IntMinus },
[FieldSkillType.SummonCount]: { verb: "召唤触发技能次数", fmt: FieldValueFmt.Int },
[FieldSkillType.DeadCount]: { verb: "死亡触发技能次数", fmt: FieldValueFmt.Int },
[FieldSkillType.StartCount]: { verb: "战斗开始触发技能次数", fmt: FieldValueFmt.Int },
[FieldSkillType.EndCount]: { verb: "战斗结束触发技能次数", fmt: FieldValueFmt.Int },
[FieldSkillType.WaveGold]: { verb: "每回合金币收益", fmt: FieldValueFmt.Int },
[FieldSkillType.SellGold]: { verb: "卖出英雄金币", fmt: FieldValueFmt.Int },
[FieldSkillType.WaveHeal]: { verb: "战斗结束生命回复量", fmt: FieldValueFmt.Percent },
[FieldSkillType.HeroAtk]: { verb: "英雄攻击力", fmt: FieldValueFmt.Percent },
[FieldSkillType.HeroStun]: { verb: "英雄击晕概率", fmt: FieldValueFmt.Percent },
[FieldSkillType.HeroCrit]: { verb: "英雄暴击率", fmt: FieldValueFmt.Percent },
[FieldSkillType.HeroCritDamage]: { verb: "英雄暴击伤害", fmt: FieldValueFmt.Percent },
[FieldSkillType.HeroSpeed]: { verb: "英雄攻击速度", fmt: FieldValueFmt.Percent },
[FieldSkillType.BuyDiscount]: { verb: "购买卡牌费用", fmt: FieldValueFmt.IntMinus },
[FieldSkillType.RefreshDiscount]: { verb: "刷新卡牌费用", fmt: FieldValueFmt.IntMinus },
[FieldSkillType.HeroHp]: { verb: "英雄最大生命", fmt: FieldValueFmt.Percent },
[FieldSkillType.HeroWindFury]: { verb: "英雄风怒概率", fmt: FieldValueFmt.Percent },
[FieldSkillType.HeroPuncture]: { verb: "英雄穿刺概率", fmt: FieldValueFmt.Percent },
[FieldSkillType.AtkCount]: { verb: "攻击触发技能次数", fmt: FieldValueFmt.Int },
[FieldSkillType.BeAtkCount]: { verb: "被攻击触发技能次数", fmt: FieldValueFmt.Int },
[FieldSkillType.HeroHp]: { verb: "英雄最大生命", fmt: FieldValueFmt.Percent },
[FieldSkillType.HeroWindFury]: { verb: "英雄风怒概率", fmt: FieldValueFmt.Percent },
[FieldSkillType.HeroPuncture]: { verb: "英雄穿刺概率", fmt: FieldValueFmt.Percent },
[FieldSkillType.AtkCount]: { verb: "攻击触发技能次数", fmt: FieldValueFmt.Int },
[FieldSkillType.BeAtkCount]: { verb: "被攻击触发技能次数", fmt: FieldValueFmt.Int },
};