Example #1
0
        public static void solve(CharacterCalculationsShadowPriest calculatedStats, CalculationOptionsShadowPriest calcOpts, BossOptions bossOpts)
        {
            Stats stats = calculatedStats.BasicStats;
            Character character = calculatedStats.LocalCharacter;
            PriestTalents talents = character.PriestTalents;

            Solver e;
            Rotation rot;

            float FightDuration = bossOpts.BerserkTimer;

            // WITHOUT PROCS
            e = new Solver(stats, new Stats{}, talents, calcOpts);
            rot = e.getPriorityRotation();

            calculatedStats.DpsPoints = rot.DPS;
            calculatedStats.SurvivalPoints = stats.Stamina / FightDuration; //TODO: meaningful surv points

            calculatedStats.CombatStats = stats.Clone();

            calculatedStats.DevouringPlauge = rot.DP;
            calculatedStats.MindBlast = rot.MB;
            calculatedStats.MindFlay = rot.MF;
            calculatedStats.MindSpike = rot.Spike;
            //calculatedStats.PowerWordShield = rot.shield;
            calculatedStats.ShadowFiend = rot.Fiend;
            calculatedStats.ShadowWordDeath = rot.SWD;
            calculatedStats.ShadowWordPain = rot.SWP;
            calculatedStats.VampiricTouch = rot.VT;

            calculatedStats.Rotation = rot.ToString();
            calculatedStats.RotationDetails = rot.ToDetailedString();

        }