Exemplo n.º 1
0
        /// <summary>
        ///     Lane clear
        /// </summary>
        public static void Laneclear()
        {
            try
            {
                var minion = MinionManager.GetMinions(Player.ServerPosition, spells[Spells.W].Range).FirstOrDefault();
                if (minion == null)
                {
                    return;
                }

                if (Player.Spellbook.IsAutoAttacking || Orbwalker.IsAutoAttacking)
                {
                    return;
                }

                if (Ferocity == 5 && MenuInit.getCheckBoxItem(MenuInit.laneClear, "Clear.Save.Ferocity"))
                {
                    if (minion.LSIsValidTarget(spells[Spells.W].Range))
                    {
                        LaneItems(minion);
                    }
                    return;
                }

                if (MenuInit.getCheckBoxItem(MenuInit.laneClear, "Clear.Use.Q") && spells[Spells.Q].IsReady() &&
                    minion.LSIsValidTarget(spells[Spells.Q].Range))
                {
                    spells[Spells.Q].Cast();
                }

                LaneItems(minion);

                if (MenuInit.getCheckBoxItem(MenuInit.laneClear, "Clear.Use.W") && spells[Spells.W].IsReady() &&
                    minion.LSIsValidTarget(spells[Spells.W].Range))
                {
                    spells[Spells.W].Cast();
                }

                if (MenuInit.getCheckBoxItem(MenuInit.laneClear, "Clear.Use.E") && spells[Spells.E].IsReady() && minion.LSIsValidTarget(spells[Spells.E].Range))
                {
                    if (Ferocity == 5)
                    {
                        return;
                    }

                    spells[Spells.E].Cast(minion.Position);
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Exemplo n.º 2
0
        public static void Jungleclear()
        {
            try
            {
                var minion =
                    MinionManager.GetMinions(
                        Player.ServerPosition,
                        spells[Spells.W].Range,
                        MinionTypes.All,
                        MinionTeam.Neutral,
                        MinionOrderTypes.MaxHealth).FirstOrDefault();

                if (minion == null)
                {
                    return;
                }

                CastItems(minion);

                if (Ferocity == 5 && MenuInit.getCheckBoxItem(MenuInit.jungleClear, "Jungle.Save.Ferocity"))
                {
                    if (minion.IsValidTarget(spells[Spells.W].Range) && !HasPassive)
                    {
                        CastItems(minion);
                    }
                    return;
                }

                if (MenuInit.getCheckBoxItem(MenuInit.jungleClear, "Jungle.Use.Q") && spells[Spells.Q].IsReady() &&
                    minion.IsValidTarget(spells[Spells.Q].Range + 100))
                {
                    spells[Spells.Q].Cast();
                }

                if (MenuInit.getCheckBoxItem(MenuInit.jungleClear, "Jungle.Use.W") && spells[Spells.W].IsReady() &&
                    minion.IsValidTarget(spells[Spells.W].Range) && !HasPassive)
                {
                    spells[Spells.W].Cast();
                }

                if (MenuInit.getCheckBoxItem(MenuInit.jungleClear, "Jungle.Use.E") && spells[Spells.E].IsReady() &&
                    minion.IsValidTarget(spells[Spells.E].Range))
                {
                    spells[Spells.E].Cast(minion.Position);
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Exemplo n.º 3
0
        private static void OnDrawEndScene(EventArgs args)
        {
            try
            {
                if (Player.IsDead)
                {
                    return;
                }

                if (MenuInit.getCheckBoxItem(MenuInit.miscMenu, "Misc.Drawings.Minimap") && spells[Spells.R].Level > 0)
                {
                    Utility.DrawCircle(ObjectManager.Player.Position, spells[Spells.R].Range, Color.White, 1, 23, true);
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Exemplo n.º 4
0
        private static void Heal()
        {
            try
            {
                if (Player.IsRecalling() || Player.InFountain() || Ferocity <= 4 || RengarR)
                {
                    return;
                }

                if (MenuInit.getCheckBoxItem(MenuInit.healMenu, "Heal.AutoHeal") &&
                    Player.Health / Player.MaxHealth * 100
                    <= MenuInit.getSliderItem(MenuInit.healMenu, "Heal.HP") && spells[Spells.W].IsReady())
                {
                    spells[Spells.W].Cast();
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Exemplo n.º 5
0
        private static void KillstealHandler()
        {
            try
            {
                if (!MenuInit.getCheckBoxItem(MenuInit.ksMenu, "Killsteal.On") || Player.LSIsRecalling())
                {
                    return;
                }

                var target = Enemies.FirstOrDefault(x => x.LSIsValidTarget(spells[Spells.E].Range));
                if (target == null || target.IsDead || !target.IsHPBarRendered || !target.IsVisible)
                {
                    return;
                }

                if (RengarR)
                {
                    return;
                }

                if (spells[Spells.W].GetDamage(target) > target.Health && target.LSIsValidTarget(spells[Spells.W].Range))
                {
                    spells[Spells.W].Cast();
                }

                if (spells[Spells.E].GetDamage(target) > target.Health && target.LSIsValidTarget(spells[Spells.E].Range))
                {
                    var prediction = spells[Spells.E].GetPrediction(target);
                    if (prediction.HitChance >= EloBuddy.SDK.Enumerations.HitChance.High)
                    {
                        spells[Spells.E].Cast(prediction.CastPosition);
                    }
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Exemplo n.º 6
0
        private static void KillstealHandler()
        {
            try
            {
                if (!MenuInit.getCheckBoxItem(MenuInit.ksMenu, "Killsteal.On"))
                {
                    return;
                }

                var target =
                    Enemies.FirstOrDefault(
                        x => x.IsValidTarget(spells[Spells.W].Range) && x.Health < spells[Spells.W].GetDamage(x));

                if (target != null)
                {
                    spells[Spells.W].Cast();
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Exemplo n.º 7
0
 private static void BeforeAttack(AttackableUnit target, Orbwalker.PreAttackArgs args)
 {
     try
     {
         if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo) && !HasPassive &&
             spells[Spells.Q].IsReady() &&
             !(MenuInit.getBoxItem(MenuInit.comboMenu, "Combo.Prio") == 0 ||
               MenuInit.getBoxItem(MenuInit.comboMenu, "Combo.Prio") == 1 && Ferocity == 5))
         {
             var x = Prediction.GetPrediction(args.Target as Obj_AI_Base, Player.AttackCastDelay + 0.04f);
             if (Player.Position.To2D().Distance(x.UnitPosition.To2D())
                 >= Player.BoundingRadius + Player.AttackRange + args.Target.BoundingRadius)
             {
                 args.Process = false;
                 spells[Spells.Q].Cast();
             }
         }
     }
     catch (Exception e)
     {
         Console.WriteLine(e);
     }
 }
Exemplo n.º 8
0
        private static void KillstealHandler()
        {
            try
            {
                if (!MenuInit.getCheckBoxItem(MenuInit.ksMenu, "Killsteal.On") || RengarR)
                {
                    return;
                }

                var target =
                    Enemies.FirstOrDefault(
                        x => x.LSIsValidTarget(spells[Spells.E].Range));

                if (target == null)
                {
                    return;
                }

                if (spells[Spells.W].GetDamage(target) > target.Health && target.LSIsValidTarget(spells[Spells.W].Range))
                {
                    spells[Spells.W].Cast();
                }

                if (spells[Spells.E].GetDamage(target) > target.Health && target.LSIsValidTarget(spells[Spells.E].Range))
                {
                    var prediction = spells[Spells.E].GetPrediction(target);
                    if (prediction.Hitchance >= HitChance.VeryHigh)
                    {
                        spells[Spells.E].Cast(prediction.CastPosition);
                    }
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Exemplo n.º 9
0
        private static void Heal()
        {
            try
            {
                if (RengarR || Player.LSIsRecalling() || Player.InFountain() || Ferocity != 5)
                {
                    return;
                }

                if (Player.LSCountEnemiesInRange(1000) > 1 && spells[Spells.W].IsReady())
                {
                    if (MenuInit.getCheckBoxItem(MenuInit.healMenu, "Heal.AutoHeal") &&
                        (Player.Health / Player.MaxHealth) * 100
                        <= MenuInit.getSliderItem(MenuInit.healMenu, "Heal.HP"))
                    {
                        spells[Spells.W].Cast();
                    }
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Exemplo n.º 10
0
        private static void OnDash(Obj_AI_Base sender, Dash.DashItem args)
        {
            try
            {
                if (!sender.IsMe || Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo))
                {
                    return;
                }

                var target = TargetSelector.GetTarget(1500f, DamageType.Physical);
                if (!target.LSIsValidTarget())
                {
                    return;
                }

                if (!RengarR)
                {
                    ActiveModes.CastItems(target);
                }

                if (Ferocity == 5)
                {
                    switch (MenuInit.getBoxItem(MenuInit.comboMenu, "Combo.Prio"))
                    {
                    case 0:
                        if (spells[Spells.E].IsReady())
                        {
                            var targetE = TargetSelector.GetTarget(
                                spells[Spells.E].Range,
                                DamageType.Physical);
                            if (targetE.LSIsValidTarget())
                            {
                                var pred = spells[Spells.E].GetPrediction(targetE);
                                if (pred.HitChance >= EloBuddy.SDK.Enumerations.HitChance.High)
                                {
                                    LeagueSharp.Common.Utility.DelayAction.Add(300, () => spells[Spells.E].Cast(pred.CastPosition));
                                }
                            }
                        }
                        break;

                    case 2:
                        if (spells[Spells.Q].IsReady() &&
                            Player.LSCountEnemiesInRange(Player.AttackRange + Player.BoundingRadius + 100) != 0)
                        {
                            spells[Spells.Q].Cast();
                        }
                        break;
                    }
                }
                else
                {
                    if (MenuInit.getBoxItem(MenuInit.comboMenu, "Combo.Prio") != 0)
                    {
                        if (spells[Spells.E].IsReady())
                        {
                            var targetE = TargetSelector.GetTarget(
                                spells[Spells.E].Range,
                                DamageType.Physical);
                            if (targetE.LSIsValidTarget(spells[Spells.E].Range))
                            {
                                var pred = spells[Spells.E].GetPrediction(targetE);
                                if (pred.HitChance >= EloBuddy.SDK.Enumerations.HitChance.Medium)
                                {
                                    LeagueSharp.Common.Utility.DelayAction.Add(300, () => spells[Spells.E].Cast(pred.CastPosition));
                                }
                            }
                        }
                    }
                }

                switch (MenuInit.getBoxItem(MenuInit.comboMenu, "Combo.Prio"))
                {
                case 0:
                    if (spells[Spells.E].IsReady() && target.LSIsValidTarget(spells[Spells.E].Range))
                    {
                        var pred = spells[Spells.E].GetPrediction(target);
                        LeagueSharp.Common.Utility.DelayAction.Add(300, () => spells[Spells.E].Cast(pred.CastPosition));
                    }
                    break;

                case 2:
                    if (MenuInit.getCheckBoxItem(MenuInit.betaMenu, "Beta.Cast.Q1") && RengarR)
                    {
                        spells[Spells.Q].Cast();
                    }
                    break;
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Exemplo n.º 11
0
        public static void Harass()
        {
            // ReSharper disable once ConvertConditionalTernaryToNullCoalescing
            var target = TargetSelector.SelectedTarget != null
                ? TargetSelector.SelectedTarget
                : TargetSelector.GetTarget(spells[Spells.Q].Range, DamageType.Physical);

            if (target.IsValidTarget() == false)
            {
                return;
            }

            #region RengarR

            if (Ferocity == 5)
            {
                switch (MenuInit.getBoxItem(MenuInit.harassMenu, "Harass.Prio"))
                {
                case 0:
                    if (!HasPassive && MenuInit.getCheckBoxItem(MenuInit.harassMenu, "Harass.Use.E") &&
                        spells[Spells.E].IsReady())
                    {
                        CastE(target);
                    }
                    break;

                case 1:
                    if (MenuInit.getCheckBoxItem(MenuInit.harassMenu, "Harass.Use.Q") &&
                        target.IsValidTarget(spells[Spells.Q].Range))
                    {
                        spells[Spells.Q].Cast();
                    }
                    break;
                }
            }

            if (Ferocity <= 4)
            {
                if (MenuInit.getCheckBoxItem(MenuInit.harassMenu, "Harass.Use.Q") &&
                    target.IsValidTarget(spells[Spells.Q].Range))
                {
                    spells[Spells.Q].Cast();
                }

                if (RengarR)
                {
                    return;
                }

                CastItems(target);

                if (!HasPassive && MenuInit.getCheckBoxItem(MenuInit.harassMenu, "Harass.Use.E") &&
                    spells[Spells.E].IsReady())
                {
                    CastE(target);
                }

                if (MenuInit.getCheckBoxItem(MenuInit.harassMenu, "Harass.Use.W"))
                {
                    CastW();
                }
            }
        }
Exemplo n.º 12
0
        /// <summary>
        ///     Handles combo
        /// </summary>
        public static void Combo()
        {
            try
            {
                var target = TargetSelector.SelectedTarget ?? TargetSelector.GetTarget(spells[Spells.E].Range, DamageType.Physical);
                if (target.LSIsValidTarget() == false)
                {
                    return;
                }

                if (TargetSelector.SelectedTarget != null)
                {
                    Orbwalker.ForcedTarget = target;
                }

                #region RengarR

                if (Ferocity <= 4)
                {
                    if (spells[Spells.Q].IsReady() && MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.Q") &&
                        Player.LSCountEnemiesInRange(Player.AttackRange
                                                     + Player.BoundingRadius + 100) != 0)
                    {
                        spells[Spells.Q].Cast();
                    }

                    if (!RengarR)
                    {
                        if (!HasPassive)
                        {
                            if (spells[Spells.E].IsReady() && MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.E"))
                            {
                                CastE(target);
                            }
                        }
                        else
                        {
                            if (spells[Spells.E].IsReady() && MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.E"))
                            {
                                if (Player.LSIsDashing())
                                {
                                    CastE(target);
                                }
                            }
                        }
                    }

                    CastItems(target);

                    if (spells[Spells.W].IsReady() && MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.W"))
                    {
                        CastW();
                        CastItems(target);
                    }
                }

                if (Ferocity == 5)
                {
                    switch (MenuInit.getBoxItem(MenuInit.comboMenu, "Combo.Prio"))
                    {
                    case 0:
                        if (!RengarR)
                        {
                            if (spells[Spells.E].IsReady() && !HasPassive)
                            {
                                CastE(target);

                                if (MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Switch.E") && Utils.GameTimeTickCount - LastSwitch >= 350)
                                {
                                    MenuInit.comboMenu["Combo.Prio"].Cast <ComboBox>().CurrentValue = 2;
                                    LastSwitch = Utils.GameTimeTickCount;
                                }
                            }
                        }
                        else
                        {
                            if (spells[Spells.E].IsReady() && MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.E"))
                            {
                                if (Player.LSIsDashing())
                                {
                                    CastE(target);
                                }
                            }
                        }
                        break;

                    case 1:
                        if (MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.W") && spells[Spells.W].IsReady() && target.LSIsValidTarget(spells[Spells.W].Range))
                        {
                            CastW();
                        }
                        break;

                    case 2:
                        if (spells[Spells.Q].IsReady() && MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.Q") && Player.LSCountEnemiesInRange(Player.AttackRange + Player.BoundingRadius + 100) != 0)
                        {
                            spells[Spells.Q].Cast();
                        }
                        break;
                    }
                }

                #region Summoner spells


                if (Youmuu.IsReady() && Youmuu.IsOwned() && target.LSIsValidTarget(spells[Spells.Q].Range))
                {
                    Youmuu.Cast();
                }

                if (MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.Ignite") && target.LSIsValidTarget(600f) && IgniteDamage(target) >= target.Health)
                {
                    Player.Spellbook.CastSpell(Ignite, target);
                }

                #endregion
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Exemplo n.º 13
0
        /// <summary>
        ///     Handles combo
        /// </summary>
        public static void Combo()
        {
            try
            {
                var target = TargetSelector.SelectedTarget ?? TargetSelector.GetTarget(spells[Spells.E].Range, DamageType.Physical);
                if (target.IsValidTarget() == false)
                {
                    return;
                }

                #region RengarR

                if (Ferocity <= 4)
                {
                    if (spells[Spells.Q].IsReady() && MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.Q") &&
                        Player.CountEnemiesInRange(Player.AttackRange
                                                   + Player.BoundingRadius + 100) != 0)
                    {
                        if (Orbwalker.CanMove)
                        {
                            spells[Spells.Q].Cast();
                        }
                    }

                    if (!RengarR)
                    {
                        if (!HasPassive)
                        {
                            if (spells[Spells.E].IsReady() && MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.E"))
                            {
                                var targetE = TargetSelector.GetTarget(spells[Spells.E].Range, DamageType.Physical);
                                if (targetE.IsValidTarget())
                                {
                                    spells[Spells.E].Cast(targetE);
                                }
                                foreach (var target2 in HeroManager.Enemies.Where(x => x.IsValidTarget(spells[Spells.E].Range) && !x.IsZombie))
                                {
                                    spells[Spells.E].Cast(target2);
                                }
                            }
                        }
                        else
                        {
                            if (spells[Spells.E].IsReady() && MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.E"))
                            {
                                if (Player.IsDashing())
                                {
                                    var targetE = TargetSelector.GetTarget(spells[Spells.E].Range, DamageType.Physical);
                                    if (targetE.IsValidTarget())
                                    {
                                        spells[Spells.E].Cast(targetE);
                                    }
                                    foreach (var target2 in HeroManager.Enemies.Where(x => x.IsValidTarget(spells[Spells.E].Range) && !x.IsZombie))
                                    {
                                        spells[Spells.E].Cast(target2);
                                    }
                                }
                            }
                        }
                    }

                    CastItems(target);

                    if (spells[Spells.W].IsReady() && MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.W"))
                    {
                        CastW();
                        CastItems(target);
                    }
                }

                if (Ferocity == 5)
                {
                    switch (MenuInit.getBoxItem(MenuInit.comboMenu, "Combo.Prio"))
                    {
                    case 0:
                        if (!RengarR)
                        {
                            if (spells[Spells.E].IsReady() && !HasPassive)
                            {
                                if (Orbwalker.CanMove)
                                {
                                    var targetE = TargetSelector.GetTarget(spells[Spells.E].Range, DamageType.Physical);
                                    if (targetE.IsValidTarget())
                                    {
                                        spells[Spells.E].Cast(targetE);
                                    }
                                    foreach (var target2 in HeroManager.Enemies.Where(x => x.IsValidTarget(spells[Spells.E].Range) && !x.IsZombie))
                                    {
                                        spells[Spells.E].Cast(target2);
                                    }
                                }

                                if (MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Switch.E") && Environment.TickCount - Rengar.LastE >= 500 &&
                                    Utils.GameTimeTickCount - LastSwitch >= 350)
                                {
                                    MenuInit.comboMenu["Combo.Prio"].Cast <ComboBox>().CurrentValue = 2;
                                    LastSwitch = Utils.GameTimeTickCount;
                                }
                            }
                        }
                        else
                        {
                            if (spells[Spells.E].IsReady() && MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.E"))
                            {
                                if (Player.IsDashing())
                                {
                                    var targetE = TargetSelector.GetTarget(spells[Spells.E].Range, DamageType.Physical);
                                    if (targetE.IsValidTarget())
                                    {
                                        spells[Spells.E].Cast(targetE);
                                    }
                                    foreach (var target2 in HeroManager.Enemies.Where(x => x.IsValidTarget(spells[Spells.E].Range) && !x.IsZombie))
                                    {
                                        spells[Spells.E].Cast(target2);
                                    }
                                }
                            }
                        }
                        break;

                    case 1:
                        if (MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.W") && spells[Spells.W].IsReady())
                        {
                            CastW();
                        }
                        break;

                    case 2:
                        if (spells[Spells.Q].IsReady() && MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.Q") && Player.CountEnemiesInRange(Player.AttackRange + Player.BoundingRadius + 100) != 0)
                        {
                            if (Orbwalker.CanMove)
                            {
                                spells[Spells.Q].Cast();
                            }
                        }
                        break;
                    }

                    if (!RengarR)
                    {
                        if (MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.E.OutOfRange"))
                        {
                            CastE(target);
                        }
                    }
                }

                #region Summoner spells

                if (Youmuu.IsReady() && target.IsValidTarget(spells[Spells.Q].Range))
                {
                    Youmuu.Cast();
                }

                if (MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.Smite") && !RengarR && Smite != SpellSlot.Unknown &&
                    Player.Spellbook.CanUseSpell(Smite) == SpellState.Ready && !target.IsZombie)
                {
                    Player.Spellbook.CastSpell(Smite, target);
                }

                if (MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.Ignite") && target.IsValidTarget(600f) && IgniteDamage(target) >= target.Health)
                {
                    Player.Spellbook.CastSpell(Ignite, target);
                }

                #endregion
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Exemplo n.º 14
0
        private static void OnUpdate(EventArgs args)
        {
            try
            {
                if (Player.IsDead)
                {
                    return;
                }

                if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo))
                {
                    ActiveModes.Combo();
                }

                if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.JungleClear) ||
                    Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.LaneClear))
                {
                    ActiveModes.Laneclear();
                    ActiveModes.Jungleclear();
                }

                if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Harass))
                {
                    ActiveModes.Harass();
                }

                SwitchCombo();
                SmiteCombo();
                Heal();
                KillstealHandler();

                if (MenuInit.getKeyBindItem(MenuInit.comboMenu, "Combo.TripleQ"))
                {
                    Orbwalker.OrbwalkTo(Game.CursorPos);

                    var target = TargetSelector.GetTarget(spells[Spells.E].Range, DamageType.Physical);
                    if (!target.IsValidTarget())
                    {
                        return;
                    }

                    if (RengarR)
                    {
                        if (Ferocity == 5 && Player.Distance(target) <= spells[Spells.Q].Range)
                        {
                            spells[Spells.Q].Cast();
                        }
                    }
                    else
                    {
                        spells[Spells.Q].Cast();
                    }

                    if (Ferocity <= 4)
                    {
                        if (Player.Distance(target) <= spells[Spells.Q].Range)
                        {
                            spells[Spells.Q].Cast();
                        }
                        if (Player.Distance(target) <= spells[Spells.W].Range)
                        {
                            spells[Spells.W].Cast();
                        }
                        if (Player.Distance(target) <= spells[Spells.E].Range)
                        {
                            spells[Spells.E].Cast(target);
                        }
                    }
                }

                if (MenuInit.getCheckBoxItem(MenuInit.betaMenu, "Beta.Cast.Q") &&
                    MenuInit.getBoxItem(MenuInit.comboMenu, "Combo.Prio") == 2)
                {
                    if (MenuInit.getCheckBoxItem(MenuInit.betaMenu, "Beta.Cast.Youmuu") && !Items.HasItem(3142))
                    {
                        return;
                    }

                    var searchrange = MenuInit.getSliderItem(MenuInit.betaMenu, "Beta.searchrange");
                    var target      =
                        ObjectManager.Get <AIHeroClient>()
                        .FirstOrDefault(h => h.IsEnemy && h.IsValidTarget(searchrange));
                    if (!target.IsValidTarget())
                    {
                        return;
                    }

                    if (Ferocity == 5 && RengarR)
                    {
                        if (target.Distance(Player.ServerPosition)
                            <= MenuInit.getSliderItem(MenuInit.betaMenu, "Beta.searchrange.Q"))
                        {
                            Utility.DelayAction.Add(
                                MenuInit.getSliderItem(MenuInit.betaMenu, "Beta.Cast.Q.Delay"),
                                () => spells[Spells.Q].Cast());
                        }
                    }
                }

                spells[Spells.R].Range = 1000 + spells[Spells.R].Level * 1000;
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Exemplo n.º 15
0
        private static void OnDash(Obj_AI_Base sender, Dash.DashItem args)
        {
            try
            {
                if (!sender.IsMe)
                {
                    return;
                }

                var target = TargetSelector.GetTarget(1500f, DamageType.Physical);
                if (!target.IsValidTarget())
                {
                    return;
                }

                if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo))
                {
                    if (Ferocity == 5)
                    {
                        switch (MenuInit.getBoxItem(MenuInit.comboMenu, "Combo.Prio"))
                        {
                        case 0:
                            if (spells[Spells.E].IsReady() && target.IsValidTarget(spells[Spells.E].Range))
                            {
                                var pred = spells[Spells.E].GetPrediction(target);
                                spells[Spells.E].Cast(pred.CastPosition);
                            }
                            break;

                        case 2:
                            if (spells[Spells.Q].IsReady() && target.IsValidTarget(spells[Spells.Q].Range))
                            {
                                spells[Spells.Q].Cast();
                            }

                            if (target.IsValidTarget(spells[Spells.Q].Range))
                            {
                                Utility.DelayAction.Add(
                                    50,
                                    () =>
                                {
                                    if (target.IsValidTarget(spells[Spells.W].Range))
                                    {
                                        spells[Spells.W].Cast();
                                    }

                                    spells[Spells.E].Cast(target);
                                    ActiveModes.CastItems(target);
                                });
                            }

                            break;
                        }
                    }

                    switch (MenuInit.getBoxItem(MenuInit.comboMenu, "Combo.Prio"))
                    {
                    case 0:
                        if (spells[Spells.E].IsReady() && target.IsValidTarget(spells[Spells.E].Range))
                        {
                            var pred = spells[Spells.E].GetPrediction(target);
                            spells[Spells.E].Cast(pred.CastPosition);
                        }
                        break;

                    case 2:
                        if (MenuInit.getCheckBoxItem(MenuInit.betaMenu, "Beta.Cast.Q") && RengarR)
                        {
                            spells[Spells.Q].Cast();
                        }
                        break;
                    }

                    if (args.Duration - 100 - Game.Ping / 2 > 0)
                    {
                        Utility.DelayAction.Add(
                            args.Duration - 100 - Game.Ping / 2,
                            () => { ActiveModes.CastItems(target); });
                    }
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Exemplo n.º 16
0
        /// <summary>
        ///     Handles combo
        /// </summary>
        public static void Combo()
        {
            var forced = Orbwalker.ForcedTarget;

            if (forced != null && forced.LSIsValidTarget() && forced is AIHeroClient &&
                Orbwalking.InAutoAttackRange(forced))
            {
                return;
            }

            var target = TargetSelector.GetTarget(spells[Spells.E].Range, DamageType.Physical);

            if (target == null)
            {
                return;
            }

            #region RengarR

            if (Ferocity <= 4)
            {
                if (spells[Spells.Q].IsReady() && MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.Q") &&
                    Player.LSCountEnemiesInRange(Player.AttackRange + Player.BoundingRadius + 100) != 0)
                {
                    spells[Spells.Q].Cast();
                }

                if (!RengarR)
                {
                    if (!HasPassive)
                    {
                        if (spells[Spells.E].IsReady() && MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.E"))
                        {
                            CastE(target);
                        }
                    }
                }

                CastItems(target);

                if (spells[Spells.W].IsReady() && MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.W"))
                {
                    CastW();
                    CastItems(target);
                }
            }

            if (Ferocity == 5)
            {
                switch (MenuInit.getBoxItem(MenuInit.comboMenu, "Combo.Prio"))
                {
                case 0:
                    if (!RengarR)
                    {
                        if (spells[Spells.E].IsReady() && !HasPassive)
                        {
                            CastE(target);

                            if (MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Switch.E") && Utils.GameTimeTickCount - LastSwitch >= 350)
                            {
                                MenuInit.comboMenu["Combo.Prio"].Cast <ComboBox>().CurrentValue = 2;
                                LastSwitch = Utils.GameTimeTickCount;
                            }
                        }
                    }
                    break;

                case 1:
                    if (MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.W") && spells[Spells.W].IsReady() && target.LSIsValidTarget(spells[Spells.W].Range))
                    {
                        CastW();
                    }
                    break;

                case 2:
                    if (spells[Spells.Q].IsReady() && MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.Q") &&
                        Player.LSCountEnemiesInRange(Player.AttackRange + Player.BoundingRadius + 100) != 0)
                    {
                        spells[Spells.Q].Cast();
                    }
                    break;
                }
            }

            #region Summoner spells

            if (MenuInit.getCheckBoxItem(MenuInit.comboMenu, "Combo.Use.Ignite") && target.LSIsValidTarget(600f) && IgniteDamage(target) >= target.Health)
            {
                Player.Spellbook.CastSpell(Ignite, target);
            }

            #endregion
        }
Exemplo n.º 17
0
        private static void OnDraw(EventArgs args)
        {
            try
            {
                var drawW           = MenuInit.getCheckBoxItem(MenuInit.miscMenu, "Misc.Drawings.W");
                var drawE           = MenuInit.getCheckBoxItem(MenuInit.miscMenu, "Misc.Drawings.E");
                var drawExclamation = MenuInit.getCheckBoxItem(MenuInit.miscMenu, "Misc.Drawings.Exclamation");
                //Exclamation mark

                var drawSearchRange = MenuInit.getCheckBoxItem(MenuInit.betaMenu, "Beta.Search.Range");
                var searchrange     = MenuInit.getSliderItem(MenuInit.betaMenu, "Beta.searchrange");

                var drawsearchrangeQ      = MenuInit.getCheckBoxItem(MenuInit.betaMenu, "Beta.Search.QCastRange");
                var searchrangeQCastRange = MenuInit.getSliderItem(MenuInit.betaMenu, "Beta.searchrange.Q");

                if (MenuInit.getCheckBoxItem(MenuInit.miscMenu, "Misc.Drawings.Off"))
                {
                    return;
                }

                if (MenuInit.getCheckBoxItem(MenuInit.betaMenu, "Beta.Cast.Q1"))
                {
                    if (drawSearchRange && spells[Spells.R].Level > 0)
                    {
                        Render.Circle.DrawCircle(ObjectManager.Player.Position, searchrange, Color.Orange);
                    }

                    if (drawsearchrangeQ && spells[Spells.R].Level > 0)
                    {
                        Render.Circle.DrawCircle(ObjectManager.Player.Position, searchrangeQCastRange, Color.Orange);
                    }
                }

                if (RengarR && drawExclamation)
                {
                    if (spells[Spells.R].Level > 0)
                    {
                        Render.Circle.DrawCircle(ObjectManager.Player.Position, 1450f, Color.DeepSkyBlue);
                    }
                }

                if (drawW)
                {
                    if (spells[Spells.W].Level > 0)
                    {
                        Render.Circle.DrawCircle(ObjectManager.Player.Position, spells[Spells.W].Range, Color.Purple);
                    }
                }

                if (drawE)
                {
                    if (spells[Spells.E].Level > 0)
                    {
                        Render.Circle.DrawCircle(ObjectManager.Player.Position, spells[Spells.E].Range, Color.White);
                    }
                }

                if (MenuInit.getCheckBoxItem(MenuInit.miscMenu, "Misc.Drawings.Prioritized"))
                {
                    switch (MenuInit.getBoxItem(MenuInit.comboMenu, "Combo.Prio"))
                    {
                    case 0:
                        Drawing.DrawText(
                            Drawing.Width * 0.70f,
                            Drawing.Height * 0.95f,
                            Color.Yellow,
                            "Prioritized spell: E");
                        break;

                    case 1:
                        Drawing.DrawText(
                            Drawing.Width * 0.70f,
                            Drawing.Height * 0.95f,
                            Color.White,
                            "Prioritized spell: W");
                        break;

                    case 2:
                        Drawing.DrawText(
                            Drawing.Width * 0.70f,
                            Drawing.Height * 0.95f,
                            Color.White,
                            "Prioritized spell: Q");
                        break;
                    }
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Exemplo n.º 18
0
        private static void OnDash(Obj_AI_Base sender, Dash.DashItem args)
        {
            try
            {
                if (!sender.IsMe || !Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo))
                {
                    return;
                }

                var target = TargetSelector.GetTarget(1500f, DamageType.Physical);
                if (!target.LSIsValidTarget())
                {
                    return;
                }


                if (Ferocity == 5)
                {
                    switch (MenuInit.getBoxItem(MenuInit.comboMenu, "Combo.Prio"))
                    {
                    case 0:
                        if (spells[Spells.E].IsReady() && target.LSIsValidTarget(spells[Spells.E].Range))
                        {
                            var pred = spells[Spells.E].GetPrediction(target);
                            spells[Spells.E].Cast(target);
                        }
                        break;

                    case 2:
                        if (spells[Spells.Q].IsReady() &&
                            Player.LSCountEnemiesInRange(Player.AttackRange + Player.BoundingRadius + 100) != 0)
                        {
                            spells[Spells.Q].Cast();
                        }
                        break;
                    }

                    switch (MenuInit.getBoxItem(MenuInit.comboMenu, "Combo.Prio"))
                    {
                    case 0:
                        if (spells[Spells.E].IsReady() && target.LSIsValidTarget(spells[Spells.E].Range))
                        {
                            var pred = spells[Spells.E].GetPrediction(target);
                            spells[Spells.E].Cast(target);
                        }
                        break;

                    case 2:
                        if (MenuInit.getCheckBoxItem(MenuInit.betaMenu, "Beta.Cast.Q1") && RengarR)
                        {
                            spells[Spells.Q].Cast();
                        }
                        break;
                    }
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Exemplo n.º 19
0
        private static void OnUpdate(EventArgs args)
        {
            try
            {
                if (Player.IsDead)
                {
                    return;
                }

                if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo))
                {
                    ActiveModes.Combo();
                }

                if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.LaneClear) || Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.JungleClear))
                {
                    ActiveModes.Laneclear();
                    ActiveModes.Jungleclear();
                }

                if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Harass))
                {
                    ActiveModes.Harass();
                }

                SwitchCombo();
                Heal();
                KillstealHandler();

                // E on Immobile targets
                if (MenuInit.getCheckBoxItem(MenuInit.miscMenu, "Misc.Root") && spells[Spells.E].IsReady())
                {
                    if (RengarR)
                    {
                        return;
                    }

                    var target = HeroManager.Enemies.FirstOrDefault(h => h.LSIsValidTarget(spells[Spells.E].Range));
                    if (target != null)
                    {
                        if (Ferocity != 5)
                        {
                            return;
                        }

                        spells[Spells.E].CastIfHitchanceEquals(target, EloBuddy.SDK.Enumerations.HitChance.Immobile);
                    }
                }


                if (MenuInit.getCheckBoxItem(MenuInit.betaMenu, "Beta.Cast.Q1") && MenuInit.getBoxItem(MenuInit.comboMenu, "Combo.Prio") == 2)
                {
                    if (Ferocity != 5)
                    {
                        return;
                    }

                    var searchrange = MenuInit.getSliderItem(MenuInit.betaMenu, "Beta.searchrange");
                    var target      = HeroManager.Enemies.FirstOrDefault(h => h.LSIsValidTarget(searchrange, false));
                    if (!target.LSIsValidTarget())
                    {
                        return;
                    }

                    // Check if Rengar is in ultimate
                    if (RengarR)
                    {
                        // Check if the player distance <= than the set search range
                        if (Player.LSDistance(target) <= MenuInit.getSliderItem(MenuInit.betaMenu, "Beta.searchrange.Q"))
                        {
                            // Cast Q with the set delay
                            Utility.DelayAction.Add(
                                MenuInit.getSliderItem(MenuInit.betaMenu, "Beta.Cast.Q1.Delay"),
                                () => spells[Spells.Q].Cast());
                        }
                    }
                }

                spells[Spells.R].Range = 1000 + spells[Spells.R].Level * 1000;
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Exemplo n.º 20
0
        private static void OnUpdate(EventArgs args)
        {
            try
            {
                if (Player.IsDead)
                {
                    return;
                }

                if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo))
                {
                    ActiveModes.Combo();
                }

                if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.JungleClear) ||
                    Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.LaneClear))
                {
                    ActiveModes.Laneclear();
                    ActiveModes.Jungleclear();
                }

                if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Harass))
                {
                    ActiveModes.Harass();
                }

                SwitchCombo();
                SmiteCombo();
                Heal();
                KillstealHandler();

                if (MenuInit.getCheckBoxItem(MenuInit.betaMenu, "Beta.Cast.Q1") &&
                    MenuInit.getBoxItem(MenuInit.comboMenu, "Combo.Prio") == 2)
                {
                    if (Ferocity != 5)
                    {
                        return;
                    }

                    var searchrange = MenuInit.getSliderItem(MenuInit.betaMenu, "Beta.searchrange");
                    var target      = HeroManager.Enemies.FirstOrDefault(h => h.IsValidTarget(searchrange, false));

                    if (!target.IsValidTarget())
                    {
                        return;
                    }

                    if (RengarR)
                    {
                        if (Player.LSDistance(target) <= MenuInit.getSliderItem(MenuInit.betaMenu, "Beta.searchrange.Q"))
                        {
                            Utility.DelayAction.Add(
                                MenuInit.getSliderItem(MenuInit.betaMenu, "Beta.Cast.Q1.Delay"),
                                () => spells[Spells.Q].Cast());
                        }
                    }
                }

                spells[Spells.R].Range = 1000 + spells[Spells.R].Level * 1000;
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }