Files
pixelheros/assets/script/game/common/config/HeroAttrs.ts
walkpan c275a0ee94 refactor(护盾): 移除 shield_max 属性并简化护盾逻辑
护盾系统不再需要维护最大护盾值,因为护盾层数已有明确上限(FightSet.SHIELD_MAX)。
移除 HeroAttrs 枚举、HeroAttrsComp 组件、HeroAtkSystem 和 HeroViewComp 中所有对 shield_max 的引用和操作。
现在护盾层数直接受 SHIELD_MAX 限制,视图层仅需当前护盾值即可显示。
2026-04-12 23:03:03 +08:00

77 lines
2.6 KiB
TypeScript

// ========== 属性枚举 ==========
/**
* 英雄属性枚举
* 定义所有可用的战斗属性类型
* 按逻辑分组排序:基础生存 → 攻击属性 → 防御属性 → 特殊效果 → 基础属性
*/
export enum Attrs {
// ==================== 基础属性 ====================
ap = "ap", // 基础攻击
hp = "hp", // 基础血量
hp_max = "hp_max", // 最大血量
speed = "speed", // 基础移动速度
dis = "dis", // 基础距离
shield = "shield", // 当前护盾
// ==================== 攻击属性 ====================
a_cd = "a_cd", // 攻击计时
s_cd = "s_cd", // 技能计时
a_cd_max = "a_cd_max", // 攻击CD
s_cd_max = "s_cd_max", // 技能CD
// ==================== 暴击与命中属性 ====================
critical = "critical", // 暴击率
// ==================== 特殊效果属性 ====================
freeze_chance = "freeze_chance", // 冰冻概率
back_chance = "back_chance", // 击退概率
// ==================== 增益效果属性 ====================
revive_count = "revive_count", // 复活次数
revive_time = "revive_time", // 复活时间
invincible_time = "invincible_time",// 无敌时间
// ==================== 武器进化相关 ====================
puncture = "puncture", // 穿刺次数
wfuny = "wfuny", // 风怒
}
/**
* 游戏单局统计数据接口
*/
export interface GameScoreStats {
score: number; // 基础得分
// 战斗统计
crt_count: number; // 暴击次数
wf_count: number; // 风怒次数
dod_count: number; // 闪避次数
back_count: number; // 击退次数
stun_count: number; // 击晕次数
freeze_count: number; // 冰冻次数
// 伤害统计
total_dmg: number; // 总伤害
atk_count: number; // 攻击次数 (用于计算平均伤害)
avg_dmg: number; // 平均伤害
thorns_dmg: number; // 反伤伤害
crit_dmg_total: number; // 暴击伤害总额
// 生存统计
heal_total: number; // 治疗总量
lifesteal_total: number;// 吸血总量
// 资源统计
exp_total: number; // 经验总数
gold_total: number; // 金币总数
// 击杀统计
melee_kill_count: number; // 近战怪击杀数量
remote_kill_count: number; // 远程怪击杀数量
elite_kill_count: number; // 精英怪击杀数量
boss_kill_count: number; // Boss击杀数
}