예제 #1
0
        public override void Update(int?displayIndex = null)
        {
            PercentOfTotal = Settings.Default.IncludeTopLevelNPCRows
                ? FightCharacter.PercentOfFightsTotalDamageDone
                : FightCharacter.PercentOfFightsTotalPlayerDamageDonePlusPets;
            PercentOfMax = Settings.Default.IncludeTopLevelNPCRows
                ? FightCharacter.PercentOfFightsMaxDamageDonePlusPets
                : FightCharacter.PercentOfFightsMaxPlayerDamageDonePlusPets;
            PercentOfMastersOrOwnTotalPlusPets = FightCharacter.PercentOfMastersOrOwnTotalDamageDonePlusPets;
            RightText = $"{FightCharacter.TotalDamageDone.Format()} ({FightCharacter.TotalDamageDonePM.Format()}, {PercentOfMastersOrOwnTotalPlusPets.FormatPercent()}, {DisplayedPercent.FormatPercent()})";

            base.Update(displayIndex);
        }
예제 #2
0
        public override void Update(int?displayIndex = null)
        {
            PercentOfTotal = Settings.Default.IncludeTopLevelNPCRows
                ? FightCharacter.PercentPlusPetsOfFightsTotalDamageDone
                : FightCharacter.PercentPlusPetsOfFightsTotalPlayerDamageDonePlusPets;
            PercentOfMax = Settings.Default.IncludeTopLevelNPCRows
                ? FightCharacter.PercentPlusPetsOfFightsMaxDamageDonePlusPets
                : FightCharacter.PercentPlusPetsOfFightsMaxPlayerDamageDonePlusPets;
            RightText = $"{FightCharacter.TotalDamageDonePlusPets.Format()} ({FightCharacter.TotalDamageDonePMPlusPets.Format()}, {DisplayedPercent.FormatPercent()})";

            if (FightCharacter.IsFightPetMaster)
            {
                int detailRowDisplayIndex = 1;
                foreach (var fightCharacter in new[] { FightCharacter }.Concat(FightCharacter.FightPets)
                         .OrderByDescending(c => c.TotalDamageDone)
                         .ThenBy(c => c.UncoloredName))
                {
                    if (!_detailRowMap.TryGetValue(fightCharacter, out DetailRowBase detailRow))
                    {
                        _detailRowMap.Add(fightCharacter, detailRow = new DamageDoneDetailRow(FightViewModel, fightCharacter));
                        DetailRows.Add(detailRow);
                    }
                    detailRow.Update(detailRowDisplayIndex++);
                }
            }

            CleanUpOldPetDetailRowsIfNecessary(FightCharacter);

            base.Update(displayIndex);
        }
예제 #3
0
        public override void Update(int?displayIndex = null)
        {
            PercentOfTotal = CastInfo.PercentOfSourcesCastSuccesses;
            PercentOfMax   = CastInfo.PercentOfSourcesMaxCastSuccesses;
            PercentWidth   = PercentOfMax ?? 0;
            RightText      = $"{CastInfo.CastSuccesses:N0} ({CastInfo.CastSuccessesPM.Format()}, {CastInfo.CastSuccessChance.FormatPercent()}, {DisplayedPercent.FormatPercent()})";

            base.Update(displayIndex);
        }
예제 #4
0
        public override void Update(int?displayIndex = null)
        {
            DamageTakenInfo = DamageTakenInfo ?? Target.DamageTakenInfosBySource.GetValueOrFallback(Source);
            PercentOfTotal  = DamageTakenInfo?.PercentOfTargetsTotalDamageTaken;
            PercentOfMax    = DamageTakenInfo?.PercentOfTargetsMaxDamagePlusPetsTaken;
            PercentOfMastersOrOwnTotalPlusPets = DamageTakenInfo?.PercentOfMastersOrOwnTotalDamagePlusPets;
            RightText = $"{DamageTakenInfo?.TotalDamage.Format() ?? EmDash} ({PercentOfMastersOrOwnTotalPlusPets.FormatPercent() ?? EmDashPercent}, {DisplayedPercent.FormatPercent()})";

            base.Update(displayIndex);
        }
예제 #5
0
        public override void Update(int?displayIndex = null)
        {
            HealingDoneInfo = HealingDoneInfo ?? Source.HealingDoneInfosByTarget.GetValueOrFallback(Target);
            PercentOfTotal  = HealingDoneInfo?.PercentOfMastersOrOwnPotentialHealingDoneDonePlusPets;
            PercentOfMax    = HealingDoneInfo?.PercentOfMastersOrOwnMaxPotentialHealingDonePlusPets;
            PercentOfMastersOrOwnTotalPlusPets = HealingDoneInfo?.PercentOfMastersOrOwnPotentialHealingPlusPets;
            RightText = $"{HealingDoneInfo?.PotentialHealing.Format() ?? EmDash} ({PercentOfMastersOrOwnTotalPlusPets.FormatPercent() ?? EmDashPercent}, {DisplayedPercent.FormatPercent()})";

            base.Update(displayIndex);
        }
예제 #6
0
        public override void Update(int?displayIndex = null)
        {
            PercentOfTotal = Settings.Default.IncludeTopLevelNPCRows
                ? FightCharacter.PercentOfFightsTotalDamageTaken
                : FightCharacter.PercentOfFightsTotalPlayerOrPetDamageTaken;
            PercentOfMax = Settings.Default.IncludeTopLevelNPCRows
                ? FightCharacter.PercentOfFightsMaxDamageTaken
                : FightCharacter.PercentOfFightsMaxPlayerOrPetDamageTaken;
            RightText = $"{FightCharacter.TotalDamageTaken.Format()} ({FightCharacter.TotalDamageTakenPM.Format()}, {DisplayedPercent.FormatPercent()})";

            base.Update(displayIndex);
        }