Beispiel #1
0
 public static double GetEDamage(Obj_AI_Base target)
 {
     if (SpellManager.E.IsReady())
     {
         int spins = MaxESpins.Where(e => Player.Instance.Level <= e.Key).FirstOrDefault().Value;
         if (target.CountEnemyChampionsInRange(250) > 0)
             return Player.Instance.CalculateDamageOnUnit(target, DamageType.Physical,
                 ((new float[] { 0, 14, 18, 22, 26, 30 }[SpellManager.E.Level] + new float[] { 0, 0.34f, 0.35f, 0.36f, 0.37f, 0.38f }[SpellManager.E.Level] * Player.Instance.TotalAttackDamage) * spins));
         else
             return Player.Instance.CalculateDamageOnUnit(target, DamageType.Physical,
                 ((new float[] { 0, 18.62f, 23.94f, 29.26f, 34.58f, 39.9f }[SpellManager.E.Level] + new float[] { 0, 0.4522f, 0.4655f, 0.4788f, 0.4921f, 0.5054f }[SpellManager.E.Level] * Player.Instance.TotalAttackDamage) * spins));
     }
     return 0;
 }
Beispiel #2
0
        public static void OnUnkillableMinion(Obj_AI_Base target, Orbwalker.UnkillableMinionArgs args)
        {
            if (!Config.Farm.Menu.GetCheckBoxValue("Config.Farm.Q.Unkillable") || Player.Instance.HasBuff("GarenE")) return;

            if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.LastHit) || Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.LaneClear))
            {
                if (SpellManager.Q.IsReady() && target.CountEnemyChampionsInRange(550) <= 1 && Player.Instance.HealthPercent >= 30)
                {
                    if (target.IsInRange(Player.Instance, Player.Instance.GetAutoAttackRange()))
                    {
                        SpellManager.Q.Cast();
                        Orbwalker.ResetAutoAttack();
                        Core.DelayAction(() => Player.IssueOrder(GameObjectOrder.AttackTo, target), Config.Farm.Menu.GetSliderValue("Config.Farm.Q.Delay"));
                    }
                }
            }
        }
Beispiel #3
0
        public static void OnUnkillableMinion(Obj_AI_Base target, Orbwalker.UnkillableMinionArgs args)
        {
            if (!Config.Farm.Menu.GetCheckBoxValue("Config.Farm.Q.Unkillable") || Player.Instance.ManaPercent < Config.Farm.Menu.GetSliderValue("Config.Farm.Q.Mana"))
            {
                return;
            }

            if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.LastHit) || Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.LaneClear))
            {
                if (SpellManager.Q.IsReady() && target.CountEnemyChampionsInRange(550) <= 1 && Player.Instance.HealthPercent >= 30)
                {
                    if (target.IsInRange(Player.Instance, SpellManager.Q.Range))
                    {
                        SpellManager.Q.Cast(target);
                    }
                }
            }
        }
Beispiel #4
0
 public static double GetEDamage(Obj_AI_Base target)
 {
     if (SpellManager.E.IsReady())
     {
         int spins = MaxESpins.Where(e => Player.Instance.Level <= e.Key).FirstOrDefault().Value;
         if (target.CountEnemyChampionsInRange(250) > 0)
         {
             return(Player.Instance.CalculateDamageOnUnit(target, DamageType.Physical,
                                                          ((new float[] { 0, 14, 18, 22, 26, 30 }[SpellManager.E.Level] +new float[] { 0, 0.34f, 0.35f, 0.36f, 0.37f, 0.38f }[SpellManager.E.Level] *Player.Instance.TotalAttackDamage) * spins)));
         }
         else
         {
             return(Player.Instance.CalculateDamageOnUnit(target, DamageType.Physical,
                                                          ((new float[] { 0, 18.62f, 23.94f, 29.26f, 34.58f, 39.9f }[SpellManager.E.Level] +new float[] { 0, 0.4522f, 0.4655f, 0.4788f, 0.4921f, 0.5054f }[SpellManager.E.Level] *Player.Instance.TotalAttackDamage) * spins)));
         }
     }
     return(0);
 }
Beispiel #5
0
        public static void OnUnkillableMinion(Obj_AI_Base target, Orbwalker.UnkillableMinionArgs args)
        {
            if (!Config.Farm.Menu.GetCheckBoxValue("Config.Farm.Q.Unkillable") || Player.Instance.HasBuff("GarenE"))
            {
                return;
            }

            if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.LastHit) || Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.LaneClear))
            {
                if (SpellManager.Q.IsReady() && target.CountEnemyChampionsInRange(550) <= 1 && Player.Instance.HealthPercent >= 30)
                {
                    if (target.IsInRange(Player.Instance, Player.Instance.GetAutoAttackRange()))
                    {
                        SpellManager.Q.Cast();
                        Orbwalker.ResetAutoAttack();
                        Core.DelayAction(() => Player.IssueOrder(GameObjectOrder.AttackTo, target), Config.Farm.Menu.GetSliderValue("Config.Farm.Q.Delay"));
                    }
                }
            }
        }
Beispiel #6
0
        internal static void OnBuffGain(Obj_AI_Base sender, Obj_AI_BaseBuffGainEventArgs args)
        {
            if (!(sender is AIHeroClient) || !sender.IsAlly || !args.Buff.Caster.IsEnemy)
            {
                return;
            }
            var Sender = sender as AIHeroClient;

            if (Sender.IsMe)
            {
                if (Spells.Cleanse != null && Spells.Cleanse.IsReady())
                {
                    if (Main.Clean["Cleanse"].Cast <GroupLabel>() == null || !Main.Clean.VChecked("Cleanse.Enabled"))
                    {
                        return;
                    }
                    if (Main.Clean["Cleanse." + args.Buff.Type].Cast <CheckBox>() == null || !Main.Clean.VChecked("Cleanse." + args.Buff.Type))
                    {
                        return;
                    }
                    var Duration = (args.Buff.EndTime - Game.Time) * 1000;
                    if (Duration < Main.Clean.VSliderValue("Cleanse.Duration") * 50)
                    {
                        return;
                    }
                    if (sender.CountEnemyChampionsInRange(1500) < float.Epsilon)
                    {
                        return;
                    }
                    var Delay = new Random().Next(Main.Clean.VSliderValue("Cleanse.Delay.Min"), Main.Clean.VSliderValue("Cleanse.Delay.Max"));
                    Core.DelayAction(() =>
                    {
                        Spells.Cleanse.Cast();
                    }, Delay);
                }
                else
                {
                    if (!ItemList.Clean.Any(x => x.IsOwned() && x.IsReady()))
                    {
                        return;
                    }
                    var    qss   = ItemList.Clean.FirstOrDefault(x => x.IsOwned() && x.IsReady());
                    string local = qss.Id.Equals(ItemId.Mikaels_Crucible) ? qss.Id.ToString() : "QSS";
                    if (Main.Clean[local].Cast <GroupLabel>() == null || !Main.Clean.VChecked(local + ".Enabled") ||
                        !Main.Clean.VChecked(local + ".Enabled." + Sender.ChampionName))
                    {
                        return;
                    }
                    if (Main.Clean[local + "." + args.Buff.Type].Cast <CheckBox>() == null || !Main.Clean.VChecked(local + "." + args.Buff.Type))
                    {
                        return;
                    }
                    var Duration = (args.Buff.EndTime - Game.Time) * 1000;
                    if (Duration < Main.Clean.VSliderValue(local + ".Duration") * 50)
                    {
                        return;
                    }
                    if (sender.CountEnemyChampionsInRange(1500) < float.Epsilon)
                    {
                        return;
                    }
                    var Delay = new Random().Next(Main.Clean.VSliderValue(local + ".Delay.Min"), Main.Clean.VSliderValue(local + ".Delay.Max"));
                    Core.DelayAction(() =>
                    {
                        if (qss.Id.Equals(ItemId.Mikaels_Crucible))
                        {
                            qss.Cast(Sender);
                        }
                        else
                        {
                            qss.Cast();
                        }
                    }, Delay);
                }
            }
            else
            {
                var mikael = ItemList.Clean.FirstOrDefault(x => x.Id.Equals(ItemId.Mikaels_Crucible));
                if (!mikael.IsOwned() || !mikael.IsReady())
                {
                    return;
                }
                if (Main.Clean[mikael.Id.ToString()].Cast <GroupLabel>() == null || !Main.Clean.VChecked(mikael.Id + ".Enabled") ||
                    !Main.Clean.VChecked(mikael.Id + ".Enabled." + Sender.ChampionName))
                {
                    return;
                }
                if (Main.Clean[mikael.Id + "." + args.Buff.Type].Cast <CheckBox>() == null || !Main.Clean.VChecked(mikael.Id + "." + args.Buff.Type))
                {
                    return;
                }
                var Duration = (args.Buff.EndTime - Game.Time) * 1000;
                if (Duration < Main.Clean.VSliderValue(mikael.Id + ".Duration") * 50)
                {
                    return;
                }
                if (sender.CountEnemyChampionsInRange(1500) < float.Epsilon)
                {
                    return;
                }
                var Delay = new Random().Next(Main.Clean.VSliderValue(mikael.Id + ".Delay.Min"), Main.Clean.VSliderValue(mikael.Id + ".Delay.Max"));
                Core.DelayAction(() => mikael.Cast(Sender), Delay);
            }
        }