public static Composite CreateEnhancementShamanPreCombatBuffs() { return(new PrioritySelector( new Decorator( ret => !Item.HasWeaponImbue(WoWInventorySlot.MainHand, "Windfury") && SpellManager.HasSpell("Windfury Weapon") && SpellManager.CanCast("Windfury Weapon", null, false, false), new Sequence( new Action(ret => Lua.DoString("CancelItemTempEnchantment(1) CancelItemTempEnchantment(2)")), new Action(ret => Logger.Write("Imbuing main hand weapon with Windfury")), new Action(ret => SpellManager.Cast("Windfury Weapon", null)))), new Decorator( ret => !Item.HasWeaponImbue(WoWInventorySlot.MainHand, "Flametongue") && !SpellManager.HasSpell("Windfury Weapon") && SpellManager.CanCast("Flametongue Weapon", null, false, false), new Sequence( new Action(ret => Lua.DoString("CancelItemTempEnchantment(1) CancelItemTempEnchantment(2)")), new Action(ret => Logger.Write("Imbuing main hand weapon with Flametongue")), new Action(ret => SpellManager.Cast("Flametongue Weapon", null)))), new Decorator( ret => StyxWoW.Me.Inventory.Equipped.OffHand != null && StyxWoW.Me.Inventory.Equipped.OffHand.ItemInfo.ItemClass == WoWItemClass.Weapon && !Item.HasWeaponImbue(WoWInventorySlot.OffHand, "Flametongue") && StyxWoW.Me.Inventory.Equipped.MainHand != null && StyxWoW.Me.Inventory.Equipped.MainHand.TemporaryEnchantment != null && SpellManager.CanCast("Flametongue Weapon", null, false, false), new Sequence( new Action(ret => Lua.DoString("CancelItemTempEnchantment(2)")), new Action(ret => Logger.Write("Imbuing off hand weapon with Flametongue")), new Action(ret => SpellManager.Cast("Flametongue Weapon", null)))), Spell.Cast("Lightning Shield", ret => StyxWoW.Me, ret => !StyxWoW.Me.HasAura("Lightning Shield", 2)), new Decorator(ret => Totems.NeedToRecallTotems, new Action(ret => Totems.RecallTotems())) )); }
public static Composite CreateShamanElementalPreCombatBuffs() { return(new PrioritySelector( Common.CreateShamanImbueMainHandBehavior(Imbue.Flametongue), Spell.BuffSelf("Lightning Shield"), new Decorator(ret => Totems.NeedToRecallTotems, new Action(ret => Totems.RecallTotems())) )); }
public static Composite CreateElementalShamanPreCombatBuffs() { return(new PrioritySelector( new Decorator( ret => !Item.HasWeaponImbue(WoWInventorySlot.MainHand, "Flametongue") && SpellManager.HasSpell("Flametongue Weapon") && SpellManager.CanCast("Flametongue Weapon", null, false, false), new Sequence( new Action(ret => Lua.DoString("CancelItemTempEnchantment(1)")), new Action(ret => Logger.Write("Imbuing main hand weapon with Flametongue")), new Action(ret => SpellManager.Cast("Flametongue Weapon", null)) )), Spell.Cast("Lightning Shield", ret => StyxWoW.Me, ret => !StyxWoW.Me.HasAura("Lightning Shield", 2)), new Decorator(ret => Totems.NeedToRecallTotems, new Action(ret => Totems.RecallTotems())) )); }