yyl
5 天以前 cc4298575ca830e32d7e3ef2014894dbb292bc82
125 战斗  吸血反转为伤害&治疗反转成伤害 处理
2个文件已修改
16 ■■■■ 已修改文件
Main/System/Battle/Define/BattleDmgInfo.cs 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Battle/Define/DamageType.cs 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Main/System/Battle/Define/BattleDmgInfo.cs
@@ -155,7 +155,7 @@
                    break;
                
                case ServerDamageType.SuckHpReverse:
                    convertedAttackTypes |= (int)DamageType.Damage;
                    convertedAttackTypes |= (int)DamageType.SuckHpReverse;
                    break;
                
                case ServerDamageType.SelfHarm:
@@ -166,6 +166,12 @@
                    Debug.LogError($"[BattleDmgInfo] 未知的服务器伤害类型: {serverDamageType}({serverValue})");
                    break;
            }
        }
        //  如果源类型包含ServerDamageType.DamageReverse:的话 则需要去掉 DamageType.Recovery
        if ((originalAttackTypes & (int)ServerDamageType.DamageReverse) != 0)
        {
            convertedAttackTypes &= ~(int)DamageType.Recovery;
        }
        // DOT技能特殊处理(SkillType == 3 或 4)
@@ -301,7 +307,7 @@
                targetDamageList.Add(new BattleDmg
                {
                    damage = suckHp,
                    attackType = (int)DamageType.SuckHP
                    attackType = IsType(DamageType.SuckHpReverse) ? (int)DamageType.Damage : (int)DamageType.SuckHP
                });
            }
            else
@@ -310,7 +316,7 @@
                casterDamageList.Add(new BattleDmg
                {
                    damage = suckHp,
                    attackType = (int)DamageType.SuckHP
                    attackType = IsType(DamageType.SuckHpReverse) ? (int)DamageType.Damage : (int)DamageType.SuckHP
                });
            }
        }
Main/System/Battle/Define/DamageType.cs
@@ -28,7 +28,7 @@
    Dodge = 512, //闪避
    DamageReverse = 1024,//伤害反转为治疗
    DamageReverse = 1024,//治疗反转成伤害
    SuckHpReverse = 2048,//吸血反转为伤害
    SelfHarm = 4096,//自残
@@ -65,5 +65,7 @@
    CritHeal = Crit + Recovery,         //暴击回血
    CritRealdamage = Crit + Realdamage, //暴击真伤
    SuckHpReverse, //吸血反转为伤害
}