Table of Contents

Enum DamagePreventionReason

Namespace
ElectricDrill.AstraHealth.Damage
Assembly
com.electricdrill.astra-health.Runtime.dll

Flags that explain why a damage attempt was prevented. Multiple reasons may be combined. These flags are used in Reasons when an attempt is prevented.

[Flags]
public enum DamagePreventionReason
Extension Methods

Fields

AllDamageImmune = 2

The target is immune to all damage because of its generic damage mitigation stat value.

BarrierAbsorbed = 16

The target's barrier fully absorbed the damage.

DamageSourceImmune = 8

The target is immune to the specific DamageSourceSO that originated the damage.

DamageTypeImmune = 4

The target is immune to this specific DamageTypeSO.

DefenseAbsorbed = 32

The target's stat defense for the damage type fully absorbed the damage.

EntityDead = 512

The target was already dead when the damage would have been applied.

EntityImmune = 1

The target entity is immune to all damage (global immunity).

None = 0

No prevention; damage can proceed.

PipelineReducedToZero = 256

After reductions, a pipeline step reduced the damage to zero and nothing was applied.

PrePhaseIgnored = 64

The pre-processing phase explicitly ignored the damage (for example by a passive ability that intercepted the PreDmgGameEvent and instructed the PreDamageContext to ignore it).

PrePhaseZeroAmount = 128

The damage amount was zero in the pre-phase and therefore not applied.