//public override void OnCombat(WoW.Classes.ObjectManager.WowUnit unit) //{ //} private void castNextSpellbySinglePriority(WowUnit TARGET) { var MyRage = ObjectManager.LocalPlayer.GetPower(WoW.Classes.ObjectManager.WowUnit.WowPowerType.Rage); var MyEnergy = ObjectManager.LocalPlayer.GetPower(Anthrax.WoW.Classes.ObjectManager.WowUnit.WowPowerType.Energy); if (TARGET.Health >= 1 && ME.InCombat) { /////////////////////////////////////////////////////////////////////////////TANK SPEC//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// if (ME.HasAuraById((int)Auras.TankCheck)) { //Healing & Survival { if (ME.HealthPercent <= 60 && AI.Controllers.Spell.CanCast((int)Spells.FrenzyRegen)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.FrenzyRegen); return; } if (MyRage >= 60 && AI.Controllers.Spell.CanCast((int)Spells.SavageD) && !ME.HasAuraById((int)Auras.SavageD)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.SavageD); return; } if (ME.HasAuraById((int)Auras.DoC)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.HealingTouch); return; } if (TARGET.Position.Distance3DFromPlayer < 7) { //Mangle!!! if (AI.Controllers.Spell.CanCast((int)Spells.MangleBear)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.MangleBear); return; } //Maul With Procs if (AI.Controllers.Spell.CanCast((int)Spells.Maul)) { if (ObjectManager.LocalPlayer.GetPower(Anthrax.WoW.Classes.ObjectManager.WowUnit.WowPowerType.Rage) >= 90 || ME.HasAuraById((int)Auras.TAC) && ME.HasAuraById((int)Auras.SavageD)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Maul); return; } } //Thrash Debuff if (AI.Controllers.Spell.CanCast((int)Spells.Thrash)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Thrash); return; } //FaerieFire if (!TARGET.HasAuraById((int)Auras.FF) && AI.Controllers.Spell.CanCast((int)Spells.FF) || AI.Controllers.Spell.CanCast((int)Spells.FF)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.FF); return; } //Lacerate if (AI.Controllers.Spell.CanCast((int)Spells.Lacerate)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Lacerate); return; } } } } /////////////////////////////////////////////////////////////////////////////////Boomkin/////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// if (ME.HasAuraById((int)Auras.BoomkinCheck)) { //Healing & Survival if (TARGET.Position.Distance3DFromPlayer <= 40) { // Rejuvenation if (ME.HealthPercent <= 50 && !ME.HasAuraById((int)Auras.Rejuvenation) && AI.Controllers.Spell.CanCast((int)Spells.Rejuvenation)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Rejuvenation); return; } if (ME.GetPowerPercent(WoW.Classes.ObjectManager.WowUnit.WowPowerType.Mana) <= 80 && AI.Controllers.Spell.CanCast((int)Spells.Innervate)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Innervate); return; } // Moonfire if ((!TARGET.HasAuraById((int)Auras.Moonfire) || TARGET.Auras.Where(x => x.SpellId == (int)Auras.Moonfire && x.TimeLeft <= 6000).Any()) && AI.Controllers.Spell.CanCast((int)Spells.Moonfire)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Moonfire); return; } // Sunfire if ((!TARGET.HasAuraById((int)Auras.Sunfire) || TARGET.Auras.Where(x => x.SpellId == (int)Auras.Sunfire && x.TimeLeft <= 6000).Any()) && AI.Controllers.Spell.CanCast((int)Spells.Sunfire)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Sunfire); return; } // StarFall if (AI.Controllers.Spell.CanCast((int)Spells.StarFall)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.StarFall); return; } // Starsurge if (AI.Controllers.Spell.CanCast((int)Spells.Starsurge)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Starsurge); return; } if (ME.HasAuraById((int)Auras.AstralInsight) && AI.Controllers.Spell.CanCast((int)Spells.AstralC)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.AstralC); return; } // Solar if (ME.HasAuraById((int)Auras.EclipseSolar)) { if ((!TARGET.HasAuraById((int)Auras.Sunfire) || TARGET.Auras.Where(x => x.SpellId == (int)Auras.Sunfire && x.TimeLeft <= 6000).Any()) && AI.Controllers.Spell.CanCast((int)Spells.Sunfire)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Sunfire); return; } if ((!TARGET.HasAuraById((int)Auras.Moonfire) || TARGET.Auras.Where(x => x.SpellId == (int)Auras.Moonfire && x.TimeLeft <= 6000).Any()) && AI.Controllers.Spell.CanCast((int)Spells.Moonfire)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Moonfire); return; } if (AI.Controllers.Spell.CanCast((int)Spells.Wrath)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Wrath); return; } } // Lunar if (ME.HasAuraById((int)Auras.EclipseLunar)) { if ((!TARGET.HasAuraById((int)Auras.Moonfire) || TARGET.Auras.Where(x => x.SpellId == (int)Auras.Moonfire && x.TimeLeft <= 6000).Any()) && AI.Controllers.Spell.CanCast((int)Spells.Moonfire)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Moonfire); return; } if ((!TARGET.HasAuraById((int)Auras.Sunfire) || TARGET.Auras.Where(x => x.SpellId == (int)Auras.Sunfire && x.TimeLeft <= 6000).Any()) && AI.Controllers.Spell.CanCast((int)Spells.Sunfire)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Sunfire); return; } if (AI.Controllers.Spell.CanCast((int)Spells.StarFire)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.StarFire); return; } } // Wrath if (AI.Controllers.Spell.CanCast((int)Spells.Wrath) && ME.HasAuraById((int)Auras.EMSolar)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Wrath); return; } // Starfire if (AI.Controllers.Spell.CanCast((int)Spells.StarFire) && ME.HasAuraById((int)Auras.EMLunar)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.StarFire); return; } if (AI.Controllers.Spell.CanCast((int)Spells.StarFire) && !ME.HasAuraById((int)Auras.EMLunar) && !ME.HasAuraById((int)Auras.EMLunar)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.StarFire); return; } } } ////////////////////////////////////////////////////////////////Feral///////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// if (ME.HasAuraById((int)Auras.FeralCheck)) { // if (!ME.InCombat && ME.UnitsAttackingMeOrPet.Count == 0 && AI.Controllers.Spell.CanCast((int)Spells.Prowl) && !ME.HasAuraById((int)Auras.Prowl)) // { // Logger.WriteLine("Enter stealth ..."); // WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Prowl); // } if (ME.HasAuraById((int)Auras.GlyphofS) && !ME.HasAuraById((int)Auras.SavageRoar) && AI.Controllers.Spell.CanCast((int)Spells.SavageRoar)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.SavageRoar); return; } if (ME.HasAuraById((int)Auras.PredSwiftness) && AI.Controllers.Spell.CanCast((int)Spells.HealingTouch)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.HealingTouch); return; } if (TARGET.Auras.Where(x => x.SpellId == (int)Auras.Rip && x.TimeLeft > 6000).Any() && AI.Controllers.Spell.CanCast((int)Spells.FeroBite) && ME.ComboPoints > 4 || TARGET.HealthPercent < 25 && ME.ComboPoints > 4 && TARGET.HasAuraById((int)Auras.Rip) && AI.Controllers.Spell.CanCast((int)Spells.FeroBite)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.FeroBite); return; } if (!TARGET.HasAuraById((int)Auras.Rip) && AI.Controllers.Spell.CanCast((int)Spells.Rip) && ME.ComboPoints > 4 || TARGET.Auras.Where(x => x.SpellId == (int)Auras.Rip && x.TimeLeft < 3000).Any() && AI.Controllers.Spell.CanCast((int)Spells.Rip) && ME.ComboPoints > 4 && AI.Controllers.Spell.CanCast((int)Spells.Rip) || ME.HasAuraById((int)Auras.DoC) && ME.Auras.Where(x => x.SpellId == (int)Auras.DoC && x.StackCount <= 2).Any() && ME.ComboPoints > 4 && AI.Controllers.Spell.CanCast((int)Spells.Rip) ) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Rip); return; } if (!TARGET.HasAuraById((int)Auras.Rake) && AI.Controllers.Spell.CanCast((int)Spells.Rake) && ME.ComboPoints <= 4 || TARGET.Auras.Where(x => x.SpellId == (int)Auras.Rake && x.TimeLeft < 4000).Any() && AI.Controllers.Spell.CanCast((int)Spells.Rake) || ME.HasAuraById((int)Auras.DoC) && ME.Auras.Where(x => x.SpellId == (int)Auras.DoC && x.StackCount >= 2).Any() && ME.ComboPoints < 5 && AI.Controllers.Spell.CanCast((int)Spells.Rake)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Rake); return; } if (!TARGET.HasAuraById((int)Auras.Thrash) && AI.Controllers.Spell.CanCast((int)Spells.ThrashFeral) && TARGET.HasAuraById((int)Auras.Rip) && TARGET.HasAuraById((int)Auras.Rake) && ME.ComboPoints > 3) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.ThrashFeral); } if (MyEnergy <= 30 && AI.Controllers.Spell.CanCast((int)Spells.TigerFury)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.TigerFury); } if (!TARGET.HasAuraById((int)Auras.FF) && AI.Controllers.Spell.CanCast((int)Spells.FF)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.FF); } if (ME.ComboPoints < 5 && AI.Controllers.Spell.CanCast((int)Spells.MangleFeral)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.MangleFeral); return; } } //////////////////////////////////////////////////////////////////////3 } ////////////////////////End Single Target Rotation/////////////////// } /////////////////////////////////////////////////////////////////////
private void castNextSpellbySinglePriority(WowUnit TARGET) { if (TARGET.Health >= 1 && ME.InCombat) { if (ME.HasAuraById((int)Auras.BloodCheck)) { // Bone Shield if ((!ME.HasAuraById((int)Auras.BoneShield) || ME.Auras.Where(x => x.SpellId == (int)Auras.BoneShield && x.StackCount <= 1).Any()) && AI.Controllers.Spell.CanCast((int)Spells.BoneShield)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.BoneShield); return; } // Rune Strike if (ME.GetPowerPercent(WoW.Classes.ObjectManager.WowUnit.WowPowerType.RunicPower) >= 89 && AI.Controllers.Spell.CanCast((int)Spells.RuneStrike)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.RuneStrike); return; } // Horn of Winter if (!ME.HasAuraById((int)Auras.HoW) && AI.Controllers.Spell.CanCast((int)Spells.HoW)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.HoW); return; } // We always want to face the target //WoW.Internals.Movements.Face(unit.Position); if (TARGET.Position.Distance3DFromPlayer > 10 && TARGET.Position.Distance3DFromPlayer < 30 && ME.GetReadyRuneCountByType(WoW.Classes.ObjectManager.WowLocalPlayer.WowRuneType.Unholy) > 1 && ME.GetReadyRuneCountByType(WoW.Classes.ObjectManager.WowLocalPlayer.WowRuneType.Frost) > 1) { if (!TARGET.HasAuraById((int)Auras.FrostFever) && AI.Controllers.Spell.CanCast((int)Spells.Outbreak) || !TARGET.HasAuraById((int)Auras.BloodPlague) && AI.Controllers.Spell.CanCast((int)Spells.Outbreak)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Outbreak); return; } } // Deseases if (ME.HasAuraById((int)Auras.CS) && TARGET.Position.Distance3DFromPlayer <= 15) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.BloodBoil); return; } if (TARGET.Position.Distance3DFromPlayer <= 15) { if ((TARGET.Auras.Where(x => x.SpellId == (int)Auras.FrostFever && x.TimeLeft < 8000).Any() || TARGET.Auras.Where(x => x.SpellId == (int)Auras.BloodPlague && x.TimeLeft < 8000).Any()) && AI.Controllers.Spell.CanCast((int)Spells.BloodBoil) || ME.GetReadyRuneCountByType(WoW.Classes.ObjectManager.WowLocalPlayer.WowRuneType.Blood) >= 2 && ME.UnitsAttackingMe.Count > 1 && TARGET.HasAuraById((int)Auras.BloodPlague)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.BloodBoil); return; } } // Heart Strike if (AI.Controllers.Spell.CanCast((int)Spells.HS) && ME.HasAuraById((int)Auras.BloodShield) && ME.Auras.Where(x => x.SpellId == (int)Auras.BloodShield && x.TimeLeft >= 6).Any() && ME.GetReadyRuneCountByType(WoW.Classes.ObjectManager.WowLocalPlayer.WowRuneType.Death) >= 1 || AI.Controllers.Spell.CanCast((int)Spells.HS) && ME.GetReadyRuneCountByType(WoW.Classes.ObjectManager.WowLocalPlayer.WowRuneType.Blood) >= 1) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.HS); return; } if (!ME.HasAuraById((int)Auras.BloodShield) && TARGET.HasAuraById((int)Auras.BloodPlague) || (ME.HasAuraById((int)Auras.BloodShield) && ME.Auras.Where(x => x.SpellId == (int)Auras.BloodShield && x.TimeLeft <= 6000).Any())) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.DeathStrike); return; } if (!TARGET.HasAuraById((int)Auras.FrostFever) || !TARGET.HasAuraById((int)Auras.BloodPlague)) { if (!TARGET.HasAuraById((int)Auras.FrostFever) && AI.Controllers.Spell.CanCast((int)Spells.IcyTouch)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.IcyTouch); return; } if (!TARGET.HasAuraById((int)Auras.BloodPlague) && AI.Controllers.Spell.CanCast((int)Spells.PlagueStrike)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.PlagueStrike); return; } } // Death Strike if (AI.Controllers.Spell.CanCast((int)Spells.DeathStrike)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.DeathStrike); return; } // Soul Reaper if (TARGET.HealthPercent < 35 && AI.Controllers.Spell.CanCast((int)Spells.SoulReaper)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.SoulReaper); return; } // Horn of Winter if (AI.Controllers.Spell.CanCast((int)Spells.HoW)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.HoW); return; } // Rune Strike if (ME.GetPowerPercent(WoW.Classes.ObjectManager.WowUnit.WowPowerType.RunicPower) >= 30 && AI.Controllers.Spell.CanCast((int)Spells.RuneStrike)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.RuneStrike); return; } else { // Death Coil if (TARGET.HealthPercent < 10 && AI.Controllers.Spell.CanCast((int)Spells.DeathCoil)) { AI.Controllers.Spell.UseShapeshiftForm((int)Spells.DeathCoil); return; } // AI.Controllers.Mover.MoveToObject(TARGET); } AI.Controllers.Spell.AttackTarget(); // No cast processed // We should do a "Right Click" on the TARGET here if we are not in combat // in order to auto attack it. } //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////////////////////FROST SPEC////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// if (ME.HasAuraById((int)Auras.FrostCheck) && !TARGET.HasAuraById((int)Auras.DWCheck)) { // Horn of Winter if (!ME.HasAuraById((int)Auras.HoW) && AI.Controllers.Spell.CanCast((int)Spells.HoW)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.HoW); return; } // We always want to face the target //WoW.Internals.Movements.Face(TARGET.Position); if (ME.HealthPercent < 30) { // Death Strike if (AI.Controllers.Spell.CanCast((int)Spells.DeathStrike)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.DeathStrike); return; } } if (TARGET.Position.Distance3DFromPlayer > 10) { if (!TARGET.HasAuraById((int)Auras.FrostFever) && AI.Controllers.Spell.CanCast((int)Spells.Outbreak) || !TARGET.HasAuraById((int)Auras.BloodPlague) && AI.Controllers.Spell.CanCast((int)Spells.Outbreak)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Outbreak); return; } } // Frost Strike if (ME.GetPowerPercent(WoW.Classes.ObjectManager.WowUnit.WowPowerType.RunicPower) >= 89 && AI.Controllers.Spell.CanCast((int)Spells.FrostStrike)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.FrostStrike); return; } //Pillar Of Frost if (!ME.HasAuraById((int)Auras.PoF) && AI.Controllers.Spell.CanCast((int)Spells.PoF)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.PoF); } // Deseases if (ME.HasAuraById((int)Auras.Rime)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.HowlingBlast); return; } if (!TARGET.HasAuraById((int)Auras.FrostFever) || !TARGET.HasAuraById((int)Auras.BloodPlague)) { if (!TARGET.HasAuraById((int)Auras.FrostFever) && AI.Controllers.Spell.CanCast((int)Spells.HowlingBlast)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.HowlingBlast); return; } if (!TARGET.HasAuraById((int)Auras.BloodPlague) && AI.Controllers.Spell.CanCast((int)Spells.PlagueStrike)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.PlagueStrike); return; } } // Obliterate if (AI.Controllers.Spell.CanCast((int)Spells.Obliterate)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Obliterate); return; } //Soul Reaper if Target Health below 35% if (AI.Controllers.Spell.CanCast((int)Spells.SoulReaperFrost) && TARGET.HealthPercent < 35) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.SoulReaperFrost); return; } // Frost Strike if (ME.GetPowerPercent(WoW.Classes.ObjectManager.WowUnit.WowPowerType.RunicPower) >= 20 && AI.Controllers.Spell.CanCast((int)Spells.FrostStrike)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.FrostStrike); return; } // Horn of Winter if (AI.Controllers.Spell.CanCast((int)Spells.HoW)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.HoW); return; } if (ME.Auras.Where(x => x.SpellId == (int)Auras.BloodTap && x.StackCount >= 5).Any() && AI.Controllers.Spell.CanCast((int)Spells.BloodTap)) { //AI.Controllers.Spell.Cast((int)Spells.BloodTap, TARGET); WoW.Internals.ActionBar.ExecuteSpell((int)Spells.BloodTap); return; } else { // Death Coil if (TARGET.HealthPercent < 10 && AI.Controllers.Spell.CanCast((int)Spells.DeathCoil)) { AI.Controllers.Spell.UseShapeshiftForm((int)Spells.DeathCoil); return; } // AI.Controllers.Mover.MoveToObject(TARGET); } AI.Controllers.Spell.AttackTarget(); // No cast processed // We should do a "Right Click" on the TARGET here if we are not in combat // in order to auto attack it. } ////////////////////////////////DW FROST Written By schmiddi///////////////////////////////////////////////////// if (ME.HasAuraById((int)Auras.FrostCheck) && TARGET.HasAuraById((int)Auras.DWCheck)) { //Frost Strike if over 89 Runic Power if (ME.GetPower(Anthrax.WoW.Classes.ObjectManager.WowUnit.WowPowerType.RunicPower) >= 89 && AI.Controllers.Spell.CanCast((int)Spells.FrostStrike) || ME.GetPower(Anthrax.WoW.Classes.ObjectManager.WowUnit.WowPowerType.RunicPower) >= 20 && AI.Controllers.Spell.CanCast((int)Spells.FrostStrike) && ME.HasAuraById((int)Auras.KillingM)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.FrostStrike); return; } //Pillar Of Frost if (!ME.HasAuraById((int)Auras.PoF) && AI.Controllers.Spell.CanCast((int)Spells.PoF)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.PoF); } //Howling Blast on Cooldown if (AI.Controllers.Spell.CanCast((int)Spells.HowlingBlast) && ME.GetReadyRuneCountByType(WoW.Classes.ObjectManager.WowLocalPlayer.WowRuneType.Frost) > 1 || AI.Controllers.Spell.CanCast((int)Spells.HowlingBlast) && ME.GetReadyRuneCountByType(WoW.Classes.ObjectManager.WowLocalPlayer.WowRuneType.Death) > 1 || ME.HasAuraById((int)Auras.Rime)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.HowlingBlast); return; } //Soul Reaper if Target Health below 35% if (AI.Controllers.Spell.CanCast((int)Spells.SoulReaperFrost) && TARGET.HealthPercent < 35) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.SoulReaperFrost); return; } //Blood Plague Check if (AI.Controllers.Spell.CanCast((int)Spells.PlagueStrike) && !TARGET.HasAuraById((int)Auras.BloodPlague)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.PlagueStrike); return; } //Obliterate if you have 1 Unholy Rune if (AI.Controllers.Spell.CanCast((int)Spells.Obliterate) && ME.GetReadyRuneCountByType(WoW.Classes.ObjectManager.WowLocalPlayer.WowRuneType.Unholy) >= 1) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.Obliterate); return; } //Howling Blast if (AI.Controllers.Spell.CanCast((int)Spells.HowlingBlast)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.HowlingBlast); return; } //Frost Strike if (ME.GetPower(Anthrax.WoW.Classes.ObjectManager.WowUnit.WowPowerType.RunicPower) >= 20 && AI.Controllers.Spell.CanCast((int)Spells.FrostStrike)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.FrostStrike); return; } //Horn of Winter if (AI.Controllers.Spell.CanCast((int)Spells.HoW)) { WoW.Internals.ActionBar.ExecuteSpell((int)Spells.HoW); return; } if (ME.Auras.Where(x => x.SpellId == (int)Auras.BloodTap && x.StackCount >= 5).Any()) { //AI.Controllers.Spell.Cast((int)Spells.BloodTap, TARGET); WoW.Internals.ActionBar.ExecuteSpell((int)Spells.BloodTap); return; } } } }