using System.Collections.Generic; using UnityEngine; using UnityEngine.Events; public class DamageArgs { public BaseAbility source; public BaseEffect effect; public Taggable user; public Taggable target; public float currentValue; public DamageType damageType; public EffectApplicationMethod applicationMethod; public bool isCrit; public int totalTargetsHit; public bool targetDead; } public class HealArgs { public BaseAbility source; public BaseEffect effect; public Taggable user; public Taggable target; public float currentValue; public EffectApplicationMethod applicationMethod; public bool isCrit; public int totalTargetsHit; } public class InvulnerabilityArgs { public Taggable user; public bool isImmune; } public class DodgeArgs { public Taggable user; public bool dodgedSuccessfully; } public class BlockArgs { public Taggable user; public bool blockedSuccessfully; } public class AbsorbArgs { public Taggable user; public bool absorbedDamage; public bool absorbDepleted; }