yyl
2025-11-06 9424aabcb70374223a621eab120e9098cc36edc9
Main/System/Battle/Define/BattleDmgInfo.cs
@@ -21,6 +21,8 @@
    public List<long> damageList { get { return battleHurtParam.damageList; } }
    public BattleObject hurtObj { get { return battleHurtParam.hurtObj; } }
    public BattleObject casterObj { get { return battleHurtParam.casterObj; } }
    public HB427_tagSCUseSkill.tagSCUseSkillHurt hurt { get { return battleHurtParam.hurt; } }
    public SkillConfig skillConfig { get { return battleHurtParam.skillConfig; } }
@@ -30,7 +32,9 @@
    public bool isLastHit = false;
    public List<BattleDmg> battleDamageList = new List<BattleDmg>();
    public List<BattleDmg> targetDamageList = new List<BattleDmg>();
    public List<BattleDmg> casterDamageList = new List<BattleDmg>();
    public BattleDmgInfo(string battleFieldGuid, BattleHurtParam battleHurtParam)
    {
@@ -72,7 +76,7 @@
                long reflectHp = battleHurtParam.reflectHpList[i];
                if (reflectHp > 0)
                {
                    battleDamageList.Add(new BattleDmg
                    casterDamageList.Add(new BattleDmg
                    { 
                        damage = reflectHp, 
                        attackType = (int)DamageType.Reflect 
@@ -86,7 +90,7 @@
                long suckHp = battleHurtParam.suckHpList[i];
                if (suckHp > 0)
                {
                    battleDamageList.Add(new BattleDmg
                    casterDamageList.Add(new BattleDmg
                    { 
                        damage = suckHp, 
                        attackType = (int)DamageType.SuckHP 
@@ -104,13 +108,13 @@
                // 计算格挡伤害
                long totalDamage = (long)(actualDamage / (1 - blockRatio));
                long blockDmg = totalDamage - actualDamage;
                battleDamageList.Add(new BattleDmg { damage = blockDmg, attackType = (int)DamageType.Block });
                targetDamageList.Add(new BattleDmg { damage = blockDmg, attackType = (int)DamageType.Block });
                // 真实伤害特殊处理
                if (IsRealdamage())
                {
                    int showAttackType = (int)DamageType.Realdamage + (IsCrit() ? (int)DamageType.Crit : 0);
                    battleDamageList.Add(new BattleDmg { damage = actualDamage, attackType = showAttackType });
                    targetDamageList.Add(new BattleDmg { damage = actualDamage, attackType = showAttackType });
                }
                else
                {
@@ -125,7 +129,7 @@
                        else
                            UnityEngine.Debug.LogError($"强制转换失败,该类型不是治疗也不是伤害 {attackType}");
                    }
                    battleDamageList.Add(new BattleDmg { damage = actualDamage, attackType = attackType });
                    targetDamageList.Add(new BattleDmg { damage = actualDamage, attackType = attackType });
                }
            }
            else
@@ -136,7 +140,7 @@
                if (IsRealdamage())
                {
                    int showAttackType = (int)DamageType.Realdamage + (IsCrit() ? (int)DamageType.Crit : 0);
                    battleDamageList.Add(new BattleDmg { damage = actualDamage, attackType = showAttackType });
                    targetDamageList.Add(new BattleDmg { damage = actualDamage, attackType = showAttackType });
                }
                else
                {
@@ -151,7 +155,7 @@
                        else
                            UnityEngine.Debug.LogError($"强制转换失败,该类型不是治疗也不是伤害 {attackType}");
                    }
                    battleDamageList.Add(new BattleDmg { damage = actualDamage, attackType = attackType });
                    targetDamageList.Add(new BattleDmg { damage = actualDamage, attackType = attackType });
                }
            }
        }