Пример #1
0
        public void AbilityDK_PlagueStrike_BP_Basic()
        {
            // Needs AP passed in
            Stats FFTestStats = new StatsDK();

            FFTestStats.AttackPower = 100;

            Item i = new Item("Test", ItemQuality.Common, ItemType.Dagger, 1, "", ItemSlot.MainHand, "", false, new Stats(), new Stats(), ItemSlot.None, ItemSlot.None, ItemSlot.None, 10, 20, ItemDamageType.Physical, 2, "");

            Rawr.TankDK.CalculationOptionsTankDK c = new Rawr.TankDK.CalculationOptionsTankDK();
            //c.talents = new DeathKnightTalents();
            //Weapon w = new Weapon(i, FFTestStats, c, 0f);

            CombatState combatState = new CombatState();
            //combatState.m_Stats = FFTestStats;
            //combatState.MH = w;
            //combatState.m_Talents = c.talents;

            //AbilityDK_PlagueStrike PS = new AbilityDK_PlagueStrike(combatState);

            // Blood Plauge application.
            //AbilityDK_BloodPlague BP = new AbilityDK_BloodPlague(combatState);

            // A disease dealing [0 + AP * 0.055 * 1.15] Shadow damage every 3 sec .
            // Base damage 0
            // Bonus from attack power [AP * 0.055 * 1.15]

            // Plague Strike Checking

            /*
             * Assert.IsTrue(PS.szName == "Plague Strike", "Name");
             * Assert.AreEqual(PS.AbilityCost[(int)DKCostTypes.Blood], 0, "Blood Rune");
             * Assert.AreEqual(PS.AbilityCost[(int)DKCostTypes.Frost], 0, "Frost Rune");
             * Assert.AreEqual(PS.AbilityCost[(int)DKCostTypes.UnHoly], 1, "UnHoly Rune");
             * Assert.AreEqual(PS.AbilityCost[(int)DKCostTypes.RunicPower], -10, "RP");
             * Assert.AreEqual(Math.Floor((378 + PS.wMH.damage) / 2), PS.uBaseDamage, "BaseDamage");
             * Assert.AreEqual(Math.Floor((378 + PS.wMH.damage) / 2), PS.uBaseDamage, "Total Damage");
             * Assert.AreEqual(PS.uRange, AbilityDK_Base.MELEE_RANGE, "Range");
             * Assert.AreEqual(PS.tDamageType, ItemDamageType.Physical, "Damage Type");
             * Assert.AreEqual(PS.Cooldown, 1500u, "Cooldown");
             *
             * // Blood Plague Checking
             * Assert.IsTrue(BP.szName == "Blood Plague", "Name");
             * Assert.AreEqual(BP.AbilityCost[(int)DKCostTypes.Blood], 0, "Blood Rune");
             * Assert.AreEqual(BP.AbilityCost[(int)DKCostTypes.Frost], 0, "Frost Rune");
             * Assert.AreEqual(BP.AbilityCost[(int)DKCostTypes.UnHoly], 0, "UnHoly Rune");
             * Assert.AreEqual(BP.AbilityCost[(int)DKCostTypes.RunicPower], 0, "Runic Power");
             * Assert.AreEqual(BP.uBaseDamage, 0u, "Damage");
             * Assert.AreEqual(BP.tDamageType, ItemDamageType.Shadow, "Damage Type");
             * // Not sure if this actually needs a Cooldown.
             * //            Assert.AreEqual(BP.Cooldown, 0u, "Cooldown");
             * Assert.AreEqual(BP.uDuration, 15000u, "Duration");
             * Assert.AreEqual(BP.uTickRate, 3000u, "TickRate");
             * Assert.AreEqual((int)(FFTestStats.AttackPower * 0.055f * 1.15f), BP.GetTickDamage(), 0.1, "GetTickDamage");
             * Assert.AreEqual((int)(BP.GetTickDamage() * (15 / 3)), BP.GetTotalDamage(), 0.1, "GetTotalDamage");
             * */
        }
Пример #2
0
        public void AbilityDK_PlagueStrike_BP_Basic()
        {
            // Needs AP passed in 
            Stats FFTestStats = new StatsDK();
            FFTestStats.AttackPower = 100;
            
            Item i = new Item("Test", ItemQuality.Common, ItemType.Dagger, 1, "", ItemSlot.MainHand, "", false, new Stats(), new Stats(), ItemSlot.None, ItemSlot.None, ItemSlot.None, 10, 20, ItemDamageType.Physical, 2, "");
            Rawr.TankDK.CalculationOptionsTankDK c = new Rawr.TankDK.CalculationOptionsTankDK();
            //c.talents = new DeathKnightTalents();
            //Weapon w = new Weapon(i, FFTestStats, c, 0f);

            CombatState combatState = new CombatState();
            //combatState.m_Stats = FFTestStats;
            //combatState.MH = w;
            //combatState.m_Talents = c.talents;
            
            //AbilityDK_PlagueStrike PS = new AbilityDK_PlagueStrike(combatState);

            // Blood Plauge application.
            //AbilityDK_BloodPlague BP = new AbilityDK_BloodPlague(combatState);

            // A disease dealing [0 + AP * 0.055 * 1.15] Shadow damage every 3 sec . 
            // Base damage 0
            // Bonus from attack power [AP * 0.055 * 1.15]

            // Plague Strike Checking
            /*
            Assert.IsTrue(PS.szName == "Plague Strike", "Name");
            Assert.AreEqual(PS.AbilityCost[(int)DKCostTypes.Blood], 0, "Blood Rune");
            Assert.AreEqual(PS.AbilityCost[(int)DKCostTypes.Frost], 0, "Frost Rune");
            Assert.AreEqual(PS.AbilityCost[(int)DKCostTypes.UnHoly], 1, "UnHoly Rune");
            Assert.AreEqual(PS.AbilityCost[(int)DKCostTypes.RunicPower], -10, "RP");
            Assert.AreEqual(Math.Floor((378 + PS.wMH.damage) / 2), PS.uBaseDamage, "BaseDamage");
            Assert.AreEqual(Math.Floor((378 + PS.wMH.damage) / 2), PS.uBaseDamage, "Total Damage");
            Assert.AreEqual(PS.uRange, AbilityDK_Base.MELEE_RANGE, "Range");
            Assert.AreEqual(PS.tDamageType, ItemDamageType.Physical, "Damage Type");
            Assert.AreEqual(PS.Cooldown, 1500u, "Cooldown");

            // Blood Plague Checking
            Assert.IsTrue(BP.szName == "Blood Plague", "Name");
            Assert.AreEqual(BP.AbilityCost[(int)DKCostTypes.Blood], 0, "Blood Rune");
            Assert.AreEqual(BP.AbilityCost[(int)DKCostTypes.Frost], 0, "Frost Rune");
            Assert.AreEqual(BP.AbilityCost[(int)DKCostTypes.UnHoly], 0, "UnHoly Rune");
            Assert.AreEqual(BP.AbilityCost[(int)DKCostTypes.RunicPower], 0, "Runic Power");
            Assert.AreEqual(BP.uBaseDamage, 0u, "Damage");
            Assert.AreEqual(BP.tDamageType, ItemDamageType.Shadow, "Damage Type");
            // Not sure if this actually needs a Cooldown.
//            Assert.AreEqual(BP.Cooldown, 0u, "Cooldown");
            Assert.AreEqual(BP.uDuration, 15000u, "Duration");
            Assert.AreEqual(BP.uTickRate, 3000u, "TickRate");
            Assert.AreEqual((int)(FFTestStats.AttackPower * 0.055f * 1.15f), BP.GetTickDamage(), 0.1, "GetTickDamage");
            Assert.AreEqual((int)(BP.GetTickDamage() * (15 / 3)), BP.GetTotalDamage(), 0.1, "GetTotalDamage");
             * */
        }