/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs"/> instance containing the event data.</param> public static void Execute(EventArgs args) { if (Bools.ShouldUseCleanser() || (!Bools.IsSpellAvailable(SpellSlots.Cleanse) && Bools.ShouldUseCleanse(ObjectManager.Player))) { /// <summary> /// The Quicksilver Sash. /// </summary> if (ItemData.Quicksilver_Sash.GetItem().IsReady()) { Utility.DelayAction.Add( Variables.Menu.Item($"{Variables.MainMenuName}.randomizer").GetValue <bool>() ? WeightedRandom.Next(100, 200) : 0, () => { ItemData.Quicksilver_Sash.GetItem().Cast(); return; } ); } /// <summary> /// The Mikaels Crucible. /// </summary> if (ItemData.Mikaels_Crucible.GetItem().IsReady()) { if (Bools.ShouldUseCleanse(Targets.Ally) && Targets.Ally.IsValidTarget(750f, false)) { Utility.DelayAction.Add( Variables.Menu.Item($"{Variables.MainMenuName}.randomizer").GetValue <bool>() ? WeightedRandom.Next(100, 200) : 0, () => { ItemData.Mikaels_Crucible.GetItem().Cast(Targets.Ally); } ); } else if (Bools.ShouldUseCleanse(ObjectManager.Player)) { Utility.DelayAction.Add( Variables.Menu.Item($"{Variables.MainMenuName}.randomizer").GetValue <bool>() ? WeightedRandom.Next(100, 200) : 0, () => { ItemData.Mikaels_Crucible.GetItem().Cast(ObjectManager.Player); } ); } } } }
/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs"/> instance containing the event data.</param> public static void Execute(EventArgs args) { if ((Bools.ShouldUseCleanser() || (Bools.ShouldUseCleanse(ObjectManager.Player) && !Bools.IsSpellAvailable(SpellSlots.Cleanse))) || ObjectManager.Player.HealthPercent <= 10 && HealthPrediction.GetHealthPrediction(ObjectManager.Player, (int)(500 + Game.Ping / 2f)) <= ObjectManager.Player.MaxHealth / 6) { /// <summary> /// The Dervish Blade. /// </summary> if (ItemData.Dervish_Blade.GetItem().IsReady()) { Utility.DelayAction.Add( Variables.Menu.Item($"{Variables.MainMenuName}.randomizer").GetValue <bool>() ? WeightedRandom.Next(100, 200) : 0, () => { ItemData.Dervish_Blade.GetItem().Cast(); return; } ); } /// <summary> /// The Mercurial Scimitar. /// </summary> if (ItemData.Mercurial_Scimitar.GetItem().IsReady()) { Utility.DelayAction.Add( Variables.Menu.Item($"{Variables.MainMenuName}.randomizer").GetValue <bool>() ? WeightedRandom.Next(100, 200) : 0, () => { ItemData.Mercurial_Scimitar.GetItem().Cast(); } ); } } }
/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void Cleansers(EventArgs args) { if (!Vars.Menu["cleansers"].GetValue <MenuSliderButton>().BValue) { return; } /// <summary> /// The Mikaels Crucible Logic. /// </summary> if (Items.CanUseItem(3222)) { foreach (var ally in GameObjects.AllyHeroes.Where(a => Bools.ShouldCleanse(a) && a.IsValidTarget(750f, false))) { DelayAction.Add( Vars.Menu["cleansers"].GetValue <MenuSliderButton>().SValue, () => { Items.UseItem(3222, ally); }); } } if (Bools.ShouldUseCleanser() || !SpellSlots.Cleanse.IsReady() && Bools.ShouldCleanse(GameObjects.Player)) { /// <summary> /// The Quicksilver Sash Logic. /// </summary> if (Items.CanUseItem(3140)) { DelayAction.Add( Vars.Menu["cleansers"].GetValue <MenuSliderButton>().SValue, () => { Items.UseItem(3140); }); } /// <summary> /// The Dervish Blade Logic. /// </summary> if (Items.CanUseItem(3137)) { DelayAction.Add( Vars.Menu["cleansers"].GetValue <MenuSliderButton>().SValue, () => { Items.UseItem(3137); }); } /// <summary> /// The Mercurial Scimitar Logic. /// </summary> if (Items.CanUseItem(3139)) { DelayAction.Add( Vars.Menu["cleansers"].GetValue <MenuSliderButton>().SValue, () => { Items.UseItem(3139); }); } } if (GameObjects.Player.HealthPercent < 10) { /// <summary> /// The Dervish Blade Logic. /// </summary> if (Items.CanUseItem(3137)) { DelayAction.Add( Vars.Menu["cleansers"].GetValue <MenuSliderButton>().SValue, () => { Items.UseItem(3137); }); } /// <summary> /// The Mercurial Scimitar Logic. /// </summary> if (Items.CanUseItem(3139)) { DelayAction.Add( Vars.Menu["cleansers"].GetValue <MenuSliderButton>().SValue, () => { Items.UseItem(3139); }); } } }
public static void Execute(EventArgs args) { if (Bools.ShouldUseCleanser() || (Bools.ShouldUseCleanse(ObjectManager.Player) && !Bools.IsSpellAvailable(SpellSlots.Cleanse))) { /// <summary> /// The Dervish Blade. /// </summary> if (ItemData.Dervish_Blade.GetItem().IsReady()) { Utility.DelayAction.Add( Bools.HasZedMark(ObjectManager.Player) ? 1500 : Bools.MustRandomize() ? WeightedRandom.Next(100, 200) : 0, () => { ItemData.Dervish_Blade.GetItem().Cast(); return; } ); } /// <summary> /// The Mercurial Scimitar. /// </summary> if (ItemData.Mercurial_Scimitar.GetItem().IsReady()) { Utility.DelayAction.Add( Bools.HasZedMark(ObjectManager.Player) ? 1500 : Bools.MustRandomize() ? WeightedRandom.Next(100, 200) : 0, () => { ItemData.Mercurial_Scimitar.GetItem().Cast(); return; } ); } /// <summary> /// The Quicksilver Sash. /// </summary> if (ItemData.Quicksilver_Sash.GetItem().IsReady()) { Utility.DelayAction.Add( Bools.HasZedMark(ObjectManager.Player) ? 1500 : Bools.MustRandomize() ? WeightedRandom.Next(100, 200) : 0, () => { ItemData.Quicksilver_Sash.GetItem().Cast(); return; } ); } /// <summary> /// The Mikaels Crucible. /// </summary> if (ItemData.Mikaels_Crucible.GetItem().IsReady()) { foreach (var Ally in HeroManager.Allies .Where( h => h.IsValidTarget(750f, false) && Bools.ShouldUseCleanse(h) && Bools.HasNoProtection(h))) { Utility.DelayAction.Add( Bools.MustRandomize() ? WeightedRandom.Next(100, 200) : 0, () => { ItemData.Mikaels_Crucible.GetItem().Cast(Ally); return; } ); } } } }