using System;
namespace HitFeedback
{
[Flags]
public enum DamageFeature
{
///
/// 未指定或未分类的伤害特性。
///
Undefined = 0,
///
/// 普通物理伤害或其他未特别定义的伤害(对应 DamageTypes.normal)。
///
NormalDamage = 1,
///
/// 真实伤害,不受护甲或其他减伤效果影响(对应 DamageTypes.realDamage)。
///
RealDamage = 2,
///
/// 伤害来自增益(Buff)或持续效果。
/// (基于 DamageInfo.isFromBuffOrEffect)
///
BuffOrEffectDamage = 4,
///
/// 伤害无视目标的护甲。
/// (基于 DamageInfo.ignoreArmor)
///
ArmorIgnoringDamage = 8,
///
/// 伤害是暴击伤害。
/// (基于 DamageInfo.crit > 0)
///
CriticalDamage = 16,
///
/// 伤害包含护甲穿透效果。
/// (基于 DamageInfo.armorPiercing > 0)
///
ArmorPiercingDamage = 32,
///
/// 伤害是爆炸类型。
/// (基于 DamageInfo.isExplosion)
///
ExplosionDamage = 64,
///
/// 伤害具有护甲破坏效果。
/// (基于 DamageInfo.armorBreak > 0)
///
ArmorBreakingDamage = 128,
///
/// 伤害可能带有元素效果(如果有 elementFactors 存在且非空)。
///
ElementalDamage = 256,
///
/// 伤害可能附带Buff效果。
/// (基于 DamageInfo.buffChance > 0 或 buff != null)
///
///
/// 注意:这个可以与 BuffOrEffectDamage 区分,BuffOrEffectDamage 是伤害本身来自Buff,
/// 而นี้是伤害造成时附带施加Buff的效果。
///
OnHitBuffApply = 512,
///
/// 伤害可能附带流血效果。
/// (基于 DamageInfo.bleedChance > 0)
///
OnHitBleed = 1024,
}
}