refactor(战斗系统): 重构伤害计算逻辑并统一属性命名
- 将DAMAGE_REDUCTION统一重命名为DMG_RED以提高一致性 - 优化暴击判定逻辑,加入暴击抗性计算 - 重构伤害计算公式,整合易伤和免伤效果 - 移除冗余的calculateDamage方法 - 为枚举值添加注释说明
This commit is contained in:
@@ -12,10 +12,10 @@ export enum BType {
|
||||
}
|
||||
|
||||
export enum NeAttrs {
|
||||
IN_FROST = 0,
|
||||
IN_STUN = 1,
|
||||
IN_BURN = 2,
|
||||
IN_POISON = 3,
|
||||
IN_FROST = 0, // 冰冻状态
|
||||
IN_STUN = 1, // 眩晕状态
|
||||
IN_BURN = 2, // 灼烧状态
|
||||
IN_POISON = 3, // 中毒状态
|
||||
}
|
||||
|
||||
// ========== 属性枚举 ==========
|
||||
@@ -48,7 +48,7 @@ export enum Attrs {
|
||||
MDEF = 21, // 魔法防御
|
||||
DODGE = 22, // 闪避率
|
||||
BLOCK = 23, // 格挡率
|
||||
DAMAGE_REDUCTION = 24, // 伤害减免
|
||||
DMG_RED = 24, // 伤害减免
|
||||
THORNS = 25, // 反伤
|
||||
CRITICAL_RESIST = 26, // 暴击抗性
|
||||
CON_RES = 27, // 控制抗性
|
||||
@@ -102,11 +102,9 @@ export enum Attrs {
|
||||
BURN = 75, // 易伤效果
|
||||
WFUNY = 77, // 风怒
|
||||
|
||||
// ========== 生存与恢复相关 (80-89) ==========
|
||||
|
||||
// ========== 负面状态相关 (90-99) ==========
|
||||
|
||||
// ========== 基础属性(影响其他属性)(100-104) ==========
|
||||
// ========== 负面状态相关 (80-89) ==========
|
||||
DMG_INVUL = 80, //易伤
|
||||
// ========== 基础属性(影响其他属性) (90-99)==========
|
||||
STRENGTH = 90, // 力量(影响物理相关)
|
||||
INTELLIGENCE = 91, // 智力(影响魔法相关)
|
||||
AGILITY = 92, // 敏捷(影响速度和闪避)
|
||||
@@ -173,7 +171,7 @@ export const AttrsType: Record<Attrs, BType> = {
|
||||
[Attrs.MDEF]: BType.VALUE, // 魔法防御 - 数值型
|
||||
[Attrs.DODGE]: BType.RATIO, // 闪避率 - 百分比型
|
||||
[Attrs.BLOCK]: BType.RATIO, // 格挡率 - 百分比型
|
||||
[Attrs.DAMAGE_REDUCTION]: BType.RATIO, // 伤害减免 - 百分比型
|
||||
[Attrs.DMG_RED]: BType.RATIO, // 伤害减免 - 百分比型
|
||||
[Attrs.THORNS]: BType.RATIO, // 反伤 - 百分比型
|
||||
|
||||
// ========== 暴击与命中属性(百分比型) ==========
|
||||
@@ -227,9 +225,9 @@ export const AttrsType: Record<Attrs, BType> = {
|
||||
[Attrs.BURN]: BType.RATIO, // 易伤效果 - 百分比型
|
||||
[Attrs.WFUNY]: BType.RATIO, // 未知特殊属性 - 百分比型
|
||||
|
||||
// ========== 生存与恢复相关(混合类型) ==========
|
||||
|
||||
|
||||
// ========== 负面状态相关(混合类型) ==========
|
||||
[Attrs.DMG_INVUL]: BType.RATIO, //易伤
|
||||
|
||||
// ========== 基础属性(数值型) ==========
|
||||
[Attrs.STRENGTH]: BType.VALUE, // 力量 - 数值型
|
||||
|
||||
@@ -28,7 +28,7 @@ export enum TalEffet {
|
||||
WFUNY=7, // 风怒
|
||||
D_SKILL=8, //两次技能
|
||||
SHIELD=9, // 护盾
|
||||
DAMAGE_REDUCTION=10, // 减伤
|
||||
DMG_RED=10, // 减伤
|
||||
C_MSKILL=11, // 必杀技能必暴
|
||||
C_ATK=12, // 普工必爆
|
||||
C_SKILL=13, // 一般技能必暴
|
||||
@@ -47,7 +47,8 @@ export enum TalAttrs {
|
||||
SILENCE_CHANCE=Attrs.SILENCE_CHANCE, // 沉默概率
|
||||
CRITICAL=Attrs.CRITICAL, // 暴击率
|
||||
AP=Attrs.AP, // 攻击力
|
||||
MP=Attrs.MAP, // 魔法
|
||||
MP=Attrs.MAP, // 魔法攻击力
|
||||
DMG_RED=Attrs.DMG_RED, // 魔法防御
|
||||
}
|
||||
/**
|
||||
* 天赋配置接口
|
||||
@@ -111,7 +112,7 @@ export const talConf: Record<number, ItalConf> = {
|
||||
desc:"被攻击3次后, 给于目标50%的伤害"},
|
||||
7102:{uuid:7102,name:"护盾",triType:TriType.DMG,Trigger:3,count:1,target:TalTarget.SELF,effet:TalEffet.SHIELD,vType:BType.RATIO, value:20,attrs:TalAttrs.NON,
|
||||
desc:"被攻击3次后, 获得20%的生命值护盾"},
|
||||
7103:{uuid:7103,name:"减伤",triType:TriType.DMG,Trigger:3,count:1,target:TalTarget.ENEMY,effet:TalEffet.DAMAGE_REDUCTION,vType:BType.RATIO, value:50,attrs:TalAttrs.NON,
|
||||
7103:{uuid:7103,name:"减伤",triType:TriType.DMG,Trigger:3,count:1,target:TalTarget.ENEMY,effet:TalEffet.DMG_RED,vType:BType.RATIO, value:50,attrs:TalAttrs.DMG_RED,
|
||||
desc:"被攻击3次后, 下1次伤害减50%"},
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user