feat: 新增攻击/受击触发技能次数加成机制
1. 新增FieldSkillType枚举的AtkCount和BeAtkCount类型,添加对应强化技能配置 2. 调整战斗内波次金币、刷新/购买成本参数 3. 重构技能触发逻辑,支持根据字段技能调整触发次数 4. 新增三档强度的技能卡牌配置,优化卡牌池等级映射规则
This commit is contained in:
@@ -174,40 +174,86 @@ HeroList.forEach(uuid => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
// 添加非英雄卡牌 (技能、功能卡)
|
// 添加非英雄卡牌 (技能、功能卡)
|
||||||
|
// 体系:wave 1/5/8 三档,每档强度递增(Field 靠 field uuid 区分数值,Interval 靠 overrides 覆写)
|
||||||
const waveToPoolLv: Record<number, number> = {
|
const waveToPoolLv: Record<number, number> = {
|
||||||
1: 1,
|
1: 1,
|
||||||
5: 2,
|
5: 2,
|
||||||
10: 3,
|
8: 3
|
||||||
15: 4,
|
|
||||||
20: 5
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const SkillCardData: any[] = [
|
const SkillCardData: any[] = [
|
||||||
|
// ==================== wave 1 档(基础强度) ====================
|
||||||
|
// --- 驻场卡(Field) ---
|
||||||
{ uuid: 8705, skill: 0, wave: 1, name: "金币收益", info: "每回合金币收益+1", is_inst: false, keep_waves: -1, field: [7005], trigger_type: CardTriggerType.Field },
|
{ uuid: 8705, skill: 0, wave: 1, name: "金币收益", info: "每回合金币收益+1", is_inst: false, keep_waves: -1, field: [7005], trigger_type: CardTriggerType.Field },
|
||||||
{ uuid: 8706, skill: 0, wave: 1, name: "出售强化", info: "卖出英雄金币+1", is_inst: false, keep_waves: -1, field: [7006], trigger_type: CardTriggerType.Field },
|
{ uuid: 8706, skill: 0, wave: 1, name: "出售强化", info: "卖出英雄金币+1", is_inst: false, keep_waves: -1, field: [7006], trigger_type: CardTriggerType.Field },
|
||||||
|
|
||||||
{ uuid: 8707, skill: 0, wave: 1, name: "战后恢复", info: "战斗结束生命回复量+10%", is_inst: false, keep_waves: -1, field: [7007], trigger_type: CardTriggerType.Field },
|
{ uuid: 8707, skill: 0, wave: 1, name: "战后恢复", info: "战斗结束生命回复量+10%", is_inst: false, keep_waves: -1, field: [7007], trigger_type: CardTriggerType.Field },
|
||||||
{ uuid: 8708, skill: 0, wave: 1, name: "攻击加成", info: "英雄攻击力+10%", is_inst: false, keep_waves: -1, field: [7008], trigger_type: CardTriggerType.Field },
|
{ uuid: 8708, skill: 0, wave: 1, name: "攻击加成", info: "英雄攻击力+10%", is_inst: false, keep_waves: -1, field: [7008], trigger_type: CardTriggerType.Field },
|
||||||
{ uuid: 8709, skill: 0, wave: 1, name: "击晕加成", info: "英雄击晕概率+10%", is_inst: false, keep_waves: -1, field: [7009], trigger_type: CardTriggerType.Field },
|
{ uuid: 8709, skill: 0, wave: 1, name: "击晕加成", info: "英雄击晕概率+10%", is_inst: false, keep_waves: -1, field: [7009], trigger_type: CardTriggerType.Field },
|
||||||
{ uuid: 8710, skill: 0, wave: 1, name: "暴击加成", info: "英雄暴击率+10%", is_inst: false, keep_waves: -1, field: [7010], trigger_type: CardTriggerType.Field },
|
{ uuid: 8710, skill: 0, wave: 1, name: "暴击加成", info: "英雄暴击率+10%", is_inst: false, keep_waves: -1, field: [7010], trigger_type: CardTriggerType.Field },
|
||||||
{ uuid: 8711, skill: 0, wave: 1, name: "暴伤加成", info: "英雄暴击伤害+20%", is_inst: false, keep_waves: -1, field: [7011], trigger_type: CardTriggerType.Field },
|
{ uuid: 8711, skill: 0, wave: 1, name: "暴伤加成", info: "英雄暴击伤害+20%", is_inst: false, keep_waves: -1, field: [7011], trigger_type: CardTriggerType.Field },
|
||||||
{ uuid: 8712, skill: 0, wave: 1, name: "攻速加成", info: "英雄攻击速度+10%", is_inst: false, keep_waves: -1, field: [7012], trigger_type: CardTriggerType.Field },
|
{ uuid: 8712, skill: 0, wave: 1, name: "攻速加成", info: "英雄攻击速度+10%", is_inst: false, keep_waves: -1, field: [7012], trigger_type: CardTriggerType.Field },
|
||||||
{ uuid: 8713, skill: 0, wave: 1, name: "购买优惠", info: "购买卡牌费用-1金币", is_inst: false, keep_waves: -1, field: [7013], trigger_type: CardTriggerType.Field },
|
|
||||||
{ uuid: 8714, skill: 0, wave: 1, name: "刷新优惠", info: "刷新卡牌费用-1金币", is_inst: false, keep_waves: -1, field: [7014], trigger_type: CardTriggerType.Field },
|
|
||||||
{ uuid: 8716, skill: 0, wave: 1, name: "生命加成", info: "英雄最大生命+10%", is_inst: false, keep_waves: -1, field: [7016], trigger_type: CardTriggerType.Field },
|
{ uuid: 8716, skill: 0, wave: 1, name: "生命加成", info: "英雄最大生命+10%", is_inst: false, keep_waves: -1, field: [7016], trigger_type: CardTriggerType.Field },
|
||||||
{ uuid: 8717, skill: 0, wave: 1, name: "风怒加成", info: "英雄风怒概率+10%", is_inst: false, keep_waves: -1, field: [7017], trigger_type: CardTriggerType.Field },
|
{ uuid: 8717, skill: 0, wave: 1, name: "风怒加成", info: "英雄风怒概率+10%", is_inst: false, keep_waves: -1, field: [7017], trigger_type: CardTriggerType.Field },
|
||||||
{ uuid: 8718, skill: 0, wave: 1, name: "穿刺加成", info: "英雄穿刺概率+10%", is_inst: false, keep_waves: -1, field: [7018], trigger_type: CardTriggerType.Field },
|
{ uuid: 8718, skill: 0, wave: 1, name: "穿刺加成", info: "英雄穿刺概率+10%", is_inst: false, keep_waves: -1, field: [7018], trigger_type: CardTriggerType.Field },
|
||||||
// { uuid: 8701, skill: 0, wave: 1, name: "召唤强化", info: "召唤触发技能次数+1", is_inst: false, keep_waves: -1, field: [7001], trigger_type: CardTriggerType.Field },
|
// --- 范围攻击卡(Interval) ---
|
||||||
{ uuid: 8702, skill: 0, wave: 1, name: "死亡强化", info: "死亡触发技能次数+1", is_inst: false, keep_waves: -1, field: [7002], trigger_type: CardTriggerType.Field },
|
{ uuid: 8201, skill: 6201, wave: 1, name: "雷墙", info: "召唤雷墙阻挡敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 6, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 100 } },
|
||||||
{ uuid: 8703, skill: 0, wave: 1, name: "开场强化", info: "战斗开始触发技能次数+1", is_inst: false, keep_waves: -1, field: [7003], trigger_type: CardTriggerType.Field },
|
{ uuid: 8202, skill: 6202, wave: 1, name: "火墙", info: "召唤火墙阻挡敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 6, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 100 } },
|
||||||
{ uuid: 8704, skill: 0, wave: 1, name: "结束强化", info: "战斗结束触发技能次数+1", is_inst: false, keep_waves: -1, field: [7004], trigger_type: CardTriggerType.Field },
|
{ uuid: 8203, skill: 6203, wave: 1, name: "飓风", info: "召唤飓风攻击敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 6, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 100 } },
|
||||||
|
{ uuid: 8204, skill: 6204, wave: 1, name: "水墙", info: "召唤水墙阻挡敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 6, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 100 } },
|
||||||
|
{ uuid: 8205, skill: 6205, wave: 1, name: "风墙", info: "召唤风墙困住敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 6, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 100 } },
|
||||||
|
{ uuid: 8206, skill: 6206, wave: 1, name: "陨石术", info: "召唤陨石范围攻击敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 6, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 100 } },
|
||||||
|
|
||||||
{ uuid: 8201, skill: 6201, wave: 1, name: "雷墙", info: "召唤雷墙阻挡敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 5, keep_waves: -1, trigger_type: CardTriggerType.Interval },
|
// ==================== wave 5 档(强度 ×2) ====================
|
||||||
{ uuid: 8202, skill: 6202, wave: 1, name: "火墙", info: "召唤火墙阻挡敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 5, keep_waves: -1, trigger_type: CardTriggerType.Interval },
|
// --- 驻场卡(field uuid +200,对应 FieldSkillSet 72xx 段) ---
|
||||||
{ uuid: 8203, skill: 6203, wave: 1, name: "飓风", info: "召唤飓风攻击敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 5, keep_waves: -1, trigger_type: CardTriggerType.Interval },
|
{ uuid: 8755, skill: 0, wave: 5, name: "金币收益+", info: "每回合金币收益+2", is_inst: false, keep_waves: -1, field: [7205], trigger_type: CardTriggerType.Field },
|
||||||
{ uuid: 8204, skill: 6204, wave: 1, name: "水墙", info: "召唤水墙阻挡敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 5, keep_waves: -1, trigger_type: CardTriggerType.Interval },
|
{ uuid: 8763, skill: 0, wave: 5, name: "购买优惠+", info: "购买卡牌费用-2金币", is_inst: false, keep_waves: -1, field: [7213], trigger_type: CardTriggerType.Field },
|
||||||
{ uuid: 8205, skill: 6205, wave: 1, name: "风墙", info: "召唤风墙困住敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 5, keep_waves: -1, trigger_type: CardTriggerType.Interval },
|
{ uuid: 8714, skill: 0, wave: 1, name: "刷新优惠", info: "刷新卡牌费用-1金币", is_inst: false, keep_waves: -1, field: [7014], trigger_type: CardTriggerType.Field },
|
||||||
{ uuid: 8206, skill: 6206, wave: 1, name: "陨石术", info: "召唤陨石范围攻击敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 5, keep_waves: -1, trigger_type: CardTriggerType.Interval },
|
|
||||||
|
{ uuid: 8757, skill: 0, wave: 5, name: "战后恢复+", info: "战斗结束生命回复量+20%", is_inst: false, keep_waves: -1, field: [7207], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8758, skill: 0, wave: 5, name: "攻击加成+", info: "英雄攻击力+20%", is_inst: false, keep_waves: -1, field: [7208], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8759, skill: 0, wave: 5, name: "击晕加成+", info: "英雄击晕概率+20%", is_inst: false, keep_waves: -1, field: [7209], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8760, skill: 0, wave: 5, name: "暴击加成+", info: "英雄暴击率+20%", is_inst: false, keep_waves: -1, field: [7210], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8761, skill: 0, wave: 5, name: "暴伤加成+", info: "英雄暴击伤害+40%", is_inst: false, keep_waves: -1, field: [7211], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8762, skill: 0, wave: 5, name: "攻速加成+", info: "英雄攻击速度+20%", is_inst: false, keep_waves: -1, field: [7212], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8766, skill: 0, wave: 5, name: "生命加成+", info: "英雄最大生命+20%", is_inst: false, keep_waves: -1, field: [7216], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8767, skill: 0, wave: 5, name: "风怒加成+", info: "英雄风怒概率+20%", is_inst: false, keep_waves: -1, field: [7217], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8768, skill: 0, wave: 5, name: "穿刺加成+", info: "英雄穿刺概率+20%", is_inst: false, keep_waves: -1, field: [7218], trigger_type: CardTriggerType.Field },
|
||||||
|
// --- 范围攻击卡(ap 递增,间隔缩短) ---
|
||||||
|
{ uuid: 8251, skill: 6201, wave: 5, name: "雷墙+", info: "召唤雷墙阻挡敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 5, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 150 } },
|
||||||
|
{ uuid: 8252, skill: 6202, wave: 5, name: "火墙+", info: "召唤火墙阻挡敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 5, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 150 } },
|
||||||
|
{ uuid: 8253, skill: 6203, wave: 5, name: "飓风+", info: "召唤飓风攻击敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 5, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 150 } },
|
||||||
|
{ uuid: 8254, skill: 6204, wave: 5, name: "水墙+", info: "召唤水墙阻挡敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 5, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 150 } },
|
||||||
|
{ uuid: 8255, skill: 6205, wave: 5, name: "风墙+", info: "召唤风墙困住敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 5, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 150 } },
|
||||||
|
{ uuid: 8256, skill: 6206, wave: 5, name: "陨石术+", info: "召唤陨石范围攻击敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 5, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 150 } },
|
||||||
|
|
||||||
|
// ==================== wave 8 档(强度 ×3) ====================
|
||||||
|
// --- 驻场卡(field uuid +400,对应 FieldSkillSet 74xx 段) ---
|
||||||
|
{ uuid: 8855, skill: 0, wave: 8, name: "金币收益++", info: "每回合金币收益+3", is_inst: false, keep_waves: -1, field: [7405], trigger_type: CardTriggerType.Field },
|
||||||
|
|
||||||
|
{ uuid: 8857, skill: 0, wave: 8, name: "战后恢复++", info: "战斗结束生命回复量+30%", is_inst: false, keep_waves: -1, field: [7407], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8858, skill: 0, wave: 8, name: "攻击加成++", info: "英雄攻击力+30%", is_inst: false, keep_waves: -1, field: [7408], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8859, skill: 0, wave: 8, name: "击晕加成++", info: "英雄击晕概率+30%", is_inst: false, keep_waves: -1, field: [7409], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8860, skill: 0, wave: 8, name: "暴击加成++", info: "英雄暴击率+30%", is_inst: false, keep_waves: -1, field: [7410], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8861, skill: 0, wave: 8, name: "暴伤加成++", info: "英雄暴击伤害+60%", is_inst: false, keep_waves: -1, field: [7411], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8862, skill: 0, wave: 8, name: "攻速加成++", info: "英雄攻击速度+30%", is_inst: false, keep_waves: -1, field: [7412], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8866, skill: 0, wave: 8, name: "生命加成++", info: "英雄最大生命+30%", is_inst: false, keep_waves: -1, field: [7416], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8867, skill: 0, wave: 8, name: "风怒加成++", info: "英雄风怒概率+30%", is_inst: false, keep_waves: -1, field: [7417], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8868, skill: 0, wave: 8, name: "穿刺加成++", info: "英雄穿刺概率+30%", is_inst: false, keep_waves: -1, field: [7418], trigger_type: CardTriggerType.Field },
|
||||||
|
|
||||||
|
{ uuid: 8851, skill: 0, wave: 8, name: "召唤强化++", info: "召唤触发技能次数+1", is_inst: false, keep_waves: -1, field: [7001], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8852, skill: 0, wave: 8, name: "死亡强化++", info: "死亡触发技能次数+1", is_inst: false, keep_waves: -1, field: [7002], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8853, skill: 0, wave: 8, name: "开场强化++", info: "战斗开始触发技能次数+1", is_inst: false, keep_waves: -1, field: [7003], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8854, skill: 0, wave: 8, name: "结束强化++", info: "战斗结束触发技能次数+1", is_inst: false, keep_waves: -1, field: [7004], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8869, skill: 0, wave: 8, name: "攻击强化++", info: "攻击触发技能次数+1", is_inst: false, keep_waves: -1, field: [7019], trigger_type: CardTriggerType.Field },
|
||||||
|
{ uuid: 8870, skill: 0, wave: 8, name: "受击强化++", info: "被攻击触发技能次数+1", is_inst: false, keep_waves: -1, field: [7020], trigger_type: CardTriggerType.Field },
|
||||||
|
// --- 范围攻击卡(ap 最高,间隔最短) ---
|
||||||
|
{ uuid: 8351, skill: 6201, wave: 8, name: "雷墙++", info: "召唤雷墙阻挡敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 4, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 250 } },
|
||||||
|
{ uuid: 8352, skill: 6202, wave: 8, name: "火墙++", info: "召唤火墙阻挡敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 4, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 250 } },
|
||||||
|
{ uuid: 8353, skill: 6203, wave: 8, name: "飓风++", info: "召唤飓风攻击敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 4, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 250 } },
|
||||||
|
{ uuid: 8354, skill: 6204, wave: 8, name: "水墙++", info: "召唤水墙阻挡敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 4, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 250 } },
|
||||||
|
{ uuid: 8355, skill: 6205, wave: 8, name: "风墙++", info: "召唤风墙困住敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 4, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 250 } },
|
||||||
|
{ uuid: 8356, skill: 6206, wave: 8, name: "陨石术++", info: "召唤陨石范围攻击敌人,有概率击晕", is_inst: false, t_times: 999, t_inv: 4, keep_waves: -1, trigger_type: CardTriggerType.Interval, overrides: { ap: 250 } },
|
||||||
];
|
];
|
||||||
|
|
||||||
SkillCardData.forEach(data => {
|
SkillCardData.forEach(data => {
|
||||||
|
|||||||
@@ -21,9 +21,9 @@ export enum FacSet {
|
|||||||
MON = 1,
|
MON = 1,
|
||||||
}
|
}
|
||||||
export enum FightSet {
|
export enum FightSet {
|
||||||
WAVE_COIN_BASE = 4, // 波次金币基础奖励
|
WAVE_COIN_BASE = 7, // 波次金币基础奖励
|
||||||
WAVE_COIN_GROW = 1, // 波次金币递增值
|
WAVE_COIN_GROW = 2, // 波次金币递增值
|
||||||
WAVE_COIN_MAX = 10, // 波次金币最大基础奖励
|
WAVE_COIN_MAX = 17, // 波次金币最大基础奖励
|
||||||
CRIT_DAMAGE = 50,//暴击伤害
|
CRIT_DAMAGE = 50,//暴击伤害
|
||||||
MORE_RC = 10,//更多次数 广告获取的次数
|
MORE_RC = 10,//更多次数 广告获取的次数
|
||||||
HEARTPOS = -320,//基地位置
|
HEARTPOS = -320,//基地位置
|
||||||
@@ -42,8 +42,8 @@ export enum FightSet {
|
|||||||
SHIELD_MAX = 5,
|
SHIELD_MAX = 5,
|
||||||
WAVE_HEAL_RATE = 0.5, // 回合结束时所有英雄恢复最大生命值的比例
|
WAVE_HEAL_RATE = 0.5, // 回合结束时所有英雄恢复最大生命值的比例
|
||||||
PUNCTURE_DOWN = 50,
|
PUNCTURE_DOWN = 50,
|
||||||
REFRESH_COST = 1,
|
REFRESH_COST = 2,
|
||||||
BASE_COST = 3,
|
BASE_COST = 5,
|
||||||
// 刷新成本
|
// 刷新成本
|
||||||
/** 卡池等级上限(对应 CardLV 最大值) */
|
/** 卡池等级上限(对应 CardLV 最大值) */
|
||||||
MAX_CARD_POOL_LEVEL = 5,
|
MAX_CARD_POOL_LEVEL = 5,
|
||||||
|
|||||||
@@ -397,6 +397,8 @@ export enum FieldSkillType {
|
|||||||
HeroHp = 16, // 英雄最大生命加成
|
HeroHp = 16, // 英雄最大生命加成
|
||||||
HeroWindFury = 17, // 英雄风怒概率加成
|
HeroWindFury = 17, // 英雄风怒概率加成
|
||||||
HeroPuncture = 18, // 英雄穿刺概率加成
|
HeroPuncture = 18, // 英雄穿刺概率加成
|
||||||
|
AtkCount = 19, // 攻击触发技能次数提升
|
||||||
|
BeAtkCount = 20, // 被攻击触发技能次数提升
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface FieldSkillConfig {
|
export interface FieldSkillConfig {
|
||||||
@@ -409,23 +411,57 @@ export interface FieldSkillConfig {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export const FieldSkillSet: Record<number, FieldSkillConfig> = {
|
export const FieldSkillSet: Record<number, FieldSkillConfig> = {
|
||||||
7001: { uuid: 7001, name: "召唤强化", icon: "Stat_UnitSummonIncrease_02", type: FieldSkillType.SummonCount, value: 1, info: "召唤触发技能次数+1" }, //15 波技能
|
7001: { uuid: 7001, name: "召唤强化", icon: "Stat_UnitSummonIncrease_02", type: FieldSkillType.SummonCount, value: 1, info: "召唤触发技能次数+1" },
|
||||||
7002: { uuid: 7002, name: "死亡强化", icon: "Stat_PoisonChanceIncrease", type: FieldSkillType.DeadCount, value: 1, info: "死亡触发技能次数+1" }, //15 波技能
|
7002: { uuid: 7002, name: "死亡强化", icon: "Stat_PoisonChanceIncrease", type: FieldSkillType.DeadCount, value: 1, info: "死亡触发技能次数+1" },
|
||||||
7003: { uuid: 7003, name: "开场强化", icon: "Stat_AttackRangeIncrease_01", type: FieldSkillType.StartCount, value: 1, info: "战斗开始触发技能次数+1" }, //15 波技能
|
7003: { uuid: 7003, name: "开场强化", icon: "Stat_AttackRangeIncrease_01", type: FieldSkillType.StartCount, value: 1, info: "战斗开始触发技能次数+1" },
|
||||||
7004: { uuid: 7004, name: "结束强化", icon: "Stat_UnitSummonIncrease_01", type: FieldSkillType.EndCount, value: 1, info: "战斗结束触发技能次数+1" }, //15 波技能
|
7004: { uuid: 7004, name: "结束强化", icon: "Stat_UnitSummonIncrease_01", type: FieldSkillType.EndCount, value: 1, info: "战斗结束触发技能次数+1" },
|
||||||
7005: { uuid: 7005, name: "金币收益", icon: "Stat_InventorySlotIncrease", type: FieldSkillType.WaveGold, value: 1, info: "每回合金币收益+1" }, //1 波技能
|
7019: { uuid: 7019, name: "攻击强化", icon: "Stat_Attack_03", type: FieldSkillType.AtkCount, value: 1, info: "攻击触发技能次数+1" },
|
||||||
7006: { uuid: 7006, name: "出售强化", icon: "Stat_GoldGainIncrease_01", type: FieldSkillType.SellGold, value: 1, info: "卖出英雄金币+1" }, //1 波技能
|
7020: { uuid: 7020, name: "受击强化", icon: "Stat_Armor_01", type: FieldSkillType.BeAtkCount, value: 1, info: "被攻击触发技能次数+1" },
|
||||||
7007: { uuid: 7007, name: "战后恢复", icon: "Stat_PotionBoost", type: FieldSkillType.WaveHeal, value: 0.1, info: "战斗结束生命回复量+10%" }, //1 波技能
|
7005: { uuid: 7005, name: "金币收益", icon: "Stat_InventorySlotIncrease", type: FieldSkillType.WaveGold, value: 1, info: "每回合金币收益+1" },
|
||||||
7008: { uuid: 7008, name: "攻击加成", icon: "Stat_Attack_03", type: FieldSkillType.HeroAtk, value: 0.1, info: "英雄攻击力+10%" }, //10 波技能
|
7006: { uuid: 7006, name: "出售强化", icon: "Stat_GoldGainIncrease_01", type: FieldSkillType.SellGold, value: 1, info: "卖出英雄金币+1" },
|
||||||
7009: { uuid: 7009, name: "击晕加成", icon: "Stat_Stun_01", type: FieldSkillType.HeroStun, value: 0.1, info: "英雄击晕概率+10%" }, //10 波技能
|
7007: { uuid: 7007, name: "战后恢复", icon: "Stat_PotionBoost", type: FieldSkillType.WaveHeal, value: 0.1, info: "战斗结束生命回复量+10%" },
|
||||||
7010: { uuid: 7010, name: "暴击加成", icon: "Stat_CriticalChance_02", type: FieldSkillType.HeroCrit, value: 0.1, info: "英雄暴击率+10%" }, //10 波技能
|
7008: { uuid: 7008, name: "攻击加成", icon: "Stat_Attack_03", type: FieldSkillType.HeroAtk, value: 0.1, info: "英雄攻击力+10%" },
|
||||||
7011: { uuid: 7011, name: "暴伤加成", icon: "Stat_Critical_01", type: FieldSkillType.HeroCritDamage, value: 0.2, info: "英雄暴击伤害+20%" }, //10 波技能
|
7009: { uuid: 7009, name: "击晕加成", icon: "Stat_Stun_01", type: FieldSkillType.HeroStun, value: 0.1, info: "英雄击晕概率+10%" },
|
||||||
7012: { uuid: 7012, name: "攻速加成", icon: "Stat_AttackSpeed_02", type: FieldSkillType.HeroSpeed, value: 0.1, info: "英雄攻击速度+10%" }, //10 波技能
|
7010: { uuid: 7010, name: "暴击加成", icon: "Stat_CriticalChance_02", type: FieldSkillType.HeroCrit, value: 0.1, info: "英雄暴击率+10%" },
|
||||||
|
7011: { uuid: 7011, name: "暴伤加成", icon: "Stat_Critical_01", type: FieldSkillType.HeroCritDamage, value: 0.2, info: "英雄暴击伤害+20%" },
|
||||||
|
7012: { uuid: 7012, name: "攻速加成", icon: "Stat_AttackSpeed_02", type: FieldSkillType.HeroSpeed, value: 0.1, info: "英雄攻击速度+10%" },
|
||||||
// ---- 13~18 来自原 TalentSet,统一为驻场百分比 / 绝对值口径 ----
|
// ---- 13~18 来自原 TalentSet,统一为驻场百分比 / 绝对值口径 ----
|
||||||
// 出售返还由原生 SellGold 承担,SellBonus 不再单独配置
|
// 出售返还由原生 SellGold 承担,SellBonus 不再单独配置
|
||||||
7013: { uuid: 7013, name: "购买优惠", icon: "Stat_KeyCapacityIncrease", type: FieldSkillType.BuyDiscount, value: 1, info: "购买卡牌费用-1金币" }, //10 波技能
|
7013: { uuid: 7013, name: "购买优惠", icon: "Stat_KeyCapacityIncrease", type: FieldSkillType.BuyDiscount, value: 1, info: "购买卡牌费用-1金币" },
|
||||||
7014: { uuid: 7014, name: "刷新优惠", icon: "Stat_RandomBonus", type: FieldSkillType.RefreshDiscount, value: 1, info: "刷新卡牌费用-1金币" }, //10 波技能
|
7014: { uuid: 7014, name: "刷新优惠", icon: "Stat_RandomBonus", type: FieldSkillType.RefreshDiscount, value: 1, info: "刷新卡牌费用-1金币" },
|
||||||
7016: { uuid: 7016, name: "生命加成", icon: "Stat_Hp_02", type: FieldSkillType.HeroHp, value: 0.1, info: "英雄最大生命+10%" }, //10 波技能
|
7016: { uuid: 7016, name: "生命加成", icon: "Stat_Hp_02", type: FieldSkillType.HeroHp, value: 0.1, info: "英雄最大生命+10%" },
|
||||||
7017: { uuid: 7017, name: "风怒加成", icon: "Stat_CriticalComboChance", type: FieldSkillType.HeroWindFury, value: 0.1, info: "英雄风怒概率+10%" }, //10 波技能
|
7017: { uuid: 7017, name: "风怒加成", icon: "Stat_CriticalComboChance", type: FieldSkillType.HeroWindFury, value: 0.1, info: "英雄风怒概率+10%" },
|
||||||
7018: { uuid: 7018, name: "穿刺加成", icon: "Stat_Tripleshot", type: FieldSkillType.HeroPuncture, value: 0.1, info: "英雄穿刺概率+10%" }, //10 波技能
|
7018: { uuid: 7018, name: "穿刺加成", icon: "Stat_Tripleshot", type: FieldSkillType.HeroPuncture, value: 0.1, info: "英雄穿刺概率+10%" },
|
||||||
|
|
||||||
|
// ============ wave5 档(原值 ×2) ============
|
||||||
|
|
||||||
|
7205: { uuid: 7205, name: "金币收益+", icon: "Stat_InventorySlotIncrease", type: FieldSkillType.WaveGold, value: 2, info: "每回合金币收益+2" },
|
||||||
|
7206: { uuid: 7206, name: "出售强化+", icon: "Stat_GoldGainIncrease_01", type: FieldSkillType.SellGold, value: 2, info: "卖出英雄金币+2" },
|
||||||
|
7207: { uuid: 7207, name: "战后恢复+", icon: "Stat_PotionBoost", type: FieldSkillType.WaveHeal, value: 0.2, info: "战斗结束生命回复量+20%" },
|
||||||
|
7208: { uuid: 7208, name: "攻击加成+", icon: "Stat_Attack_03", type: FieldSkillType.HeroAtk, value: 0.2, info: "英雄攻击力+20%" },
|
||||||
|
7209: { uuid: 7209, name: "击晕加成+", icon: "Stat_Stun_01", type: FieldSkillType.HeroStun, value: 0.2, info: "英雄击晕概率+20%" },
|
||||||
|
7210: { uuid: 7210, name: "暴击加成+", icon: "Stat_CriticalChance_02", type: FieldSkillType.HeroCrit, value: 0.2, info: "英雄暴击率+20%" },
|
||||||
|
7211: { uuid: 7211, name: "暴伤加成+", icon: "Stat_Critical_01", type: FieldSkillType.HeroCritDamage, value: 0.4, info: "英雄暴击伤害+40%" },
|
||||||
|
7212: { uuid: 7212, name: "攻速加成+", icon: "Stat_AttackSpeed_02", type: FieldSkillType.HeroSpeed, value: 0.2, info: "英雄攻击速度+20%" },
|
||||||
|
7213: { uuid: 7213, name: "购买优惠+", icon: "Stat_KeyCapacityIncrease", type: FieldSkillType.BuyDiscount, value: 2, info: "购买卡牌费用-2金币" },
|
||||||
|
7214: { uuid: 7214, name: "刷新优惠+", icon: "Stat_RandomBonus", type: FieldSkillType.RefreshDiscount, value: 2, info: "刷新卡牌费用-2金币" },
|
||||||
|
7216: { uuid: 7216, name: "生命加成+", icon: "Stat_Hp_02", type: FieldSkillType.HeroHp, value: 0.2, info: "英雄最大生命+20%" },
|
||||||
|
7217: { uuid: 7217, name: "风怒加成+", icon: "Stat_CriticalComboChance", type: FieldSkillType.HeroWindFury, value: 0.2, info: "英雄风怒概率+20%" },
|
||||||
|
7218: { uuid: 7218, name: "穿刺加成+", icon: "Stat_Tripleshot", type: FieldSkillType.HeroPuncture, value: 0.2, info: "英雄穿刺概率+20%" },
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
7405: { uuid: 7405, name: "金币收益++", icon: "Stat_InventorySlotIncrease", type: FieldSkillType.WaveGold, value: 3, info: "每回合金币收益+3" },
|
||||||
|
7406: { uuid: 7406, name: "出售强化++", icon: "Stat_GoldGainIncrease_01", type: FieldSkillType.SellGold, value: 3, info: "卖出英雄金币+3" },
|
||||||
|
7407: { uuid: 7407, name: "战后恢复++", icon: "Stat_PotionBoost", type: FieldSkillType.WaveHeal, value: 0.3, info: "战斗结束生命回复量+30%" },
|
||||||
|
7408: { uuid: 7408, name: "攻击加成++", icon: "Stat_Attack_03", type: FieldSkillType.HeroAtk, value: 0.3, info: "英雄攻击力+30%" },
|
||||||
|
7409: { uuid: 7409, name: "击晕加成++", icon: "Stat_Stun_01", type: FieldSkillType.HeroStun, value: 0.3, info: "英雄击晕概率+30%" },
|
||||||
|
7410: { uuid: 7410, name: "暴击加成++", icon: "Stat_CriticalChance_02", type: FieldSkillType.HeroCrit, value: 0.3, info: "英雄暴击率+30%" },
|
||||||
|
7411: { uuid: 7411, name: "暴伤加成++", icon: "Stat_Critical_01", type: FieldSkillType.HeroCritDamage, value: 0.6, info: "英雄暴击伤害+60%" },
|
||||||
|
7412: { uuid: 7412, name: "攻速加成++", icon: "Stat_AttackSpeed_02", type: FieldSkillType.HeroSpeed, value: 0.3, info: "英雄攻击速度+30%" },
|
||||||
|
7413: { uuid: 7413, name: "购买优惠++", icon: "Stat_KeyCapacityIncrease", type: FieldSkillType.BuyDiscount, value: 3, info: "购买卡牌费用-3金币" },
|
||||||
|
7414: { uuid: 7414, name: "刷新优惠++", icon: "Stat_RandomBonus", type: FieldSkillType.RefreshDiscount, value: 3, info: "刷新卡牌费用-3金币" },
|
||||||
|
7416: { uuid: 7416, name: "生命加成++", icon: "Stat_Hp_02", type: FieldSkillType.HeroHp, value: 0.3, info: "英雄最大生命+30%" },
|
||||||
|
7417: { uuid: 7417, name: "风怒加成++", icon: "Stat_CriticalComboChance", type: FieldSkillType.HeroWindFury, value: 0.3, info: "英雄风怒概率+30%" },
|
||||||
|
7418: { uuid: 7418, name: "穿刺加成++", icon: "Stat_Tripleshot", type: FieldSkillType.HeroPuncture, value: 0.3, info: "英雄穿刺概率+30%" },
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -101,10 +101,19 @@ export class SkillTriggerHelper {
|
|||||||
*/
|
*/
|
||||||
private static handleAtking(model: HeroAttrsComp, view: HeroViewComp) {
|
private static handleAtking(model: HeroAttrsComp, view: HeroViewComp) {
|
||||||
if (!model.atking || model.atking.length === 0) return;
|
if (!model.atking || model.atking.length === 0) return;
|
||||||
|
|
||||||
|
let triggerCount = 1;
|
||||||
|
if (model.fac === FacSet.HERO) {
|
||||||
|
triggerCount += FieldSkillHelper.getFieldSkillTotalValue(FieldSkillType.AtkCount);
|
||||||
|
}
|
||||||
|
triggerCount = Math.max(1, Math.floor(triggerCount));
|
||||||
|
|
||||||
model.atking.forEach(atkConfig => {
|
model.atking.forEach(atkConfig => {
|
||||||
// atk_count 代表已进行的普攻次数。当其余数刚好整除配置阈值时触发。
|
// atk_count 代表已进行的普攻次数。当其余数刚好整除配置阈值时触发。
|
||||||
if (model.atk_count > 0 && model.atk_count % atkConfig.t_num === 0) {
|
if (model.atk_count > 0 && model.atk_count % atkConfig.t_num === 0) {
|
||||||
this.dispatchSingle(atkConfig.s_uuid, model, view, SkillTriggerType.Atking, atkConfig.overrides);
|
for (let i = 0; i < triggerCount; i++) {
|
||||||
|
this.dispatchSingle(atkConfig.s_uuid, model, view, SkillTriggerType.Atking, atkConfig.overrides);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -115,10 +124,19 @@ export class SkillTriggerHelper {
|
|||||||
*/
|
*/
|
||||||
private static handleAtked(model: HeroAttrsComp, view: HeroViewComp) {
|
private static handleAtked(model: HeroAttrsComp, view: HeroViewComp) {
|
||||||
if (!model.atked || model.atked.length === 0) return;
|
if (!model.atked || model.atked.length === 0) return;
|
||||||
|
|
||||||
|
let triggerCount = 1;
|
||||||
|
if (model.fac === FacSet.HERO) {
|
||||||
|
triggerCount += FieldSkillHelper.getFieldSkillTotalValue(FieldSkillType.BeAtkCount);
|
||||||
|
}
|
||||||
|
triggerCount = Math.max(1, Math.floor(triggerCount));
|
||||||
|
|
||||||
model.atked.forEach(atkConfig => {
|
model.atked.forEach(atkConfig => {
|
||||||
// atked_count 代表已承受的受击次数。当其余数刚好整除配置阈值时触发。
|
// atked_count 代表已承受的受击次数。当其余数刚好整除配置阈值时触发。
|
||||||
if (model.atked_count > 0 && model.atked_count % atkConfig.t_num === 0) {
|
if (model.atked_count > 0 && model.atked_count % atkConfig.t_num === 0) {
|
||||||
this.dispatchSingle(atkConfig.s_uuid, model, view, SkillTriggerType.Atked, atkConfig.overrides);
|
for (let i = 0; i < triggerCount; i++) {
|
||||||
|
this.dispatchSingle(atkConfig.s_uuid, model, view, SkillTriggerType.Atked, atkConfig.overrides);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user