public CombatStats(Character character, Stats stats, CalculationOptionsEnhance calcOpts, BossOptions bossOpts) { _stats = stats; _character = character; _calcOpts = calcOpts; _bossOpts = bossOpts; _talents = _character.ShamanTalents; fightLength = _bossOpts.BerserkTimer; levelDifference = _bossOpts.Level - _character.Level; if (levelDifference > 3) { levelDifference = 3; } else if (levelDifference < 0) { levelDifference = 0; } whiteCritDepression = StatConversion.NPC_LEVEL_CRIT_MOD[levelDifference]; // 0.03f + 0.006f * levelDifference; yellowCritDepression = StatConversion.NPC_LEVEL_CRIT_MOD[levelDifference]; // 0.006f * levelDifference; UpdateCalcs(true); SetManaRegen(); _rotation = new Priorities(this, _calcOpts, _bossOpts, _character, _stats, _talents); _rotation.CalculateAbilities(); UpdateCalcs(false); // second pass to revise calcs based on new ability cooldowns }
public CombatStats(Character character, Stats stats, CalculationOptionsEnhance calcOpts) { _stats = stats; _character = character; _calcOpts = calcOpts; _talents = _character.ShamanTalents; fightLength = _calcOpts.FightLength * 60f; levelDifference = _calcOpts.TargetLevel - _character.Level; if (levelDifference > 3) { levelDifference = 3; } if (levelDifference < 0) { levelDifference = 0; } whiteCritDepression = 0.03f + 0.006f * levelDifference; yellowCritDepression = 0.006f * levelDifference; SetManaRegen(); UpdateCalcs(true); _rotation = new Priorities(this, _calcOpts, _character, _stats, _talents); _rotation.CalculateAbilities(); UpdateCalcs(false); // second pass to revise calcs based on new ability cooldowns }