feat: 新增麻痹异常状态机制

1.  新增麻痹概率属性与相关属性计算方法
2.  为英雄普攻和技能添加麻痹触发逻辑
3.  配置闪电系技能默认30%麻痹概率
4.  更新英雄技能说明与配置参数
This commit is contained in:
pan
2026-08-19 17:05:50 +08:00
parent 5585149b12
commit 54591c78dd
7 changed files with 45 additions and 24 deletions

View File

@@ -81,6 +81,7 @@ export class HeroAttrsComp extends ecs.Comp {
freeze_res: number = 0; // 冰冻抗性
stun_chance: number = 0; // 击晕概率
stun_res: number = 0; // 击晕抗性
paralyze_chance: number = 0; // 麻痹概率(雷电技能默认 para=30此处为基础/光环加成)
knockback_chance: number = 0; // 击退强化(原击退概率,现转换为击退距离增量)
knockback_distance: number = 0; // 击退距离强化
knockback_res: number = 0; // 击退抗性(削减击退距离增量)
@@ -459,6 +460,12 @@ export class HeroAttrsComp extends ecs.Comp {
return base + mods.flatSum + mods.pctSum;
}
/** 最终麻痹概率 = 基础 + 限时修饰(加法模型),雷电技能默认再叠加技能自身 para=30 */
public getFinalParalyzeChance(): number {
const mods = this.aggregateTimedMods(Attrs.paralyze_chance);
return this.paralyze_chance + mods.flatSum + mods.pctSum;
}
/** 最终击退强化 = 基础击退强化 + 限时修饰(加法模型,转换为击退距离增量) */
public getFinalKnockbackChance(): number {
const mods = this.aggregateTimedMods(Attrs.knockback_chance);
@@ -642,6 +649,7 @@ export class HeroAttrsComp extends ecs.Comp {
this.freeze_res = 0;
this.stun_chance = 0;
this.stun_res = 0;
this.paralyze_chance = 0;
this.knockback_chance = 0;
this.knockback_distance = 0;
this.knockback_res = 0;