feat(英雄属性): 新增暴击伤害属性并支持驻场技能加成

- 在 HeroAttrs 枚举中添加 critical_damage 属性
- 修改 HeroAtkSystem 的暴击伤害计算逻辑,支持基础暴伤和英雄额外暴伤叠加
- 在 Skill 类中设置技能属性时,使用 HeroAttrsComp 的运行时属性获取方法
- 为 FieldSkillSet 添加 HeroFrost、HeroCrit、HeroCritDamage 和 HeroSpeed 驻场技能配置
- 在 HeroAttrsComp 中新增 crit_damage 字段和相关运行时属性计算方法
- 实现驻场技能百分比值统一换算逻辑,支持 0.2 和 20 两种配置写法
- 添加攻速加成机制,通过缩短技能 CD 实现攻击速度提升
This commit is contained in:
walkpan
2026-05-02 23:50:23 +08:00
parent 7a0b3ee74d
commit 2eaf85c6f5
5 changed files with 71 additions and 14 deletions

View File

@@ -142,7 +142,8 @@ export class HeroAtkSystem extends ecs.ComblockSystem implements ecs.ISystemUpd
mLogger.log(this.debugMode, 'HeroAtkSystem', " dmgCount",damage)
if (isCrit) {
damage = Math.floor(damage * (1 + FightSet.CRIT_DAMAGE / 100));
const critDamageBonus = damageEvent.Attrs[Attrs.critical_damage] || 0;
damage = Math.floor(damage * (1 + (FightSet.CRIT_DAMAGE + critDamageBonus) / 100));
reDate.isCrit=true;
if (damageEvent.Attrs.fac === FacSet.HERO) {
// 【评分系统 - 输出分】统计暴击次数与暴击造成的总伤害