private void ShowWeaponUI() { GUILayout.BeginHorizontal(); GUILayout.Label("Damage Output: "); GUILayout.Label(DamageOutput.ToString()); GUILayout.EndHorizontal(); }
private (double Heal, DamageOutput Damage) CalculateNumericEffects(Xml.Castable castable, Xml.ModifierEffect effect, Creature source) { double heal = 0; var dmg = new DamageOutput(); if (effect == null) { return(heal, dmg); } if (effect.Heal != null) { heal = NumberCruncher.CalculateHeal(castable, effect, Target, source, Name); } if (effect.Damage != null) { dmg = NumberCruncher.CalculateDamage(castable, effect, Target, source, Name); } return(heal, dmg); }
private static AmmoAnalysisViewModel CreateAmmoAnalysisViewModel(DamageOutput.WeaponEntry x, DamageOutput.WeaponEntry.AmmoEntry a) { const int METER_PER_KM = 1000; return new AmmoAnalysisViewModel { WeaponCount = x.WeaponCount, Alpha = a.Damage.AlphaDamage, Dps = a.Damage.DamagePerSecond, Weapon = x.WeaponType, Falloff = a.FalloffInKm, Optimal = x.WeaponSystem == WeaponSystem.Missile || x.WeaponSystem == WeaponSystem.Bomb ? a.VelocityInMeterPerSecond * TimeSpan.FromMilliseconds(a.FlightTimeInMilliseconds) .TotalSeconds / METER_PER_KM : a.OptimalInKm, Tracking = a.TrackingInRadPerSecond, AmmoType = a.Ammunition }; }
public SimpleStatusEffect(double heal, DamageOutput damage) { Heal = heal; Damage = damage; }