Exemplo n.º 1
0
        private void KillSteal()
        {
            if (Menu.GetBool("KillStealW") && W.IsReady())
            {
                foreach (var target in HeroManager.Enemies.Where(x => x.IsValidTarget(W.Range) && x.Health < W.GetDamage(x)))
                {
                    if (Orbwalking.InAutoAttackRange(target) && target.Health <= Me.GetAutoAttackDamage(target, true))
                    {
                        continue;
                    }

                    SpellManager.PredCast(W, target);
                    return;
                }
            }

            if (Menu.GetBool("KillStealR") && R.IsReady())
            {
                foreach (
                    var target in
                    HeroManager.Enemies.Where(
                        x =>
                        x.IsValidTarget(R.Range) && x.DistanceToPlayer() > Menu.GetSlider("rMenuMin") &&
                        Menu.GetBool("KillStealR" + x.ChampionName.ToLower()) && x.Health < R.GetDamage(x)))
                {
                    SpellManager.PredCast(R, target, true);
                    return;
                }
            }
        }
Exemplo n.º 2
0
        private void OnDoCast(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs Args)
        {
            if (!sender.IsMe)
            {
                return;
            }

            if (Args.SData.Name.Contains("GravesChargeShot"))
            {
                if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Burst &&
                    TargetSelector.GetSelectedTarget() != null && E.IsReady())
                {
                    var target = TargetSelector.GetSelectedTarget();
                    var pos    = Me.Position.Extend(target.Position, E.Range);
                    E.Cast(pos);
                }
            }

            if (Orbwalking.IsAutoAttack(Args.SData.Name))
            {
                if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo)
                {
                    var target = Args.Target as Obj_AI_Hero;

                    if (target != null && !target.IsDead && !target.IsZombie)
                    {
                        if (Menu.GetBool("ComboEAA") && E.IsReady())
                        {
                            ELogic(target);
                        }
                    }
                }

                if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.LaneClear)
                {
                    var target = Args.Target as Obj_AI_Minion;

                    if (target != null && !target.IsDead)
                    {
                        if (ManaManager.HasEnoughMana(Menu.GetSlider("JungleClearMana")) && ManaManager.SpellFarm)
                        {
                            if (Menu.GetBool("JungleClearE") && E.IsReady())
                            {
                                var mobs =
                                    MinionManager.GetMinions(Me.Position, W.Range, MinionTypes.All, MinionTeam.Neutral,
                                                             MinionOrderTypes.MaxHealth).Where(x => !x.Name.ToLower().Contains("mini"));

                                if (mobs.FirstOrDefault() != null)
                                {
                                    if (!Me.Spellbook.IsCastingSpell)
                                    {
                                        ELogic(mobs.FirstOrDefault());
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
Exemplo n.º 3
0
        private bool CanE(Obj_AI_Hero e, GameObjectProcessSpellCastEventArgs Args)
        {
            if (Orbwalking.IsAutoAttack(Args.SData.Name))
            {
                switch (e.ChampionName)
                {
                case "TwistedFate":
                    if (Args.SData.Name == "GoldCardLock" || Args.SData.Name == "RedCardLock" || Args.SData.Name == "BlueCardLock")
                    {
                        return(true);
                    }
                    break;

                case "Leona":
                    if (Args.SData.Name == "LeonaQ")
                    {
                        return(true);
                    }
                    break;

                default:
                    return(false);
                }
            }
            else
            {
                return(!Args.SData.Name.ToLower().Contains("summoner"));
            }

            return(false);
        }
Exemplo n.º 4
0
        private void Combo()
        {
            var target = TargetSelector.GetSelectedTarget() ??
                         TargetSelector.GetTarget(R.Range, TargetSelector.DamageType.Physical);

            if (target.Check(R.Range))
            {
                if (Menu.GetBool("ComboR") && R.IsReady() &&
                    Menu.GetSlider("ComboRLimit") >= GetRCount &&
                    target.IsValidTarget(R.Range))
                {
                    SpellManager.PredCast(R, target, true);
                }

                if (Menu.GetBool("ComboQ") && Q.IsReady() && target.IsValidTarget(Q.Range))
                {
                    SpellManager.PredCast(Q, target, true);
                }

                if (Menu.GetBool("ComboE") && E.IsReady() && target.IsValidTarget(E.Range))
                {
                    SpellManager.PredCast(E, target);
                }

                if (Menu.GetBool("ComboW") && W.IsReady() && target.IsValidTarget(W.Range) &&
                    target.DistanceToPlayer() > Orbwalking.GetRealAutoAttackRange(Me) && Me.CanAttack)
                {
                    W.Cast();
                }
            }
        }
Exemplo n.º 5
0
        private void Combo()
        {
            var target = TargetSelector.GetSelectedTarget() ??
                         TargetSelector.GetTarget(Q.Range, TargetSelector.DamageType.Physical);

            if (target.Check(Q.Range))
            {
                if (Menu.GetBool("ComboE") && E.IsReady() && Me.HasBuff("QuinnR"))
                {
                    E.CastOnUnit(target);
                }

                if (Menu.GetBool("ComboQ") && Q.IsReady() && !Me.HasBuff("QuinnR"))
                {
                    if (target.DistanceToPlayer() <= Orbwalking.GetRealAutoAttackRange(Me) && HavePassive(target))
                    {
                        return;
                    }

                    SpellManager.PredCast(Q, target, true);
                }

                if (Menu.GetBool("ComboW") && W.IsReady())
                {
                    var WPred = W.GetPrediction(target);

                    if ((NavMesh.GetCollisionFlags(WPred.CastPosition) == CollisionFlags.Grass ||
                         NavMesh.IsWallOfGrass(target.ServerPosition, 20)) && !target.IsVisible)
                    {
                        W.Cast();
                    }
                }
            }
        }
Exemplo n.º 6
0
        private void Combo()
        {
            var target = TargetSelector.GetTarget(R.Range, TargetSelector.DamageType.Physical);

            if (target.Check(R.Range))
            {
                if (Menu.GetBool("ComboQ") && Q.IsReady() && target.IsValidTarget(Q.Range))
                {
                    SpellManager.PredCast(Q, target);
                }

                if (Menu.GetBool("ComboE") && E.IsReady() && target.IsValidTarget(SearchERange))
                {
                    ELogic(target);
                }

                if (Menu.GetBool("ComboW") && W.IsReady() && target.IsValidTarget(W.Range) &&
                    (target.DistanceToPlayer() <= target.AttackRange + 70 ||
                     (target.DistanceToPlayer() >= Orbwalking.GetRealAutoAttackRange(Me) + 80)))
                {
                    SpellManager.PredCast(W, target);
                }

                if (Menu.GetBool("ComboR") && R.IsReady() && target.IsValidTarget(R.Range))
                {
                    R.CastIfWillHit(target, Menu.GetSlider("ComboRCount"));
                }
            }
        }
Exemplo n.º 7
0
        internal static void Init(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs Args)
        {
            if (sender == null || !sender.IsMe || Args.SData == null)
            {
                return;
            }

            if (Args.SData.Name.Contains("DariusAxeGrabCone"))
            {
                lastETime = Utils.TickCount;
            }

            if (Args.SData.Name.Contains("ItemTiamatCleave"))
            {
                if (Orbwalking.isCombo)
                {
                    if (!HeroManager.Enemies.Any(x => x.DistanceToPlayer() <= Orbwalking.GetRealAutoAttackRange(Me)))
                    {
                        return;
                    }

                    if (Menu.GetBool("ComboW") && W.IsReady())
                    {
                        W.Cast();
                    }
                }
            }
        }
Exemplo n.º 8
0
        private void OnPlayAnimation(Obj_AI_Base sender, GameObjectPlayAnimationEventArgs Args)
        {
            if (!sender.IsMe || Orbwalker.ActiveMode != Orbwalking.OrbwalkingMode.Burst)
            {
                return;
            }

            if (Args.Animation == "Spell3")
            {
                Orbwalking.ResetAutoAttackTimer();
                canE = false;

                if (Menu.GetBool("BurstER") && TargetSelector.GetSelectedTarget() != null && R.IsReady())
                {
                    var target = TargetSelector.GetSelectedTarget();

                    if (target != null)
                    {
                        Utility.DelayAction.Add(Game.Ping, () => R.Cast(target.ServerPosition, true));
                    }
                }
            }

            if ((Args.Animation == "Spell4" || Args.Animation == "785121b3") && TargetSelector.GetSelectedTarget() != null &&
                !Menu.GetBool("BurstER") && E.IsReady())
            {
                E.Cast(TargetSelector.GetSelectedTarget().Position, true);
            }
        }
Exemplo n.º 9
0
        private void BeforeAttack(Orbwalking.BeforeAttackEventArgs Args)
        {
            if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo)
            {
                var ForcusETarget =
                    HeroManager.Enemies.FirstOrDefault(
                        x =>
                        x.IsValidTarget(Orbwalking.GetRealAutoAttackRange(Me)) &&
                        x.HasBuff("kindredecharge"));

                var ForcusTarget =
                    HeroManager.Enemies.FirstOrDefault(
                        x =>
                        x.IsValidTarget(Orbwalking.GetRealAutoAttackRange(Me)) &&
                        x.HasBuff("kindredhittracker"));

                if (ForcusETarget.Check(Orbwalking.GetRealAutoAttackRange(Me)) &&
                    Menu.GetBool("ForcusE"))
                {
                    Orbwalker.ForceTarget(ForcusETarget);
                }
                else if (Menu.GetBool("Forcus") &&
                         ForcusTarget.Check(Orbwalking.GetRealAutoAttackRange(Me)))
                {
                    Orbwalker.ForceTarget(ForcusTarget);
                }
                else
                {
                    Orbwalker.ForceTarget(null);
                }
            }
        }
Exemplo n.º 10
0
        private void BeforeAttack(Orbwalking.BeforeAttackEventArgs args)
        {
            if (Menu.GetBool("Forcus"))
            {
                if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo ||
                    Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Mixed)
                {
                    foreach (var enemy in HeroManager.Enemies.Where(x => !x.IsDead && !x.IsZombie &&
                                                                    Orbwalking.InAutoAttackRange(x) &&
                                                                    x.HasBuff("kalistacoopstrikemarkally")))
                    {
                        Orbwalker.ForceTarget(enemy);
                    }
                }
                else if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.LaneClear)
                {
                    var all = MinionManager.GetMinions(Me.Position, Orbwalking.GetRealAutoAttackRange(Me),
                                                       MinionTypes.All, MinionTeam.NotAlly)
                              .Where(x => Orbwalking.InAutoAttackRange(x) && x.HasBuff("kalistacoopstrikemarkally"));

                    if (all.Any())
                    {
                        Orbwalker.ForceTarget(all.FirstOrDefault());
                    }
                }
            }
        }
Exemplo n.º 11
0
        private void OnDoCast(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs Args)
        {
            if (sender.IsMe && Orbwalking.IsAutoAttack(Args.SData.Name))
            {
                if (Args.Target is Obj_LampBulb)
                {
                    return;
                }

                if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo)
                {
                    var target = Args.Target as Obj_AI_Hero;

                    if (target != null)
                    {
                        if (Menu.GetBool("ComboE") && E.IsReady())
                        {
                            Cast_E(target, false);
                        }
                        else if (Menu.GetBool("ComboQ") && Q.IsReady())
                        {
                            Q.Cast(target, true);
                        }
                        else if (Menu.GetBool("ComboW") && W.IsReady())
                        {
                            W.Cast(target.Position, true);
                        }
                    }
                }

                if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.LaneClear)
                {
                    if (ManaManager.HasEnoughMana(Menu.GetSlider("JungleClearMana")) && ManaManager.SpellFarm)
                    {
                        var mobs = MinionManager.GetMinions(Q.Range, MinionTypes.All, MinionTeam.Neutral,
                                                            MinionOrderTypes.MaxHealth);

                        if (mobs.Any())
                        {
                            var mob = mobs.FirstOrDefault();

                            if (Menu.GetBool("JungleClearE") && E.IsReady())
                            {
                                var ex = Me.Position.Extend(Game.CursorPos, 150);

                                E.Cast(ex, true);
                            }
                            else if (Menu.GetBool("JungleClearQ") && Q.IsReady())
                            {
                                Q.Cast(mob, true);
                            }
                            else if (Menu.GetBool("JungleClearW") && W.IsReady())
                            {
                                W.Cast(mob, true);
                            }
                        }
                    }
                }
            }
        }
Exemplo n.º 12
0
        private static void LaneClear(GameObjectProcessSpellCastEventArgs Args)
        {
            if (Args.SData == null || !Orbwalking.IsAutoAttack(Args.SData.Name) || Args.Target == null ||
                !Orbwalking.isLaneClear || !Args.Target.IsEnemy ||
                !ManaManager.HasEnoughMana(Menu.GetSlider("LaneClearMana")) || !ManaManager.SpellFarm)
            {
                return;
            }

            if (Menu.GetBool("LaneClearW") && W.IsReady())
            {
                if (Args.Target.Type == GameObjectType.obj_AI_Turret || Args.Target.Type == GameObjectType.obj_Turret ||
                    Args.Target.Type == GameObjectType.obj_LampBulb)
                {
                    if (!Args.Target.IsDead)
                    {
                        W.Cast();
                    }
                }
                else
                {
                    var minion = (Obj_AI_Minion)Args.Target;

                    if (minion != null && minion.Health <= DamageCalculate.GetWDamage(minion))
                    {
                        W.Cast();
                        Orbwalker.ForceTarget(minion);
                    }
                }
            }
        }
Exemplo n.º 13
0
        internal static void InitJungle(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs Args)
        {
            if (!sender.IsMe || Args.SData == null || !Orbwalking.IsAutoAttack(Args.SData.Name) || !Orbwalking.isLaneClear ||
                !(Args.Target is Obj_AI_Minion))
            {
                return;
            }

            var mobs = MinionManager.GetMinions(E.Range + Me.AttackRange, MinionTypes.All,
                                                MinionTeam.Neutral, MinionOrderTypes.MaxHealth);
            var mob = mobs.FirstOrDefault();

            if (mob != null)
            {
                SpellManager.CastItem(true);

                if (Menu.GetBool("JungleClearE") && E.IsReady())
                {
                    E.Cast(mob.Position, true);
                }
                else if (Menu.GetBool("JungleClearQ") && Q.IsReady())
                {
                    SpellManager.CastQ(mob);
                }
                else if (Menu.GetBool("JungleClearW") && W.IsReady() && mob.IsValidTarget(W.Range))
                {
                    W.Cast(true);
                }
            }
        }
Exemplo n.º 14
0
        internal static void InitClear(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs Args)
        {
            if (!sender.IsMe || Args.SData == null || !Orbwalking.IsAutoAttack(Args.SData.Name) || !Orbwalking.isLaneClear)
            {
                return;
            }

            if (Menu.GetBool("LaneClearQ") && Q.IsReady())
            {
                if (Args.Target.Type == GameObjectType.obj_AI_Turret || Args.Target.Type == GameObjectType.obj_Turret ||
                    Args.Target.Type == GameObjectType.obj_LampBulb)
                {
                    if (Q.IsReady() && !Args.Target.IsDead)
                    {
                        SpellManager.CastQ((Obj_AI_Base)Args.Target);
                    }
                }
                else if (Args.Target is Obj_AI_Minion)
                {
                    var minion  = (Obj_AI_Minion)Args.Target;
                    var minions = MinionManager.GetMinions(Me.Position, 500f);

                    if (minion != null)
                    {
                        if (minions.Count >= 2)
                        {
                            SpellManager.CastItem(true);
                            SpellManager.CastQ(minion);
                        }
                    }
                }
            }
        }
Exemplo n.º 15
0
        private static void EDash(Obj_AI_Hero target)
        {
            if (target == null || target.IsDead || !E.IsReady())
            {
                return;
            }

            if (Menu.GetBool("ComboQ") && Q.IsReady() && qStack == 0 &&
                target.DistanceToPlayer() < Q.Range + Orbwalking.GetRealAutoAttackRange(Me))
            {
                return;
            }

            if (target.DistanceToPlayer() <= E.Range + (Q.IsReady() && qStack == 0 ? Q.Range : 0))
            {
                E.Cast(target.Position, true);
            }

            if (target.DistanceToPlayer() <= E.Range + (W.IsReady() ? W.Range : 0))
            {
                E.Cast(target.Position, true);
            }

            if (!Q.IsReady() && !W.IsReady() && target.DistanceToPlayer() < E.Range + Me.AttackRange)
            {
                E.Cast(target.Position, true);
            }
        }
Exemplo n.º 16
0
        private void LaneClear()
        {
            if (ManaManager.HasEnoughMana(Menu.GetSlider("LaneClearMana")) && ManaManager.SpellFarm)
            {
                if (Menu.GetBool("LaneClearQ") && Q.IsReady())
                {
                    var minions = MinionManager.GetMinions(Me.Position, Q.Range);

                    if (minions.Any())
                    {
                        if (Menu.GetBool("LaneClearQOut"))
                        {
                            var mins =
                                minions.Where(
                                    x =>
                                    x.DistanceToPlayer() > Orbwalking.GetRealAutoAttackRange(Me) &&
                                    x.Health < Q.GetDamage(x) &&
                                    HealthPrediction.GetHealthPrediction(x, 250) > 0);

                            Q.Cast(mins.Any() ? mins.FirstOrDefault() : minions.FirstOrDefault(), true);
                        }
                        else
                        {
                            Q.Cast(minions.FirstOrDefault(), true);
                        }
                    }
                }
            }
        }
Exemplo n.º 17
0
        private void OnDraw(EventArgs Args)
        {
            if (!Me.IsDead && !MenuGUI.IsShopOpen && !MenuGUI.IsChatOpen && !MenuGUI.IsScoreboardOpen)
            {
                if (Menu.GetBool("DrawQ") && Q.IsReady())
                {
                    Render.Circle.DrawCircle(Me.Position, Q.Range, Color.Green, 1);
                }

                if (Menu.GetBool("DrawW") && W.IsReady())
                {
                    Render.Circle.DrawCircle(Me.Position, W.Range, Color.FromArgb(9, 253, 242), 1);
                }

                if (Menu.GetBool("DrawE") && E.IsReady())
                {
                    Render.Circle.DrawCircle(Me.Position, E.Range, Color.FromArgb(188, 6, 248), 1);
                }

                if (Menu.GetBool("DrawR") && R.IsReady())
                {
                    Render.Circle.DrawCircle(Me.Position, R.Range, Color.FromArgb(19, 130, 234), 1);
                }

                if (Menu.GetBool("DrawBurst"))
                {
                    Render.Circle.DrawCircle(Me.Position, Orbwalking.GetRealAutoAttackRange(Me), Color.FromArgb(90, 255, 255), 1);
                }
            }
        }
Exemplo n.º 18
0
        private void Flee()
        {
            Orbwalking.MoveTo(Game.CursorPos);

            if (Menu.GetBool("FleeW") && W.IsReady())
            {
                W.Cast(Me.Position.Extend(Game.CursorPos, W.Range));
            }
        }
Exemplo n.º 19
0
        private void Flee()
        {
            Orbwalking.MoveTo(Game.CursorPos);

            if (Menu.GetBool("FleeE") && E.IsReady())
            {
                E.Cast(Me.Position - (Game.CursorPos - Me.Position));
            }
        }
Exemplo n.º 20
0
        private void Flee()
        {
            Orbwalking.MoveTo(Game.CursorPos);

            if (Menu.GetBool("FleeQ") && Q.IsReady())
            {
                Q.Cast(Me.ServerPosition.Extend(Game.CursorPos, Q.Range), true);
            }
        }
Exemplo n.º 21
0
        private void Flee()
        {
            Orbwalking.MoveTo(Game.CursorPos);

            if (Menu.GetBool("FleeW") && W.IsReady())
            {
                W.Cast();
            }
        }
Exemplo n.º 22
0
        private void Combo()
        {
            if (Menu.GetBool("ComboELogic") && E.IsReady())
            {
                var target = TargetSelector.GetTarget(975f, TargetSelector.DamageType.Physical);

                if (target.IsValidTarget(975f) && target.DistanceToPlayer() > Orbwalking.GetRealAutoAttackRange(Me))
                {
                    if (Utils.TickCount - CastSpellTime > 400)
                    {
                        Cast_E(target, true);
                    }
                }
            }

            if (Menu.GetBool("ComboQExtended") && Q.IsReady() && !Me.IsDashing() && !Me.IsWindingUp)
            {
                var target = TargetSelector.GetTarget(QExtend.Range, TargetSelector.DamageType.Physical);

                if (target.Check(QExtend.Range) && target.DistanceToPlayer() > Q.Range &&
                    (!E.IsReady() || (E.IsReady() && target.DistanceToPlayer() > 975f)))
                {
                    var pred       = QExtend.GetPrediction(target, true);
                    var collisions = MinionManager.GetMinions(Me.ServerPosition, Q.Range, MinionTypes.All,
                                                              MinionTeam.NotAlly);

                    if (!collisions.Any())
                    {
                        return;
                    }

                    foreach (var minion in collisions)
                    {
                        var poly = new Geometry.Polygon.Rectangle(Me.ServerPosition,
                                                                  Me.ServerPosition.Extend(minion.ServerPosition, QExtend.Range), QExtend.Width);

                        if (poly.IsInside(pred.UnitPosition))
                        {
                            Q.Cast(minion);
                        }
                    }
                }
            }

            if (Menu.GetBool("ComboR") && R.IsReady())
            {
                var target = TargetSelector.GetTarget(R.Range, TargetSelector.DamageType.Physical);

                if (target.Check(R.Range) &&
                    R.GetDamage(target) * (7.5 + 7.5 * Me.AttackSpeedMod) > target.Health &&
                    target.Distance(Me) > Orbwalking.GetAttackRange(Me) + 300)
                {
                    R.Cast(target);
                }
            }
        }
Exemplo n.º 23
0
        private void OnDoCast(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs Args)
        {
            if (!sender.IsMe || !Orbwalking.IsAutoAttack(Args.SData.Name))
            {
                return;
            }

            switch (Orbwalker.ActiveMode)
            {
            case Orbwalking.OrbwalkingMode.Combo:
                if (Menu.GetBool("ComboQ"))
                {
                    var target = (Obj_AI_Hero)Args.Target;

                    if (target != null && !target.IsDead && !target.IsZombie)
                    {
                        if (Me.HasBuff("asheqcastready"))
                        {
                            Q.Cast();
                            Orbwalking.ResetAutoAttackTimer();
                        }
                    }
                }
                break;

            case Orbwalking.OrbwalkingMode.LaneClear:
                if (ManaManager.HasEnoughMana(Menu.GetSlider("JungleClearMana")) && ManaManager.SpellFarm)
                {
                    if (Menu.GetBool("JungleClearQ") && Args.Target is Obj_AI_Minion)
                    {
                        var mobs = MinionManager.GetMinions(Me.Position, Orbwalking.GetRealAutoAttackRange(Me),
                                                            MinionTypes.All, MinionTeam.Neutral, MinionOrderTypes.MaxHealth);

                        if (mobs.Any())
                        {
                            foreach (var mob in mobs)
                            {
                                if (!mob.IsValidTarget(Orbwalking.GetRealAutoAttackRange(Me)) ||
                                    !(mob.Health > Me.GetAutoAttackDamage(mob) * 2))
                                {
                                    continue;
                                }

                                if (Me.HasBuff("asheqcastready"))
                                {
                                    Q.Cast();
                                    Orbwalking.ResetAutoAttackTimer();
                                }
                            }
                        }
                    }
                }
                break;
            }
        }
Exemplo n.º 24
0
        private void KillSteal()
        {
            if (R.Instance.Name == "JhinRShot")
            {
                return;
            }

            if (Menu.GetBool("KillStealQ") && Q.IsReady())
            {
                foreach (
                    var target in
                    HeroManager.Enemies.Where(
                        x => x.IsValidTarget(Q.Range) && x.Health < Me.GetSpellDamage(x, SpellSlot.Q)))
                {
                    if (target.Check(Q.Range))
                    {
                        Q.CastOnUnit(target, true);
                    }
                }
            }

            if (Menu.GetBool("KillStealW") && W.IsReady())
            {
                foreach (
                    var target in
                    HeroManager.Enemies.Where(
                        x => x.IsValidTarget(W.Range) && x.Health < Me.GetSpellDamage(x, SpellSlot.W)))
                {
                    if (target.Check(W.Range))
                    {
                        if (target.Health < Me.GetSpellDamage(target, SpellSlot.Q) && Q.IsReady() &&
                            target.IsValidTarget(Q.Range))
                        {
                            return;
                        }

                        if (Menu.GetBool("KillStealWInAttackRange") && Orbwalking.InAutoAttackRange(target))
                        {
                            SpellManager.PredCast(W, target, true);
                            return;
                        }

                        if (Orbwalking.InAutoAttackRange(target) && target.Health <= Me.GetAutoAttackDamage(target, true))
                        {
                            return;
                        }

                        SpellManager.PredCast(W, target, true);
                        return;
                    }
                }
            }
        }
Exemplo n.º 25
0
        internal static void Init()
        {
            var target = TargetSelector.GetSelectedTarget() ??
                         TargetSelector.GetTarget(900, TargetSelector.DamageType.Physical);

            if (target.Check(900f))
            {
                if (Menu.GetBool("ComboIgnite") && Ignite != SpellSlot.Unknown && Ignite.IsReady() &&
                    DamageCalculate.GetComboDamage(target) > target.Health)
                {
                    Me.Spellbook.CastSpell(Ignite, target);
                    return;
                }

                if (Menu.GetBool("ComboE") && E.IsReady() && Me.CanMoveMent() && target.DistanceToPlayer() <= 650 &&
                    target.DistanceToPlayer() > Orbwalking.GetRealAutoAttackRange(Me) + 100)
                {
                    EDash(target);
                }

                if (Menu.GetBool("ComboQ") && Q.IsReady() && Me.CanMoveMent() && qStack == 0 &&
                    target.DistanceToPlayer() <= Q.Range + Orbwalking.GetRealAutoAttackRange(Me) &&
                    target.DistanceToPlayer() > Orbwalking.GetRealAutoAttackRange(Me) + 50 &&
                    Utils.TickCount - lastQTime > 900)
                {
                    if (!Me.IsDashing())
                    {
                        SpellManager.CastQ(target);
                    }
                }

                if (Menu.GetBool("ComboW") && W.IsReady() &&
                    target.IsValidTarget(W.Range) && !target.HasBuffOfType(BuffType.SpellShield))
                {
                    WLogic(target);
                }

                if (Menu.GetBool("ComboR") && R.IsReady())
                {
                    if (Menu.GetKey("R1Combo") && R.Instance.Name == "RivenFengShuiEngine" && !E.IsReady())
                    {
                        if (target.DistanceToPlayer() < 500 && Me.CountEnemiesInRange(500) >= 1)
                        {
                            R.Cast(true);
                        }
                    }
                    else if (R.Instance.Name == "RivenIzunaBlade")
                    {
                        SpellManager.R2Logic(target);
                    }
                }
            }
        }
Exemplo n.º 26
0
        private void OnDoCast(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs Args)
        {
            if (sender.IsMe && Orbwalking.IsAutoAttack(Args.SData.Name))
            {
                if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo)
                {
                    var target = Args.Target as Obj_AI_Hero;

                    if (target != null)
                    {
                        if (Menu.GetBool("ComboR") && R.IsReady() && R.Instance.Ammo >= Menu.GetSlider("ComboRLimit"))
                        {
                            SpellManager.PredCast(R, target, true);
                        }
                        else if (Menu.GetBool("ComboQ") && Q.IsReady())
                        {
                            SpellManager.PredCast(Q, target, true);
                        }
                        else if (Menu.GetBool("ComboE") && E.IsReady())
                        {
                            E.Cast();
                        }
                    }
                }

                if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.LaneClear)
                {
                    if (ManaManager.HasEnoughMana(Menu.GetSlider("JungleClearMana")) && ManaManager.SpellFarm)
                    {
                        var mobs = MinionManager.GetMinions(R.Range, MinionTypes.All, MinionTeam.Neutral,
                                                            MinionOrderTypes.MaxHealth);

                        if (mobs.Any())
                        {
                            var mob = mobs.FirstOrDefault();

                            if (Menu.GetBool("JungleClearR") && R.IsReady() && R.Instance.Ammo >= Menu.GetSlider("JungleClearRLimit"))
                            {
                                R.Cast(mob, true);
                            }
                            else if (Menu.GetBool("JungleClearQ") && Q.IsReady())
                            {
                                Q.Cast(mob, true);
                            }
                            else if (Menu.GetBool("JungleClearE") && E.IsReady())
                            {
                                E.Cast();
                            }
                        }
                    }
                }
            }
        }
Exemplo n.º 27
0
        private void LaneClear()
        {
            if (ManaManager.HasEnoughMana(Menu.GetSlider("LaneClearMana")) && ManaManager.SpellFarm)
            {
                var minions = MinionManager.GetMinions(Me.Position, R.Range);

                if (minions.Any())
                {
                    if (Menu.GetBool("LaneClearR") && R.IsReady() && Menu.GetSlider("LaneClearRLimit") >= GetRCount)
                    {
                        var rMinion =
                            minions.FirstOrDefault(x => x.DistanceToPlayer() > Orbwalking.GetRealAutoAttackRange(Me));

                        if (rMinion != null && HealthPrediction.GetHealthPrediction(rMinion, 250) > 0)
                        {
                            R.Cast(rMinion);
                        }
                    }

                    if (Menu.GetBool("LaneClearE") && E.IsReady())
                    {
                        var eMinions = MinionManager.GetMinions(Me.Position, E.Range);
                        var eFarm    =
                            MinionManager.GetBestLineFarmLocation(eMinions.Select(x => x.Position.To2D()).ToList(),
                                                                  E.Width, E.Range);

                        if (eFarm.MinionsHit >= Menu.GetSlider("LaneClearECount"))
                        {
                            E.Cast(eFarm.Position);
                        }
                    }

                    if (Menu.GetBool("LaneClearQ") && Q.IsReady())
                    {
                        var qMinion =
                            MinionManager
                            .GetMinions(
                                Me.Position, Q.Range)
                            .FirstOrDefault(
                                x =>
                                x.Health < Q.GetDamage(x) &&
                                HealthPrediction.GetHealthPrediction(x, 250) > 0 &&
                                x.Health > Me.GetAutoAttackDamage(x));

                        if (qMinion != null)
                        {
                            Q.Cast(qMinion);
                        }
                    }
                }
            }
        }
Exemplo n.º 28
0
        private void OnDoCast(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs Args)
        {
            if (sender.IsMe && Orbwalking.IsAutoAttack(Args.SData.Name))
            {
                var t = (Obj_AI_Base)Args.Target;

                if (t != null && !t.IsDead && !t.IsZombie)
                {
                    if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo)
                    {
                        if (t is Obj_AI_Hero)
                        {
                            var target = (Obj_AI_Hero)Args.Target;

                            if (Menu.GetBool("ComboQ") && Q.IsReady() && t.IsValidTarget(Q.Range))
                            {
                                SpellManager.PredCast(Q, target);
                            }

                            if (Menu.GetBool("ComboW") && W.IsReady() && t.IsValidTarget(W.Range))
                            {
                                SpellManager.PredCast(W, target, true);
                            }
                        }
                    }

                    if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Mixed)
                    {
                        if (ManaManager.HasEnoughMana(Menu.GetSlider("HarassMana")))
                        {
                            if (t is Obj_AI_Hero)
                            {
                                var target = (Obj_AI_Hero)Args.Target;

                                if (Menu.GetBool("Harasstarget" + target.ChampionName.ToLower()))
                                {
                                    if (Menu.GetBool("HarassQ") && Q.IsReady() && t.IsValidTarget(Q.Range))
                                    {
                                        SpellManager.PredCast(Q, target);
                                    }

                                    if (Menu.GetBool("HarassW") && W.IsReady() && t.IsValidTarget(W.Range))
                                    {
                                        SpellManager.PredCast(W, target, true);
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
Exemplo n.º 29
0
        private void OnProcessSpellCast(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs Args)
        {
            if (!sender.IsMe)
            {
                return;
            }

            if (Args.SData.Name.Contains("GravesMove"))
            {
                Orbwalking.ResetAutoAttackTimer();
                canE = false;
            }
        }
Exemplo n.º 30
0
        private void OnDoCast(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs Args)
        {
            if (sender.IsMe && Orbwalking.IsAutoAttack(Args.SData.Name))
            {
                if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo)
                {
                    var target = Args.Target as Obj_AI_Hero;

                    if (target != null)
                    {
                        if (!target.IsDead && !target.IsZombie)
                        {
                            if (Menu.GetBool("ComboQ") && Q.IsReady())
                            {
                                if (Menu.GetBool("ComboMana"))
                                {
                                    if (Me.Mana > Q.ManaCost + E.ManaCost)
                                    {
                                        SpellManager.PredCast(Q, target);
                                    }
                                }
                                else
                                {
                                    SpellManager.PredCast(Q, target);
                                }
                            }
                        }
                    }
                }

                if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.LaneClear)
                {
                    if (ManaManager.HasEnoughMana(Menu.GetSlider("JungleClearMana")) && ManaManager.SpellFarm)
                    {
                        var mobs = MinionManager.GetMinions(Q.Range, MinionTypes.All, MinionTeam.Neutral,
                                                            MinionOrderTypes.MaxHealth);

                        if (mobs.Any())
                        {
                            var mob = mobs.FirstOrDefault();

                            if (Menu.GetBool("JungleClearQ") && Q.IsReady())
                            {
                                Q.Cast(mob, true);
                            }
                        }
                    }
                }
            }
        }