public double GetPlayerAttackDamageByLevel(int iLevel) { double num = (double)iLevel * Math.Pow(1.05, (double)iLevel); double num3 = (num + (scene.Bonuses[BonusType.PlayerDamageDPS] * scene.totalDPS)) * (1.0 + scene.Bonuses[BonusType.PlayerDamage]) * (1.0 + scene.GetBonusArtifactDamage()) * (1.0 + scene.Bonuses[BonusType.AllDamage]); double isCrit = scene.random.NextDouble(); //Console.WriteLine(scene.GetBonusArtifactDamage()); if (this.critChance + scene.Bonuses[BonusType.CriticalChance] > isCrit) { num3 = num3 * ((1 + scene.Bonuses[BonusType.CriticalDamage]) * this.critMagnitude); Console.WriteLine((this.critChance + scene.Bonuses[BonusType.CriticalChance]) + " " + (isCrit)); } if (scene.activeSkillList[4].activated) { num3 = num3 * (1 + (scene.activeSkillList[4].magnitude / 100)); } //Console.WriteLine((this.critChance + critChance) + " " + (isCrit) + " " + num3); return(num3); }
public double GetDPSByLevel(int iLevel) { double num2; if (this.IsEvolved()) { num2 = (double)Math.Pow((double)0.904f, (double)(iLevel - 1001)) * (double)Math.Pow((double)(1f - 0.019f * 15f), (double)(this.heroID + 33)); } else { num2 = (double)Math.Pow((double)0.904f, (double)(iLevel - 1)) * (double)Math.Pow((double)(1f - 0.019f * Math.Min((double)this.heroID, 15f)), (double)this.heroID); } double num3; if (this.IsEvolved()) { num3 = num2 * 0.1f * this.GetBaseUpgradeCostByLevel(iLevel - 1) * (double)(Math.Pow((double)1.075f, (double)(iLevel - (1001 - 1))) - 1.0) / (1.075f - 1f); } else { num3 = num2 * 0.1f * this.GetBaseUpgradeCostByLevel(iLevel - 1) * (double)(Math.Pow((double)1.075f, (double)iLevel) - 1.0) / (1.075f - 1f); } return(num3 * (1.0f + scene.GetHeroAdditionlDamage(this.heroID)) * (1.0f + scene.Bonuses[BonusType.AllDamage]) * (1.0f + scene.GetBonusArtifactDamage())); }