private PlayerChartDataDto(ParsedEvtcLog log, PhaseData phase, Player p) : base(log, phase, p, true)
 {
     Damage = new PlayerDamageChartDto <int>()
     {
         Total   = p.Get1SDamageList(log, phase.Start, phase.End, null, ParserHelper.DamageType.All),
         Targets = new List <IReadOnlyList <int> >()
     };
     PowerDamage = new PlayerDamageChartDto <int>()
     {
         Total   = p.Get1SDamageList(log, phase.Start, phase.End, null, ParserHelper.DamageType.Power),
         Targets = new List <IReadOnlyList <int> >()
     };
     ConditionDamage = new PlayerDamageChartDto <int>()
     {
         Total   = p.Get1SDamageList(log, phase.Start, phase.End, null, ParserHelper.DamageType.Condition),
         Targets = new List <IReadOnlyList <int> >()
     };
     BreakbarDamage = new PlayerDamageChartDto <double>()
     {
         Total   = p.Get1SBreakbarDamageList(log, phase.Start, phase.End, null),
         Targets = new List <IReadOnlyList <double> >()
     };
     foreach (NPC target in phase.Targets)
     {
         Damage.Targets.Add(p.Get1SDamageList(log, phase.Start, phase.End, target, ParserHelper.DamageType.All));
         PowerDamage.Targets.Add(p.Get1SDamageList(log, phase.Start, phase.End, target, ParserHelper.DamageType.Power));
         ConditionDamage.Targets.Add(p.Get1SDamageList(log, phase.Start, phase.End, target, ParserHelper.DamageType.Condition));
         BreakbarDamage.Targets.Add(p.Get1SBreakbarDamageList(log, phase.Start, phase.End, target));
     }
 }
Exemple #2
0
        //public PlayerDamageChartDto<int> HybridHealing { get; }

        private EXTHealingStatsPlayerChartDto(ParsedEvtcLog log, PhaseData phase, AbstractSingleActor p)
        {
            Healing = new PlayerDamageChartDto <int>()
            {
                Total   = p.EXTHealing.Get1SHealingList(log, phase.Start, phase.End, null, HealingStatsExtensionHandler.EXTHealingType.All),
                Targets = new List <IReadOnlyList <int> >()
            };
            //
            var hybridHealingPower     = new List <int>(p.EXTHealing.Get1SHealingList(log, phase.Start, phase.End, null, HealingStatsExtensionHandler.EXTHealingType.HealingPower));
            IReadOnlyList <int> hybrid = p.EXTHealing.Get1SHealingList(log, phase.Start, phase.End, null, HealingStatsExtensionHandler.EXTHealingType.Hybrid);

            for (int i = 0; i < hybrid.Count; i++)
            {
                hybridHealingPower[i] += hybrid[i];
            }
            HealingPowerHealing = new PlayerDamageChartDto <int>()
            {
                Total   = hybridHealingPower,
                Targets = new List <IReadOnlyList <int> >()
            };
            //
            ConversionBasedHealing = new PlayerDamageChartDto <int>()
            {
                Total   = p.EXTHealing.Get1SHealingList(log, phase.Start, phase.End, null, HealingStatsExtensionHandler.EXTHealingType.ConversionBased),
                Targets = new List <IReadOnlyList <int> >()
            };
            //

            /*HybridHealing = new PlayerDamageChartDto<int>()
             * {
             *  Total = p.EXTHealing.Get1SHealingList(log, phase.Start, phase.End, null, HealingStatsExtensionHandler.EXTHealingType.Hybrid),
             *  Targets = new List<IReadOnlyList<int>>()
             * };*/
            //
            foreach (AbstractSingleActor target in log.Friendlies)
            {
                Healing.Targets.Add(p.EXTHealing.Get1SHealingList(log, phase.Start, phase.End, target, HealingStatsExtensionHandler.EXTHealingType.All));
                //
                hybridHealingPower = new List <int>(p.EXTHealing.Get1SHealingList(log, phase.Start, phase.End, target, HealingStatsExtensionHandler.EXTHealingType.HealingPower));
                hybrid             = p.EXTHealing.Get1SHealingList(log, phase.Start, phase.End, target, HealingStatsExtensionHandler.EXTHealingType.Hybrid);
                for (int i = 0; i < hybrid.Count; i++)
                {
                    hybridHealingPower[i] += hybrid[i];
                }
                HealingPowerHealing.Targets.Add(hybridHealingPower);
                //
                ConversionBasedHealing.Targets.Add(p.EXTHealing.Get1SHealingList(log, phase.Start, phase.End, target, HealingStatsExtensionHandler.EXTHealingType.ConversionBased));
                //
                //HybridHealing.Targets.Add(p.EXTHealing.Get1SHealingList(log, phase.Start, phase.End, target, HealingStatsExtensionHandler.EXTHealingType.Hybrid));
            }
        }