internal FinalDefenses(ParsedEvtcLog log, long start, long end, AbstractSingleActor actor, AbstractSingleActor from) { IReadOnlyList <AbstractHealthDamageEvent> damageLogs = actor.GetDamageTakenEvents(from, log, start, end); DamageTaken = damageLogs.Sum(x => (long)x.HealthDamage); BreakbarDamageTaken = Math.Round(actor.GetBreakbarDamageTakenEvents(from, log, start, end).Sum(x => x.BreakbarDamage), 1); BlockedCount = damageLogs.Count(x => x.IsBlocked); MissedCount = damageLogs.Count(x => x.IsBlind); InvulnedCount = damageLogs.Count(x => x.IsAbsorbed); EvadedCount = damageLogs.Count(x => x.IsEvaded); DodgeCount = actor.GetCastEvents(log, start, end).Count(x => x.Skill.IsDodge(log.SkillData)); DamageBarrier = damageLogs.Sum(x => x.ShieldDamage); InterruptedCount = damageLogs.Count(x => x.HasInterrupted); }