Beispiel #1
0
        private static void Clear()
        {
            var   mob  = Jungle.GetNearest(player.Position);
            float perc = config.Item("minmana", true).GetValue <Slider>().Value / 100f;

            if (player.Mana < player.MaxMana * perc)
            {
                return;
            }
            if (config.Item("useeLC", true).GetValue <bool>() && E.CanCast(mob) && CheckWalls(player, mob))
            {
                E.CastOnUnit(mob);
            }
            MinionManager.FarmLocation bestPositionQ =
                Q.GetLineFarmLocation(MinionManager.GetMinions(Q.Range, MinionTypes.All, MinionTeam.NotAlly));
            if (bestPositionQ.MinionsHit >= config.Item("qMinHit", true).GetValue <Slider>().Value&&
                config.Item("useqLC", true).GetValue <bool>())
            {
                Q.Cast(bestPositionQ.Position);
            }
        }
Beispiel #2
0
        private static void AfterAttack(AttackableUnit unit, AttackableUnit target)
        {
            if (CanQ2)
            {
                return;
            }
            var nearestMob = Jungle.GetNearest(player.Position);

            if (unit.IsMe && Q.IsReady() &&
                (((orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo && config.Item("useq", true).GetValue <bool>() &&
                   !Orbwalking.CanAttack()) ||
                  (orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Mixed &&
                   config.Item("useqH", true).GetValue <bool>())) && target is AIHeroClient) ||
                (config.Item("useqLC", true).GetValue <bool>() && nearestMob != null &&
                 nearestMob.Distance(player.Position) < player.AttackRange + 30))
            {
                Q.Cast();
                Orbwalking.ResetAutoAttackTimer();
                //EloBuddy.Player.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPos);
            }
        }
Beispiel #3
0
        private static void Clear()
        {
            var mob  = Jungle.GetNearest(player.Position);
            var perc = getSliderItem(menuLC, "minmana") / 100f;

            if (player.Mana < player.MaxMana * perc)
            {
                return;
            }
            if (getCheckBoxItem(menuLC, "useeLC") && E.CanCast(mob) && CheckWalls(player, mob))
            {
                E.CastOnUnit(mob, getCheckBoxItem(config, "packets"));
            }
            var bestPositionQ =
                Q.GetLineFarmLocation(MinionManager.GetMinions(Q.Range, MinionTypes.All, MinionTeam.NotAlly));

            if (bestPositionQ.MinionsHit >= getSliderItem(menuLC, "qMinHit") && getCheckBoxItem(menuLC, "useqLC"))
            {
                Q.Cast(bestPositionQ.Position, getCheckBoxItem(config, "packets"));
            }
        }
Beispiel #4
0
        private void Clear()
        {
            var mob = Jungle.GetNearest(player.Position);

            if (mob != null && getCheckBoxItem(menuLC, "usewLCSteal") && CanW && W.CanCast(mob) &&
                player.CalcDamage(mob, DamageType.Physical, Wdmg(mob)) > mob.Health)
            {
                W.Cast(mob, getCheckBoxItem(config, "packets"));
            }
            var perc = getSliderItem(menuLC, "minmana") / 100f;

            if (player.Mana < player.MaxMana * perc)
            {
                return;
            }
            var minions = MinionManager.GetMinions(W.Range, MinionTypes.All, MinionTeam.NotAlly);

            if (getCheckBoxItem(menuLC, "useeLC") && E.IsReady() &&
                getSliderItem(menuLC, "ehitLC") <= minions.Count)
            {
                E.Cast(getCheckBoxItem(config, "packets"));
            }
        }
Beispiel #5
0
 private void Orbwalking_BeforeAttack(Orbwalking.BeforeAttackEventArgs args)
 {
     if (args.Unit.IsMe && orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.LaneClear)
     {
         var mob = Jungle.GetNearest(player.Position);
         if (mob != null && config.Item("useqLCSteal").GetValue <bool>() && Q.IsReady() &&
             Q.GetDamage(mob) > mob.Health)
         {
             Q.Cast(config.Item("packets").GetValue <bool>());
         }
         if (mob != null && config.Item("useqbsmite").GetValue <bool>() && Q.IsReady() &&
             Jungle.SmiteReady(config.Item("useSmite").GetValue <KeyBind>().Active) &&
             Q.GetDamage(mob) + Jungle.smiteDamage(mob) > mob.Health)
         {
             Q.Cast(config.Item("packets").GetValue <bool>());
         }
     }
     if (args.Unit.IsMe && Q.IsReady() && config.Item("useq").GetValue <bool>() && args.Target is Obj_AI_Hero &&
         Q.GetDamage((Obj_AI_Base)args.Target) > args.Target.Health)
     {
         Q.Cast(config.Item("packets").GetValue <bool>());
     }
 }
Beispiel #6
0
        private void Clear()
        {
            var target = Jungle.GetNearest(player.Position, GetTargetRange());

            if (config.Item("useqLC", true).GetValue <bool>() && Q.IsReady() && !E.IsCharging)
            {
                if (target != null && Q.CanCast(target))
                {
                    Q.Cast(target.Position, config.Item("packets").GetValue <bool>());
                }
                else
                {
                    MinionManager.FarmLocation bestPositionQ =
                        Q.GetLineFarmLocation(MinionManager.GetMinions(Q.Range, MinionTypes.All, MinionTeam.NotAlly));
                    if (bestPositionQ.MinionsHit >= config.Item("qMinHit", true).GetValue <Slider>().Value)
                    {
                        Q.Cast(bestPositionQ.Position, config.Item("packets").GetValue <bool>());
                    }
                }
            }
            if (config.Item("usewLC", true).GetValue <bool>() && W.IsReady() && !E.IsCharging)
            {
                if (target != null && target.Distance(player) < W.Range)
                {
                    W.Cast(config.Item("packets").GetValue <bool>());
                }
                else
                {
                    if (Environment.Minion.countMinionsInrange(player.Position, W.Range) >=
                        config.Item("wMinHit", true).GetValue <Slider>().Value)
                    {
                        W.Cast(config.Item("packets").GetValue <bool>());
                    }
                }
            }
            if (config.Item("collectBlobs", true).GetValue <bool>() && !E.IsCharging)
            {
                var blob =
                    ObjectManager.Get <Obj_AI_Base>()
                    .Where(
                        o =>
                        !o.IsDead && o.IsValid && o.Name == "BlobDrop" && o.Team == player.Team &&
                        o.Distance(player) < Orbwalking.GetRealAutoAttackRange(player))
                    .OrderBy(o => o.Distance(player))
                    .FirstOrDefault();
                if (blob != null && Orbwalking.CanMove(300) && !Orbwalking.CanAttack() && !player.IsWindingUp)
                {
                    orbwalker.SetMovement(false);
                    player.IssueOrder(GameObjectOrder.MoveTo, blob.Position);
                }
            }
            if (config.Item("useeLC", true).GetValue <bool>() && E.IsReady())
            {
                if (target != null && target.IsValidTarget())
                {
                    CastE(target);
                }
                else
                {
                    MinionManager.FarmLocation bestPositionE =
                        E.GetCircularFarmLocation(
                            MinionManager.GetMinions(eRanges[E.Level - 1], MinionTypes.All, MinionTeam.NotAlly));
                    var castPos = Vector3.Zero;
                    if (bestPositionE.MinionsHit < config.Item("eMinHit", true).GetValue <Slider>().Value&&
                        farmPos.IsValid())
                    {
                        castPos = farmPos;
                    }
                    if (bestPositionE.MinionsHit >= config.Item("eMinHit", true).GetValue <Slider>().Value)
                    {
                        castPos = bestPositionE.Position.To3D();
                    }
                    if (castPos.IsValid())
                    {
                        farmPos = bestPositionE.Position.To3D();
                        Utility.DelayAction.Add(5000, () => { farmPos = Vector3.Zero; });
                        CastE(castPos);
                    }
                }
            }
        }
Beispiel #7
0
        private void Game_OnGameUpdate(EventArgs args)
        {
            if (FpsBalancer.CheckCounter())
            {
                return;
            }
            orbwalker.SetAttack(true);
            AIHeroClient target   = LeagueSharp.Common.TargetSelector.GetTarget(1300, LeagueSharp.Common.TargetSelector.DamageType.Magical, true);
            var          combodmg = 0f;

            if (target != null)
            {
                combodmg = ComboDamage(target);
            }
            switch (orbwalker.ActiveMode)
            {
            case Orbwalking.OrbwalkingMode.Combo:
                Combo(combodmg);
                break;

            case Orbwalking.OrbwalkingMode.Mixed:
                Harass();
                break;

            case Orbwalking.OrbwalkingMode.LaneClear:
                Clear();
                break;

            case Orbwalking.OrbwalkingMode.LastHit:
                break;

            default:
                break;
            }
            if (config.Item("autoQ", true).GetValue <bool>())
            {
                if (Q.IsReady() && savedQ != null)
                {
                    DetonateQ();
                }
            }
            if (savedQ != null && !SimpleQ)
            {
                var mob = Jungle.GetNearest(player.Position);
                if (mob != null && getQdamage(mob) > mob.Health)
                {
                    Q.Cast();
                }
            }
            if (config.Item("insec", true).GetValue <KeyBind>().Active)
            {
                if (target == null)
                {
                    EloBuddy.Player.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPos);
                    return;
                }
                CastE(target);
                if (savedQ != null)
                {
                    if (savedQ != null && !SimpleQ /*&& target.Distance(qPos) > QExplosionRange*/ &&
                        target.Distance(player) < R.Range - 100 &&
                        target.Position.Distance(savedQ.position) < 550 + QExplosionRange / 2)
                    {
                        HandeR(target, savedQ.position, true);
                    }
                }
                else
                {
                    castInsec(target);
                }

                Orbwalking.MoveTo(Game.CursorPos);
                DetonateQ();
            }
        }
Beispiel #8
0
 private static void AfterAttack(AttackableUnit unit, AttackableUnit target)
 {
     if (unit.IsMe && Q.IsReady() && ((orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo && config.Item("useq").GetValue <bool>() && target.IsEnemy && target.Team != player.Team) || (config.Item("useqLC").GetValue <bool>() && Jungle.GetNearest(player.Position).Distance(player.Position) < player.AttackRange + 30)))
     {
         Q.Cast(config.Item("packets").GetValue <bool>());
         Orbwalking.ResetAutoAttackTimer();
         //player.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPos);
         return;
     }
     if (unit.IsMe && Q.IsReady() && orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.LaneClear && config.Item("useqLC").GetValue <bool>() && Environment.Minion.countMinionsInrange(player.Position, 600f) > 1)
     {
         Q.Cast(config.Item("packets").GetValue <bool>());
         Orbwalking.ResetAutoAttackTimer();
         //player.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPos);
     }
 }
Beispiel #9
0
        private void Clear()
        {
            var target = Jungle.GetNearest(player.Position, GetTargetRange());

            if (getCheckBoxItem(menuLC, "useqLC") && Q.IsReady() && !E.IsCharging)
            {
                if (target != null && Q.CanCast(target))
                {
                    Q.Cast(target.Position, getCheckBoxItem(config, "packets"));
                }
                else
                {
                    var bestPositionQ =
                        Q.GetLineFarmLocation(MinionManager.GetMinions(Q.Range, MinionTypes.All, MinionTeam.NotAlly));
                    if (bestPositionQ.MinionsHit >= getSliderItem(menuLC, "qMinHit"))
                    {
                        Q.Cast(bestPositionQ.Position, getCheckBoxItem(config, "packets"));
                    }
                }
            }
            if (getCheckBoxItem(menuLC, "usewLC") && W.IsReady() && !E.IsCharging)
            {
                if (target != null && target.LSDistance(player) < W.Range)
                {
                    W.Cast(getCheckBoxItem(config, "packets"));
                }
                else
                {
                    if (Helpers.Environment.Minion.countMinionsInrange(player.Position, W.Range) >=
                        getSliderItem(menuLC, "wMinHit"))
                    {
                        W.Cast(getCheckBoxItem(config, "packets"));
                    }
                }
            }
            if (getCheckBoxItem(menuLC, "collectBlobs") && !E.IsCharging)
            {
                var blob =
                    ObjectManager.Get <Obj_AI_Base>()
                    .Where(
                        o =>
                        !o.IsDead && o.IsValid && o.Name == "BlobDrop" && o.Team == player.Team &&
                        o.LSDistance(player) < Orbwalking.GetRealAutoAttackRange(player))
                    .OrderBy(o => o.LSDistance(player))
                    .FirstOrDefault();
                if (blob != null && !Orbwalker.CanAutoAttack && !Orbwalker.IsAutoAttacking)
                {
                    Orbwalker.DisableMovement = true;
                    Player.IssueOrder(GameObjectOrder.MoveTo, blob.Position);
                }
            }
            if (getCheckBoxItem(menuLC, "useeLC") && E.IsReady())
            {
                if (target != null && target.LSIsValidTarget())
                {
                    CastE(target);
                }
                else
                {
                    var bestPositionE =
                        E.GetCircularFarmLocation(
                            MinionManager.GetMinions(eRanges[E.Level - 1], MinionTypes.All, MinionTeam.NotAlly));
                    var castPos = Vector3.Zero;
                    if (bestPositionE.MinionsHit < getSliderItem(menuLC, "eMinHit") &&
                        farmPos.IsValid())
                    {
                        castPos = farmPos;
                    }
                    if (bestPositionE.MinionsHit >= getSliderItem(menuLC, "eMinHit"))
                    {
                        castPos = bestPositionE.Position.To3D();
                    }
                    if (castPos.IsValid())
                    {
                        farmPos = bestPositionE.Position.To3D();
                        Utility.DelayAction.Add(5000, () => { farmPos = Vector3.Zero; });
                        CastE(castPos);
                    }
                }
            }
        }
Beispiel #10
0
        private void Game_OnGameUpdate(EventArgs args)
        {
            orbwalker.SetAttack(true);
            Jungle.CastSmite(config.Item("useSmite").GetValue <KeyBind>().Active);

            Obj_AI_Hero target   = TargetSelector.GetTarget(1300, TargetSelector.DamageType.Magical, true);
            var         combodmg = 0f;

            if (target != null)
            {
                combodmg = ComboDamage(target);
            }
            switch (orbwalker.ActiveMode)
            {
            case Orbwalking.OrbwalkingMode.Combo:
                Combo(combodmg);
                break;

            case Orbwalking.OrbwalkingMode.Mixed:
                Harass();
                break;

            case Orbwalking.OrbwalkingMode.LaneClear:
                Clear();
                break;

            case Orbwalking.OrbwalkingMode.LastHit:
                break;

            default:
                break;
            }
            if (config.Item("autoQ", true).GetValue <bool>())
            {
                if (Q.IsReady() && config.Item("useqH", true).GetValue <bool>() && savedQ != null)
                {
                    DetonateQ();
                }
            }
            if (savedQ != null && !SimpleQ)
            {
                var mob = Jungle.GetNearest(player.Position);
                if (mob != null && getQdamage(mob) > mob.Health)
                {
                    Q.Cast();
                }
            }
            if (config.Item("insec", true).GetValue <KeyBind>().Active)
            {
                if (target == null)
                {
                    player.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPos);
                    return;
                }
                else if (savedQ != null)
                {
                    if (E.CanCast(target) &&
                        Prediction.GetPrediction(target, 0.2f).UnitPosition.Distance(savedQ.position) <
                        500 + QExplosionRange / 2)
                    {
                        E.CastIfHitchanceEquals(target, HitChance.High, config.Item("packets").GetValue <bool>());
                    }
                    if (savedQ != null && !SimpleQ /*&& target.Distance(qPos) > QExplosionRange*/ &&
                        target.Distance(player) < R.Range - 100 &&
                        target.Position.Distance(savedQ.position) < 550 + QExplosionRange / 2 &&
                        !target.HasBuffOfType(BuffType.Knockback))
                    {
                        HandeR(target, savedQ.position, true);
                    }
                    DetonateQ();
                }
                Orbwalking.Orbwalk(target, Game.CursorPos, 90, 90);
            }
        }
Beispiel #11
0
 private static void AfterAttack(AttackableUnit unit, AttackableUnit target)
 {
     if (unit.IsMe && Q.IsReady() && ((orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo && config.Item("useq").GetValue <bool>() && target is Obj_AI_Hero) || (config.Item("useqLC").GetValue <bool>() && Jungle.GetNearest(player.Position).Distance(player.Position) < player.AttackRange + 30)))
     {
         Q.Cast(config.Item("packets").GetValue <bool>());
         Orbwalking.ResetAutoAttackTimer();
         //player.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPos);
     }
 }
Beispiel #12
0
        private static void Game_OnGameUpdate(EventArgs args)
        {
            GetPassive();
            currEnergy = me.Mana;
            bool minionBlock = false;

            foreach (Obj_AI_Minion minion in MinionManager.GetMinions(me.Position, me.AttackRange, MinionTypes.All, MinionTeam.Enemy, MinionOrderTypes.None))
            {
                if (HealthPrediction.GetHealthPrediction(minion, 3000) <= Damage.GetAutoAttackDamage(me, minion, false))
                {
                    minionBlock = true;
                }
            }
            if (config.Item("useeflash").GetValue <KeyBind>().Active&& me.Spellbook.CanUseSpell(me.GetSpellSlot("SummonerFlash")) == SpellState.Ready)
            {
                //Game.PrintChat("flashCombo");
                FlashCombo();
            }
            switch (orbwalker.ActiveMode)
            {
            case Orbwalking.OrbwalkingMode.Combo:
                Combo();
                break;

            case Orbwalking.OrbwalkingMode.Mixed:
                if (!minionBlock)
                {
                    Harass();
                }
                Ulti();
                break;

            case Orbwalking.OrbwalkingMode.LaneClear:
                LasthitQ();
                Clear();
                Ulti();
                break;

            case Orbwalking.OrbwalkingMode.LastHit:
                LasthitQ();
                Ulti();
                break;

            default:
                if (!minionBlock)
                {
                    Ulti();
                    //AutoQ();
                    //AutoW();
                }
                break;
            }
            if (config.Item("autotauntattower").GetValue <bool>())
            {
                var enemy = getEnemiesAtMyTurret(me);
                if (getEnemiesAtMyTurret(me).IsValid&& E.CanCast(enemy))
                {
                    E.Cast(enemy, config.Item("packets").GetValue <bool>());
                }
            }
            if (config.Item("useSmite").GetValue <bool>() && Jungle.smiteSlot != SpellSlot.Unknown)
            {
                Jungle.setSmiteSlot();
                var  target     = Jungle.GetNearest(me.Position);
                bool smiteReady = ObjectManager.Player.Spellbook.CanUseSpell(Jungle.smiteSlot) == SpellState.Ready;
                if (target != null)
                {
                    if (Jungle.smite.CanCast(target) && smiteReady && me.Distance(target.Position) <= Jungle.smite.Range && Jungle.smiteDamage() >= target.Health)
                    {
                        Jungle.CastSmite(target);
                    }
                }
            }
        }