public Update ( |
||
playerDamageDealt | ||
entityInformation | ||
skills | Database | |
buffs | PlayerAbnormals | |
timedEncounter | bool | |
Résultat | void |
public void Repaint(PlayerInfo playerInfo, PlayerAbnormals buffs, long totalDamage, long firstHit, long lastHit, Entity currentBoss, bool timedEncounter) { PlayerInfo = playerInfo; _buffs = buffs; _currentBoss = currentBoss; _firstHit = firstHit; _lastHit = lastHit; _timedEncounter = timedEncounter; LabelDps.Content = GlobalDps; LabelDps.ToolTip = "Individual dps: " + Dps; LabelCritRate.Content = CritRate; var intervalTimespan = TimeSpan.FromSeconds(playerInfo.Dealt.Interval(_currentBoss)); LabelCritRate.ToolTip = "Hits received: " + HitReceived + " - Damage received: " + DamageReceived + " - Fight Duration: " + intervalTimespan.ToString(@"mm\:ss"); LabelDamagePart.Content = DamagePart(totalDamage); LabelDamagePart.ToolTip = "Damage done: " + Damage; var skills = Skills(_timedEncounter); var allskills = AllSkills(_timedEncounter); _windowSkill?.Update(skills, allskills, playerInfo, _buffs, _currentBoss, _timedEncounter, firstHit, lastHit); DpsIndicator.Width = 265 * PlayerInfo.Dealt.DamageFraction(_currentBoss, totalDamage, _timedEncounter) / 100; }
public void Repaint(PlayerDamageDealt playerDamageDealt, PlayerHealDealt playerHealDealt, EntityInformation entityInformation, Database.Structures.Skills skills, PlayerAbnormals buffs, bool timedEncounter) { PlayerHealDealt = playerHealDealt; EntityInformation = entityInformation; PlayerDamageDealt = playerDamageDealt; _buffs = buffs; _timedEncounter = timedEncounter; Skills = skills; LabelDps.Content = GlobalDps; LabelDps.ToolTip = $"{LP.Individual_dps}: {Dps}"; LabelCritRate.Content = PlayerDamageDealt.Source.IsHealer && BasicTeraData.Instance.WindowData.ShowHealCrit ? CritRateHeal : BasicTeraData.Instance.WindowData.ShowCritDamageRate ? CritDamageRate : CritRate; var intervalTimespan = TimeSpan.FromSeconds(PlayerDamageDealt.Interval / TimeSpan.TicksPerSecond); LabelCritRate.ToolTip = $"{LP.Fight_Duration}: {intervalTimespan.ToString(@"mm\:ss")}"; LabelCritRate.Foreground = PlayerDamageDealt.Source.IsHealer && BasicTeraData.Instance.WindowData.ShowHealCrit ? Brushes.LawnGreen : BasicTeraData.Instance.WindowData.ShowCritDamageRate ? Brushes.Orange : Brushes.LightCoral; LabelDamagePart.Content = DamagePart; LabelDamagePart.ToolTip = $"{LP.Damage_done}: {Damage}"; _windowSkill?.Update(PlayerDamageDealt, EntityInformation, Skills, _buffs, _timedEncounter); Spacer.Width = 0; GridStats.Measure(new Size(double.PositiveInfinity, double.PositiveInfinity)); var SGrid = ((MainWindow)((FrameworkElement)((FrameworkElement)((FrameworkElement)Parent).Parent).Parent).Parent).SGrid; var EGrid = ((MainWindow)((FrameworkElement)((FrameworkElement)((FrameworkElement)Parent).Parent).Parent).Parent).EGrid; SGrid.Measure(new Size(double.PositiveInfinity, double.PositiveInfinity)); var mainWidth = SGrid.DesiredSize.Width; Spacer.Width = mainWidth > GridStats.DesiredSize.Width ? mainWidth - GridStats.DesiredSize.Width : 0; var an = new DoubleAnimation(DpsIndicator.ActualWidth, EntityInformation.TotalDamage == 0 ? mainWidth : mainWidth * PlayerDamageDealt.Amount / EntityInformation.TotalDamage, TimeSpan.FromMilliseconds(400)) { EasingFunction = new QuadraticEase() }; DpsIndicator.BeginAnimation(WidthProperty, an); EGrid.MaxWidth = Math.Max(mainWidth, GridStats.DesiredSize.Width); }
private void ShowSkills(object sender, MouseButtonEventArgs e) { e.Handled = true; var skills = Skills(_timedEncounter); var allSkills = AllSkills(_timedEncounter); if (_windowSkill == null) { _windowSkill = new Skills(skills, allSkills, this, PlayerInfo, _buffs, _currentBoss, _timedEncounter, _firstHit, _lastHit) { Title = PlayerName, CloseMeter = { Content = PlayerInfo.Class + " " + PlayerName + ": CLOSE" } }; _windowSkill.Show(); return; } _windowSkill.Update(skills, allSkills, PlayerInfo, _buffs, _currentBoss, _timedEncounter, _firstHit, _lastHit); _windowSkill.Show(); }
public void Repaint(PlayerInfo playerInfo, long totalDamage, long firstHit, long lastHit) { PlayerInfo = playerInfo; LabelDps.Content = Dps; LabelCritRate.Content = CritRate; LabelDamagePart.Content = DamagePart(totalDamage); LabelDamageReceived.Content = DamageReceived; LabelHitsReceived.Content = HitReceived; var intervalTimespan = TimeSpan.FromSeconds(playerInfo.Dealt.Interval); Timer.Content = intervalTimespan.ToString(@"mm\:ss"); var skills = Skills(); var allskills = AllSkills(); _windowSkill?.Update(skills, allskills, playerInfo); LabelDamage.Content = Damage; DpsIndicator.Width = 450 * PlayerInfo.Dealt.DamageFraction(totalDamage) / 100; }
private void ShowSkills(object sender, MouseButtonEventArgs e) { e.Handled = true; var skills = Skills(); var allSkills = AllSkills(); if (_windowSkill == null) { _windowSkill = new Skills(skills, allSkills, this, PlayerInfo) { Title = PlayerName, CloseMeter = { Content = PlayerInfo.Class + " " + PlayerName + ": CLOSE" } }; _windowSkill.Show(); return; } _windowSkill.Update(skills, allSkills, PlayerInfo); _windowSkill.Show(); }