Compare commits
No commits in common. "405032a6e342259d4e5b200dc38f9a01068d4f88" and "a126d6415b802c9ea78045140a10a86788a2d945" have entirely different histories.
405032a6e3
...
a126d6415b
3 changed files with 16 additions and 23 deletions
|
@ -12,14 +12,6 @@ namespace ZenithInfo.Models
|
|||
Capital,
|
||||
}
|
||||
|
||||
public enum Rarities
|
||||
{
|
||||
Common,
|
||||
Rare,
|
||||
Scare,
|
||||
Unique,
|
||||
}
|
||||
|
||||
public enum DamageTypes
|
||||
{
|
||||
Shield,
|
||||
|
|
|
@ -14,33 +14,33 @@ namespace ZenithInfo.Models
|
|||
public int Icon { get; set; }
|
||||
public double ParticleSize { get; set; }
|
||||
public double BaseCost { get; set; }
|
||||
public Enums.Rarities Rarity { get; set; }
|
||||
public string? Rarity { get; set; }
|
||||
|
||||
public DamageStats Dps(int range = 0, int barrelCount = 1)
|
||||
{
|
||||
if (range > Range)
|
||||
if (range > this.Range)
|
||||
{
|
||||
return new DamageStats(0, 0, 0, 0, 0, 0);
|
||||
}
|
||||
|
||||
double baseAlpha = Damage * barrelCount;
|
||||
double baseAlpha = this.Damage * barrelCount;
|
||||
double shieldAlpha = 0;
|
||||
double hullAlpha = 0;
|
||||
|
||||
double intervalTime = Interval * (barrelCount - 1);
|
||||
double totalDelay = Reload + intervalTime;
|
||||
double intervalTime = this.Interval * (barrelCount - 1);
|
||||
double totalDelay = this.Reload + intervalTime;
|
||||
double baseDps = baseAlpha / (totalDelay != 0 ? totalDelay : 1); // prevent divide by zero
|
||||
double shieldDps = 0;
|
||||
double hullDps = 0;
|
||||
|
||||
if (DamageType == Enums.DamageTypes.Shield)
|
||||
if (this.DamageType == Enums.DamageTypes.Shield)
|
||||
{
|
||||
shieldAlpha = baseAlpha;
|
||||
hullAlpha = baseAlpha * 0.5;
|
||||
shieldDps = baseDps;
|
||||
hullDps = baseDps * 0.5;
|
||||
}
|
||||
else if (DamageType == Enums.DamageTypes.Hull)
|
||||
else if (this.DamageType == Enums.DamageTypes.Hull)
|
||||
{
|
||||
shieldAlpha = baseAlpha * 0.5;
|
||||
hullAlpha = baseAlpha;
|
||||
|
|
|
@ -9,43 +9,44 @@ namespace ZenithInfo.Models
|
|||
public double Reload { get; set; }
|
||||
public double Range { get; set; }
|
||||
public double OptimalRange { get; set; }
|
||||
public double AccuracyFalloffRange { get; set; }
|
||||
public double FalloffRange { get; set; }
|
||||
public double Accuracy { get; set; }
|
||||
public Enums.ModuleSizes Size { get; set; }
|
||||
public Enums.TurretTypes Type { get; set; }
|
||||
public int Icon { get; set; }
|
||||
public double BeamSize { get; set; }
|
||||
public double BaseCost { get; set; }
|
||||
public Enums.Rarities Rarity { get; set; }
|
||||
public string? Rarity { get; set; }
|
||||
|
||||
public Enums.DamageTypes DamageType()
|
||||
{
|
||||
return Enums.TurretDamageTypes[Type];
|
||||
return Enums.TurretDamageTypes[this.Type];
|
||||
}
|
||||
|
||||
public DamageStats Dps(int range = 0)
|
||||
{
|
||||
if (range > Range)
|
||||
if (range > this.Range)
|
||||
{
|
||||
return new DamageStats(0, 0, 0, 0, 0, 0);
|
||||
}
|
||||
|
||||
double baseAlpha = Damage;
|
||||
double baseAlpha = this.Damage;
|
||||
double shieldAlpha = 0;
|
||||
double hullAlpha = 0;
|
||||
|
||||
double baseDps = baseAlpha / (Reload != 0 ? Reload : 1); // prevent divide by zero
|
||||
double baseDps = baseAlpha / (this.Reload != 0 ? this.Reload : 1); // prevent divide by zero
|
||||
double shieldDps = 0;
|
||||
double hullDps = 0;
|
||||
|
||||
if (DamageType() == Enums.DamageTypes.Shield)
|
||||
// all percentages are placeholders until david tells me what they're actually supposed to be
|
||||
if (this.DamageType() == Enums.DamageTypes.Shield)
|
||||
{
|
||||
shieldAlpha = baseAlpha;
|
||||
hullAlpha = baseAlpha * 0.5;
|
||||
shieldDps = baseDps;
|
||||
hullDps = baseDps * 0.5;
|
||||
}
|
||||
else if (DamageType() == Enums.DamageTypes.Hull)
|
||||
else if (this.DamageType() == Enums.DamageTypes.Hull)
|
||||
{
|
||||
shieldAlpha = baseAlpha * 0.5;
|
||||
hullAlpha = baseAlpha;
|
||||
|
|
Loading…
Add table
Reference in a new issue