public int GetTotalDamage(AbstractSingleActor actor, ParsedEvtcLog log, AbstractSingleActor t, long start, long end) { FinalDPS damageData = actor.GetDPSStats(t, log, start, end); switch (_compareType) { case DamageType.All: return(_dmgSrc == DamageSource.All ? damageData.Damage : damageData.ActorDamage); case DamageType.Condition: return(_dmgSrc == DamageSource.All ? damageData.CondiDamage : damageData.ActorCondiDamage); case DamageType.Power: return(_dmgSrc == DamageSource.All ? damageData.PowerDamage : damageData.ActorPowerDamage); case DamageType.Strike: return(_dmgSrc == DamageSource.All ? damageData.StrikeDamage : damageData.ActorStrikeDamage); case DamageType.StrikeAndCondition: return(_dmgSrc == DamageSource.All ? damageData.StrikeDamage + damageData.CondiDamage : damageData.ActorStrikeDamage + damageData.ActorCondiDamage); case DamageType.StrikeAndConditionAndLifeLeech: return(_dmgSrc == DamageSource.All ? damageData.StrikeDamage + damageData.CondiDamage + damageData.LifeLeechDamage : damageData.ActorStrikeDamage + damageData.ActorCondiDamage + damageData.ActorLifeLeechDamage); default: throw new NotImplementedException("Not implemented damage type " + _compareType); } }