Beispiel #1
0
        private static void LaneClear()
        {
            var  minions    = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, Q.Range, MinionTypes.All, MinionTeam.NotAlly);
            bool jungleMobs = minions.Any(x => x.Team == GameObjectTeam.Neutral);

            if ((Config.Item("QLaneClear").GetValue <bool>() || jungleMobs))
            {
                MinionManager.FarmLocation farmLocation = Q.GetLineFarmLocation(minions);
                if (farmLocation.Position.IsValid())
                {
                    if (farmLocation.MinionsHit >= 2 || jungleMobs)
                    {
                        Q.Cast(farmLocation.Position);
                    }
                }
            }
            if (Config.Item("WLaneClear").GetValue <bool>())
            {
                if (Player.Mana / Player.MaxMana * 100 <= 35)
                {
                    PickBlue();
                }
                else
                {
                    PickRed();
                }
            }
        }
Beispiel #2
0
        private void Farm()
        {
            if (!ManaManager.HasMana("Farm"))
            {
                return;
            }

            List <Obj_AI_Base> allMinionsE = MinionManager.GetMinions(Player.ServerPosition, E.Range,
                                                                      MinionTypes.All, MinionTeam.NotAlly);

            var useQ = menu.Item("UseQFarm", true).GetValue <bool>();
            var useE = menu.Item("UseEFarm", true).GetValue <bool>();

            if (useQ && Q.IsReady())
            {
                SpellCastManager.CastBasicFarm(Q);
            }

            if (useE && allMinionsE.Count > 0 && E.IsReady() && ESpell.ToggleState == 1)
            {
                MinionManager.FarmLocation ePos = E.GetCircularFarmLocation(allMinionsE);

                if (ePos.MinionsHit > 1)
                {
                    E.Cast();
                }
            }
        }
Beispiel #3
0
        private void Farm()
        {
            if (player.ManaPercent < 60)
            {
                return;
            }

            List <Obj_AI_Base> allMinionsQ = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, Q.Range,
                                                                      MinionTypes.All, MinionTeam.NotAlly);
            List <Obj_AI_Base> allMinionsW = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, W.Range,
                                                                      MinionTypes.All, MinionTeam.NotAlly);


            if (Q.IsReady())
            {
                MinionManager.FarmLocation qPos = Q.GetLineFarmLocation(allMinionsQ);
                if (qPos.MinionsHit >= 3)
                {
                    Q.Cast(qPos.Position);
                }
            }

            if (allMinionsW.Count > 0 && W.IsReady())
            {
                W.Cast();
            }
        }
Beispiel #4
0
        private void Clear()
        {
            float perc = config.Item("minmana", true).GetValue <Slider>().Value / 100f;

            if (player.Mana < player.MaxMana * perc)
            {
                return;
            }
            if (config.Item("useqLC", true).GetValue <bool>() && Q.IsReady())
            {
                MinionManager.FarmLocation bestPositionQ =
                    Q.GetCircularFarmLocation(MinionManager.GetMinions(Q.Range, MinionTypes.All, MinionTeam.NotAlly));

                if (bestPositionQ.MinionsHit >= config.Item("qMinHit", true).GetValue <Slider>().Value)
                {
                    Q.Cast(bestPositionQ.Position);
                }
            }
            if (config.Item("useeLC", true).GetValue <bool>() && E.IsReady())
            {
                MinionManager.FarmLocation bestPositionE =
                    E.GetLineFarmLocation(
                        MinionManager.GetMinions(
                            ObjectManager.Player.ServerPosition, E.Range, MinionTypes.All, MinionTeam.NotAlly));

                if (bestPositionE.MinionsHit >= config.Item("eMinHit", true).GetValue <Slider>().Value)
                {
                    E.Cast(bestPositionE.Position);
                }
            }
        }
Beispiel #5
0
        private void Clear()
        {
            if (Environment.Minion.KillableMinion(player.AttackRange))
            {
                return;
            }
            float perc = config.Item("minmana", true).GetValue <Slider>().Value / 100f;

            if (player.Mana < player.MaxMana * perc)
            {
                return;
            }
            MinionManager.FarmLocation bestPositionQ =
                Q.GetLineFarmLocation(MinionManager.GetMinions(Q.Range, MinionTypes.All, MinionTeam.NotAlly));
            if (config.Item("useqLC", true).GetValue <bool>() && Q.IsReady())
            {
                if (bestPositionQ.MinionsHit >= config.Item("qhitLC", true).GetValue <Slider>().Value)
                {
                    Q.Cast(bestPositionQ.Position);
                }
                var jungleMob = Jungle.GetNearest(player.Position, Q.Range * 0.75f);
                if (jungleMob != null && jungleMob.Health > player.GetAutoAttackDamage(jungleMob, true) * 2)
                {
                    Q.Cast(jungleMob.Position);
                }
            }
        }
Beispiel #6
0
        private void Farm()
        {
            List <Obj_AI_Base> allMinionsQ = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, Q.Range,
                                                                      MinionTypes.All, MinionTeam.NotAlly);
            List <Obj_AI_Base> allMinionsE = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, E.Range,
                                                                      MinionTypes.All, MinionTeam.NotAlly);
            List <Obj_AI_Base> allMinionsW = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, W.Range,
                                                                      MinionTypes.All, MinionTeam.NotAlly);

            var useQ = menu.Item("UseQFarm").GetValue <bool>();
            var useW = menu.Item("UseWFarm").GetValue <bool>();
            var useE = menu.Item("UseEFarm").GetValue <bool>();

            if (useQ && allMinionsQ.Count > 0 && Q.IsReady() && allMinionsQ[0].IsValidTarget(Q.Range))
            {
                Q.Cast(allMinionsQ[0], packets());
            }

            if (useE && allMinionsQ.Count > 0 && E.IsReady() && allMinionsQ[0].IsValidTarget(E.Range))
            {
                E.Cast(allMinionsE[0], packets());
            }

            if (useW && W.IsReady())
            {
                MinionManager.FarmLocation wPos = E.GetCircularFarmLocation(allMinionsW);
                if (wPos.MinionsHit >= 2)
                {
                    W.Cast();
                }
            }
        }
Beispiel #7
0
 private void Clear()
 {
     if (player.Spellbook.IsAutoAttacking)
     {
         return;
     }
     if (config.Item("useqLC", true).GetValue <bool>() && Q.IsReady() && !player.IsDashing())
     {
         var minis = MinionManager.GetMinions(player.AttackRange + 50, MinionTypes.All, MinionTeam.NotAlly);
         if (Environment.Minion.countMinionsInrange(player.Position, Q.Range) >=
             config.Item("minimumMini", true).GetValue <Slider>().Value&&
             minis.Count(m => m.Health - Q.GetDamage(m) < 50 && m.Health - Q.GetDamage(m) > 0) == 0 &&
             (!Environment.Minion.KillableMinion(player.AttackRange) || !Orbwalking.CanAttack()))
         {
             Q.Cast();
             return;
         }
     }
     if (config.Item("useeLC", true).GetValue <bool>() && E.IsReady())
     {
         var minionsForE = MinionManager.GetMinions(
             ObjectManager.Player.ServerPosition, E.Range, MinionTypes.All, MinionTeam.NotAlly);
         MinionManager.FarmLocation bestPosition = E.GetLineFarmLocation(minionsForE);
         if (bestPosition.Position.IsValid() &&
             !player.Position.Extend(bestPosition.Position.To3D(), E.Range).UnderTurret(true) &&
             !bestPosition.Position.IsWall())
         {
             if (bestPosition.MinionsHit >= 2)
             {
                 E.Cast(bestPosition.Position);
             }
         }
     }
 }
Beispiel #8
0
        private void goLaneclearGo()
        {
            List <Obj_AI_Base> allMinions = MinionManager.GetMinions(player.ServerPosition, E.Range);

            if (menu.Item("useQL").GetValue <bool>() && Q.IsReady())
            {
                foreach (
                    Obj_AI_Base minion in
                    allMinions.Where(minion => minion.IsValidTarget()).Where(
                        minion => player.Distance(minion) < Q.Range))
                {
                    Q.Cast(minion, true);
                }
            }
            if (menu.Item("useEL").GetValue <bool>() && E.IsReady())
            {
                MinionManager.FarmLocation bestLocation =
                    MinionManager.GetBestCircularFarmLocation(
                        MinionManager.GetMinions(player.Position, 800).Select(minion => minion.ServerPosition.To2D())
                        .ToList(), E.Width, 800);
                if (player.Distance(bestLocation.Position) < E.Range)
                {
                    if (jumpStage == FizzJump.PLAYFUL && player.Spellbook.GetSpell(SpellSlot.E).Name == "FizzJump")
                    {
                        E.Cast(bestLocation.Position, true);
                    }
                    if (jumpStage == FizzJump.TRICKSTER && player.Spellbook.GetSpell(SpellSlot.E).Name == "fizzjumptwo")
                    {
                        E2.Cast(bestLocation.Position, true);
                    }
                }
            }
        }
Beispiel #9
0
 private static void LaneClear()
 {
     if (Player.Mana / Player.MaxMana * 100 >= Config.Item("QClearMana").GetValue <Slider>().Value)
     {
         var  minions    = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, Q.Range, MinionTypes.All, MinionTeam.NotAlly);
         bool jungleMobs = minions.Any(x => x.Team == GameObjectTeam.Neutral);
         if ((Config.Item("UseQFarm").GetValue <bool>() && Config.Item("UseRFarm").GetValue <bool>() || jungleMobs))
         {
             MinionManager.FarmLocation farmLocation = Q.GetLineFarmLocation(minions);
             if (farmLocation.Position.IsValid())
             {
                 if (farmLocation.MinionsHit >= 1 || jungleMobs)
                 {
                     R.Cast();
                 }
             }
             Q.Cast(farmLocation.Position);
         }
         if ((Config.Item("UseQFarm").GetValue <bool>() && !Config.Item("UseRFarm").GetValue <bool>() || jungleMobs))
         {
             MinionManager.FarmLocation farmLocation = Q.GetLineFarmLocation(minions);
             if (farmLocation.Position.IsValid())
             {
                 if (farmLocation.MinionsHit >= 1 || jungleMobs)
                 {
                     Q.Cast(farmLocation.Position);
                 }
             }
         }
     }
 }
Beispiel #10
0
        private void DoLaneClear()
        {
            if (!ManaManager())
            {
                return;
            }
            Obj_AI_Minion minion = ObjectManager.Get <Obj_AI_Minion>().Where(x => x.IsEnemy && x.IsValidTarget(E.Range)).OrderBy(x => x.Health).FirstOrDefault();

            MinionManager.FarmLocation QFarmLocation =
                Q.GetCircularFarmLocation(
                    MinionManager.GetMinionsPredictedPositions(MinionManager.GetMinions(Q.Range),
                                                               Q.Delay, Q.Width, Q.Speed,
                                                               Player.Position, Q.Range,
                                                               false, SkillshotType.SkillshotLine), Q.Width);
            MinionManager.FarmLocation WFarmLocation =
                W.GetCircularFarmLocation(MinionManager.GetMinionsPredictedPositions(MinionManager.GetMinions(W.Range),
                                                                                     W.Delay, W.Width, W.Speed,
                                                                                     Player.Position, W.Range,
                                                                                     false, SkillshotType.SkillshotLine), Q.Width);
            if (E.IsReady() && Menu.Item("themp.laneclear.E").GetValue <bool>())
            {
                E.CastOnUnit(minion);
            }
            if (Q.IsReady() && Menu.Item("themp.laneclear.Q").GetValue <bool>())
            {
                Q.Cast(QFarmLocation.Position);
            }
            if (W.IsReady() && Menu.Item("themp.laneclear.W").GetValue <bool>())
            {
                W.Cast(WFarmLocation.Position);
            }
        }
Beispiel #11
0
        private static void Farm()
        {
            List <Obj_AI_Base> allMinionsQ = MinionManager.GetMinions(ObjectManager.Player.ServerPosition,
                                                                      Q.Range, MinionTypes.All, MinionTeam.NotAlly);
            List <Obj_AI_Base> allMinionsE = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, E.Range,
                                                                      MinionTypes.All, MinionTeam.NotAlly);

            var useQ = menu.Item("UseQFarm").GetValue <bool>();
            var useE = menu.Item("UseEFarm").GetValue <bool>();

            if (useQ && Q.IsReady() && allMinionsQ.Count > 0)
            {
                MinionManager.FarmLocation qPos = Q.GetCircularFarmLocation(allMinionsQ);

                if (qPos.MinionsHit > 1)
                {
                    Q2.Cast(qPos.Position, packets());
                }
            }

            if (useE && allMinionsE.Count > 0 && E.IsReady() && eSpell.ToggleState == 1)
            {
                MinionManager.FarmLocation ePos = E.GetCircularFarmLocation(allMinionsE);

                if (ePos.MinionsHit > 1)
                {
                    E.Cast(ePos.Position, packets());
                }
            }
        }
Beispiel #12
0
        private static void Execute()
        {
            if (ObjectManager.Player.ManaPercent < CommonManaManager.LaneMinManaPercent)
            {
                return;
            }

            var laneUseQ = MenuLocal.Item("Lane.UseQ").GetValue <StringList>().SelectedIndex;

            if (laneUseQ == 0)
            {
                return;
            }

            var minionQ = MinionManager.GetMinions(PlayerSpells.Q.Range - 30, MinionTypes.All, MinionTeam.NotAlly);

            if (MenuLocal.Item("Lane.UseQ.Mode").GetValue <StringList>().SelectedIndex == 1)
            {
                minionQ = minionQ.FindAll(m => m.Health < PlayerSpells.Q.GetDamage(m));
            }

            if (minionQ.Count <= 0)
            {
                return;
            }

            MinionManager.FarmLocation pos = PlayerSpells.Q.GetLineFarmLocation(minionQ);

            if (PlayerSpells.Q.IsReady() && pos.MinionsHit >= laneUseQ)
            {
                PlayerSpells.Q.Cast(pos.Position);
            }
        }
Beispiel #13
0
        public static void Farm()
        {
            Obj_AI_Minion minion = ObjectManager.Get <Obj_AI_Minion>().Where(x => x.IsEnemy && x.IsValidTarget(E.Range)).OrderBy(x => x.Health).FirstOrDefault();

            MinionManager.FarmLocation QFarmLocation =
                Q.GetCircularFarmLocation(
                    MinionManager.GetMinionsPredictedPositions(MinionManager.GetMinions(Q.Range),
                                                               Q.Delay, Q.Width, Q.Speed,
                                                               Player.Position, Q.Range,
                                                               false, SkillshotType.SkillshotLine), Q.Width);
            MinionManager.FarmLocation WFarmLocation =
                W.GetCircularFarmLocation(MinionManager.GetMinionsPredictedPositions(MinionManager.GetMinions(W.Range),
                                                                                     W.Delay, W.Width, W.Speed,
                                                                                     Player.Position, W.Range,
                                                                                     false, SkillshotType.SkillshotLine), Q.Width);
            if (E.IsReady() && Config.Item("farme").GetValue <bool>())
            {
                E.CastOnUnit(minion);
            }
            if (Q.IsReady() && Config.Item("farmq").GetValue <bool>())
            {
                Q.Cast(QFarmLocation.Position);
            }
            if (W.IsReady() && Config.Item("farmw").GetValue <bool>())
            {
                W.Cast(WFarmLocation.Position);
            }
        }
Beispiel #14
0
        private static void WaveClear()
        {
            var Minions =
                ObjectManager.Get <Obj_AI_Minion>()
                .Where(
                    m =>
                    m.IsValidTarget() &&
                    (Vector3.Distance(m.ServerPosition, Player.ServerPosition) <= Spells[SpellSlot.R].Range));

            if (SpellSlot.Q.IsReady() && Misc.Active("Farm.UseQ"))
            {
                var qminions =
                    Minions.Where(
                        m =>
                        Vector3.Distance(m.ServerPosition, Player.ServerPosition) <= Spells[SpellSlot.Q].Range);
                MinionManager.FarmLocation QLocation =
                    MinionManager.GetBestCircularFarmLocation(
                        qminions.Select(m => m.ServerPosition.To2D()).ToList(), Spells[SpellSlot.Q].Width,
                        Spells[SpellSlot.Q].Range);
                if (QLocation.MinionsHit >= 1)
                {
                    Spells[SpellSlot.Q].Cast(QLocation.Position);
                }
            }
        }
Beispiel #15
0
        private void Clear()
        {
            float perc = config.Item("minmana", true).GetValue <Slider>().Value / 100f;

            if (player.Mana < player.MaxMana * perc)
            {
                return;
            }
            MinionManager.FarmLocation bestPosition =
                WSkillShot.GetLineFarmLocation(
                    MinionManager.GetMinions(
                        ObjectManager.Player.ServerPosition, WSkillShot.Range, MinionTypes.All, MinionTeam.NotAlly));

            if (W.IsReady() && !SomebodyInYou && config.Item("usewLC", true).GetValue <bool>() &&
                bestPosition.MinionsHit >= config.Item("wMinHit", true).GetValue <Slider>().Value&& !justQ)
            {
                var mini =
                    MinionManager.GetMinions(W.Range, MinionTypes.All, MinionTeam.NotAlly)
                    .OrderBy(e => e.Health)
                    .FirstOrDefault();
                if (mini != null)
                {
                    lastWtarget = Team.Minion;
                    W.CastOnUnit(mini, true);
                }
            }
            if (W.IsReady() && config.Item("usewLC", true).GetValue <bool>() && MinionInYou)
            {
                WSkillShot.Cast(bestPosition.Position, config.Item("packets").GetValue <bool>());
            }
        }
Beispiel #16
0
 private static void Clear()
 {
     if (getCheckBoxItem(laneMenu, "useqLC") && Q.IsReady() && !player.LSIsDashing())
     {
         if (Environment.Minion.countMinionsInrange(player.Position, Q.Range) >=
             getSliderItem(laneMenu, "minimumMini"))
         {
             Q.Cast();
             return;
         }
     }
     if (getCheckBoxItem(laneMenu, "useeLC") && E.IsReady())
     {
         var minionsForE = MinionManager.GetMinions(
             ObjectManager.Player.ServerPosition, E.Range, MinionTypes.All, MinionTeam.NotAlly);
         MinionManager.FarmLocation bestPosition = E.GetLineFarmLocation(minionsForE);
         if (bestPosition.Position.IsValid() &&
             !player.Position.LSExtend(bestPosition.Position.To3D(), E.Range).UnderTurret(true) &&
             !bestPosition.Position.LSIsWall())
         {
             if (bestPosition.MinionsHit >= 2)
             {
                 E.Cast(bestPosition.Position);
             }
         }
     }
 }
Beispiel #17
0
        static void LaneClear()
        {
            List <Obj_AI_Base> allMinions = MinionManager.GetMinions(Player.ServerPosition, E.Range);

            if (Config.Item("UseQLaneClear").GetValue <bool>() && Q.IsReady())
            {
                foreach (
                    Obj_AI_Base minion in
                    allMinions.Where(minion => minion.IsValidTarget()).Where(
                        minion => Player.Distance(minion) < Q.Range))
                {
                    Q.Cast(minion, true);
                }
            }
            if (Config.Item("UseELaneClear").GetValue <bool>() && E.IsReady())
            {
                MinionManager.FarmLocation bestLocation =
                    MinionManager.GetBestCircularFarmLocation(
                        MinionManager.GetMinions(Player.Position, 800).Select(minion => minion.ServerPosition.To2D())
                        .ToList(), E.Width, 800);
                if (Player.Distance(bestLocation.Position) < E.Range)
                {
                    if (JumpState == 1 && Player.Spellbook.GetSpell(SpellSlot.E).Name == "FizzJump")
                    {
                        E.Cast(bestLocation.Position, true);
                    }
                    if (JumpState != 1 && Player.Spellbook.GetSpell(SpellSlot.E).Name == "fizzjumptwo")
                    {
                        E2.Cast(bestLocation.Position, true);
                    }
                }
            }
        }
Beispiel #18
0
        public void LaneClear()
        {
            if (ObjectManager.Player.ManaPercent < LaneClearMinMana)
            {
                return;
            }

            if (Utils.TickCount - lastLaneClearTick > 100 && !Orbwalker.ShouldWait())
            {
                if (LaneClearUseW && Spells[W].IsReady() && Spells[W].Instance.Ammo != 0)
                {
                    var minions = MinionManager.GetMinions(Spells[W].Range + SoldierMgr.SoldierAttackRange / 2f);
                    if (minions.Count > 1)
                    {
                        var loc = MinionManager.GetBestCircularFarmLocation(minions.Select(p => p.ServerPosition.To2D()).ToList(), SoldierMgr.SoldierAttackRange, Spells[W].Range);
                        if (loc.MinionsHit > 2)
                        {
                            Spells[W].Cast(loc.Position);
                        }
                    }
                }

                if (LaneClearUseQ && Spells[Q].IsReady())
                {
                    MinionManager.FarmLocation bestfarm = MinionManager.GetBestCircularFarmLocation(MinionManager.GetMinions(Spells[Q].Range + 100).Select(p => p.ServerPosition.To2D()).ToList(), SoldierMgr.SoldierAttackRange, Spells[Q].Range + 100);
                    if (bestfarm.MinionsHit >= LaneClearQMinMinion)
                    {
                        Spells[Q].Cast(bestfarm.Position);
                    }
                }
                lastLaneClearTick = Utils.TickCount;
            }
        }
Beispiel #19
0
        private void DoLaneClear()
        {
            if (ManaManager())
            {
                var            minions         = MinionManager.GetMinions(E.Range, MinionTypes.All, MinionTeam.Enemy, MinionOrderTypes.Health);
                List <Vector2> MinionPositions = MinionManager.GetMinionsPredictedPositions(minions,
                                                                                            W.Delay,
                                                                                            W.Width,
                                                                                            W.Speed,
                                                                                            Player.Position,
                                                                                            W.Range,
                                                                                            true,
                                                                                            SkillshotType.SkillshotCircle);
                MinionManager.FarmLocation FarmLocation = Q.GetLineFarmLocation(MinionPositions);
                if (FarmLocation.MinionsHit >= 3 &&
                    W.IsReady() &&
                    Menu.Item("themp.laneclear.w").GetValue <bool>())
                {
                    W.Cast(FarmLocation.Position);
                }

                if (Q.IsReady() &&
                    Menu.Item("themp.laneclear.q").GetValue <bool>() &&
                    minions[0].Health < Q.GetDamage(minions[0]) &&
                    Q.IsInRange(minions[0]))
                {
                    useQonTarg(minions[0], QhitChance.medium);
                }
            }
        }
Beispiel #20
0
        /// <summary>
        /// Farming function
        /// </summary>
        static void LaneClear()
        {
            //Minions
            List <Obj_AI_Base> minions = MinionManager.GetMinions(player.Position, Q3.Range);

            //Farm locations for spells
            MinionManager.FarmLocation QPos = Q3.GetCircularFarmLocation(minions);
            //MinionManager.FarmLocation WPos = W.GetCircularFarmLocation(minions);
            MinionManager.FarmLocation EPos = E.GetCircularFarmLocation(minions);
            //Minons count
            int numToHit = menu.SubMenu("waveClear").Item("waveNum").GetValue <Slider>().Value;
            //Using of spells
            bool useQ = menu.SubMenu("waveClear").Item("UseQ").GetValue <bool>() && Q1.IsReady();
            //bool useW = menu.SubMenu("waveClear").Item("UseW").GetValue<bool>();
            bool useE = menu.SubMenu("waveClear").Item("UseE").GetValue <bool>() && E.IsReady();

            //Casts
            if (useQ && QPos.MinionsHit >= numToHit)
            {
                Q1.Cast(QPos.Position, true);
                SMouse.addMouseEvent(QPos.Position.To3D(), false, CRB);
            }
            //if (false && WPos.MinionsHit >= numToHit) W.Cast(WPos.Position, true);
            if (useE && EPos.MinionsHit >= numToHit)
            {
                E.Cast(EPos.Position, true);
                SMouse.addMouseEvent(EPos.Position.To3D(), false, CRB);
            }
        }
Beispiel #21
0
        private static void Farm()
        {
            if (!Orbwalking.CanMove(40))
            {
                return;
            }

            List <Obj_AI_Base> allMinionsQ = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, Q.Range,
                                                                      MinionTypes.All, MinionTeam.NotAlly);
            List <Obj_AI_Base> allMinionsW = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, W.Range,
                                                                      MinionTypes.All, MinionTeam.NotAlly);

            var useQ = menu.Item("UseQFarm").GetValue <bool>();
            var useW = menu.Item("UseWFarm").GetValue <bool>();

            if (useQ && Q.IsReady())
            {
                MinionManager.FarmLocation qPos = Q.GetLineFarmLocation(allMinionsQ);
                if (qPos.MinionsHit >= 3)
                {
                    Q.Cast(qPos.Position, packets());
                }
            }

            if (useW && allMinionsW.Count > 0 && W.IsReady())
            {
                W.Cast();
            }
        }
Beispiel #22
0
 private void Clear()
 {
     if (config.Item("useqLC", true).GetValue <bool>() && Q.IsReady() && !player.IsDashing())
     {
         if (Environment.Minion.countMinionsInrange(player.Position, Q.Range) >=
             config.Item("minimumMini", true).GetValue <Slider>().Value)
         {
             Q.Cast(config.Item("packets").GetValue <bool>());
             return;
         }
     }
     if (config.Item("useeLC", true).GetValue <bool>() && E.IsReady())
     {
         var minionsForE = MinionManager.GetMinions(
             ObjectManager.Player.ServerPosition, E.Range, MinionTypes.All, MinionTeam.NotAlly);
         MinionManager.FarmLocation bestPosition = E.GetLineFarmLocation(minionsForE);
         if (bestPosition.Position.IsValid() &&
             !player.Position.Extend(bestPosition.Position.To3D(), E.Range).UnderTurret(true) &&
             !bestPosition.Position.IsWall())
         {
             if (bestPosition.MinionsHit >= 2)
             {
                 E.Cast(bestPosition.Position, config.Item("packets").GetValue <bool>());
             }
         }
     }
 }
Beispiel #23
0
        private static void Farm()
        {
            if (!Orbwalking.CanMove(40))
            {
                return;
            }

            List <Obj_AI_Base> rangedMinionsQ = MinionManager.GetMinions(ObjectManager.Player.ServerPosition,
                                                                         Q.Range + Q.Width, MinionTypes.All, MinionTeam.NotAlly);
            List <Obj_AI_Base> allMinionsE = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, E.Range,
                                                                      MinionTypes.All, MinionTeam.NotAlly);

            var useQ = menu.Item("UseQFarm").GetValue <bool>();
            var useE = menu.Item("UseEFarm").GetValue <bool>();

            if (useE && allMinionsE.Count > 0 && E.IsReady())
            {
                E.Cast(allMinionsE[0], packets());
            }

            if (useQ && Q.IsReady())
            {
                MinionManager.FarmLocation qPos = Q.GetCircularFarmLocation(rangedMinionsQ);
                if (qPos.MinionsHit >= 3)
                {
                    Q.Cast(qPos.Position, packets());
                }
            }
        }
Beispiel #24
0
        public static void IceShardCast(bool minions, bool groupfocusMinions)
        {
            if (!IceShard.IsReady())
            {
                return;
            }

            if (minions)
            {
                if (groupfocusMinions)
                {
                    MinionManager.FarmLocation farmLocation =
                        IceShard.GetLineFarmLocation(
                            MinionManager.GetMinionsPredictedPositions(MinionManager.GetMinions(IceShard.Range),
                                                                       IceShard.Delay, IceShard.Width, IceShard.Speed,
                                                                       Program.Player.Position, IceShard.Range,
                                                                       false, SkillshotType.SkillshotLine), IceShard.Width);
                    if (farmLocation.MinionsHit != 0)
                    {
                        IceShard.Cast(farmLocation.Position);
                    }
                }
                else
                {
                    Obj_AI_Base targetMinion =
                        MinionManager.GetMinions(IceShard.Range)
                        .Where(minion => minion.Health < IceShard.GetDamage(minion))
                        .OrderByDescending(minion => minion.Health)
                        .Last();
                    IceShard.Cast(
                        IceShard.GetPrediction(targetMinion, false, IceShard.Range,
                                               new[] { CollisionableObjects.YasuoWall }).CastPosition);
                }
            }
        }
Beispiel #25
0
        void LaneClear()
        {
            _spellQ.Speed = _spellQFarmSpeed;
            var minions = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, _spellQ.Range, MinionTypes.All, MinionTeam.NotAlly);

            bool jungleMobs = minions.Any(x => x.Team == GameObjectTeam.Neutral);

            if ((_menu.Item("farmQ").GetValue <bool>() && GetManaPercent() >= _menu.Item("farmPercent").GetValue <Slider>().Value&& ObjectManager.Player.Level >= _menu.Item("farmStartAtLevel").GetValue <Slider>().Value) || jungleMobs)
            {
                MinionManager.FarmLocation farmLocation = _spellQ.GetLineFarmLocation(minions);

                if (farmLocation.Position.IsValid())
                {
                    if (farmLocation.MinionsHit >= 2 || jungleMobs)
                    {
                        CastQ(farmLocation.Position);
                    }
                }
            }

            minions = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, _spellW.Range, MinionTypes.All, MinionTeam.NotAlly);

            if (minions.Count() > 0)
            {
                jungleMobs = minions.Any(x => x.Team == GameObjectTeam.Neutral);

                if ((_menu.Item("farmW").GetValue <bool>() && GetManaPercent() >= _menu.Item("farmPercent").GetValue <Slider>().Value&& ObjectManager.Player.Level >= _menu.Item("farmStartAtLevel").GetValue <Slider>().Value) || jungleMobs)
                {
                    CastW(true);
                }
            }
        }
Beispiel #26
0
        private void Clear()
        {
            if (Q.IsReady())
            {
                useQ();
            }
            if (NasusQ && player.CountEnemiesInRange(Orbwalking.GetRealAutoAttackRange(player)) == 0)
            {
                var minion =
                    MinionManager.GetMinions(
                        Orbwalking.GetRealAutoAttackRange(player), MinionTypes.All, MinionTeam.NotAlly)
                    .FirstOrDefault(m => m.Health > 5 && m.Health < Q.GetDamage(m) + player.GetAutoAttackDamage(m));
                orbwalker.ForceTarget(minion);
            }
            float perc = config.Item("minmana").GetValue <Slider>().Value / 100f;

            if (player.Mana < player.MaxMana * perc)
            {
                return;
            }
            MinionManager.FarmLocation bestPositionE =
                E.GetCircularFarmLocation(MinionManager.GetMinions(E.Range, MinionTypes.All, MinionTeam.NotAlly), 400f);
            if (config.Item("useeLC").GetValue <bool>() && E.IsReady() &&
                bestPositionE.MinionsHit >= config.Item("ehitLC").GetValue <Slider>().Value)
            {
                E.Cast(bestPositionE.Position);
            }
        }
Beispiel #27
0
        private static void Clear()
        {
            var minions = ObjectManager.Get <Obj_AI_Minion>().Where(m => m.IsValidTarget(400)).ToList();

            if (minions.Count() > 2)
            {
                if (Items.HasItem(3077) && Items.CanUseItem(3077))
                {
                    Items.UseItem(3077);
                }
                if (Items.HasItem(3074) && Items.CanUseItem(3074))
                {
                    Items.UseItem(3074);
                }
            }
            float perc = (float)config.Item("minmana", true).GetValue <Slider>().Value / 100f;

            if (me.Mana < me.MaxMana * perc)
            {
                return;
            }

            Q.SetSkillshot(
                Q.Instance.SData.SpellCastTime, Q.Instance.SData.LineWidth, Q.Instance.SData.MissileSpeed, false,
                SkillshotType.SkillshotLine);
            var minionsSpells = ObjectManager.Get <Obj_AI_Minion>().Where(m => m.IsValidTarget(W.Range)).ToList();

            if (W.IsReady() && minionsSpells.Count() > 1 && config.Item("usewC", true).GetValue <bool>() &&
                me.Spellbook.GetSpell(SpellSlot.W).ManaCost <= me.Mana)
            {
                W.Cast();
            }
            var minHit = config.Item("useeCmin", true).GetValue <Slider>().Value;

            if (E.IsReady() && me.Spellbook.GetSpell(SpellSlot.Q).ManaCost <= me.Mana &&
                CombatHelper.SejuaniCountFrostMinion(E.Range) >= minHit &&
                (!(!Q.IsReady() && me.Mana - me.Spellbook.GetSpell(SpellSlot.Q).ManaCost < me.MaxMana * perc) ||
                 !(!W.IsReady() && me.Mana - me.Spellbook.GetSpell(SpellSlot.W).ManaCost < me.MaxMana * perc)))
            {
                E.Cast();
            }
            if (config.Item("useqC", true).GetValue <bool>() && Q.IsReady() &&
                me.Spellbook.GetSpell(SpellSlot.Q).ManaCost <= me.Mana)
            {
                var minionsForQ = MinionManager.GetMinions(
                    ObjectManager.Player.ServerPosition, Q.Range, MinionTypes.All, MinionTeam.NotAlly);
                MinionManager.FarmLocation bestPosition = Q.GetLineFarmLocation(minionsForQ);
                if (bestPosition.Position.IsValid())
                {
                    if (bestPosition.MinionsHit >= 2)
                    {
                        Q.Cast(bestPosition.Position, config.Item("packets").GetValue <bool>());
                    }
                }
            }

            Q.SetSkillshot(
                Q.Instance.SData.SpellCastTime, Q.Instance.SData.LineWidth, Q.Instance.SData.MissileSpeed, true,
                SkillshotType.SkillshotLine);
        }
Beispiel #28
0
        private static void WaveClearHandler()
        {
            var Minions =
                ObjectManager.Get <Obj_AI_Minion>()
                .Where(
                    m =>
                    m.IsValidTarget() &&
                    (Vector3.Distance(m.ServerPosition, Player.ServerPosition) <= Spells["Q"].Range ||
                     Vector3.Distance(m.ServerPosition, Player.ServerPosition) <= Spells["W"].Range ||
                     Vector3.Distance(m.ServerPosition, Player.ServerPosition) <= Spells["E"].Range));



            if (SpellSlot.Q.IsReady() && LissUtils.Active("Waveclear.UseQ"))
            {
                var qminions =
                    Minions.Where(m => Vector3.Distance(m.ServerPosition, Player.ServerPosition) <= Spells["Q"].Range && m.IsValidTarget());
                MinionManager.FarmLocation QLocation = MinionManager.GetBestLineFarmLocation(qminions.Select(m => m.ServerPosition.To2D()).ToList(), Spells["Q"].Width, Spells["Q"].Range);
                if (QLocation.Position != null && QLocation.MinionsHit > 1)
                {
                    Spells["Q"].Cast(QLocation.Position);
                }
            }

            if (SpellSlot.E.IsReady() && LissUtils.Active("Waveclear.UseE"))
            {
                var eminions = Minions.Where(m => Vector3.Distance(m.ServerPosition, Player.ServerPosition) <= Spells["E"].Range && m.IsValidTarget());
                if (LissEMissile == null && !LissUtils.CanSecondE())
                {
                    var Eminions =
                        Minions.Where(
                            m => Vector3.Distance(m.ServerPosition, Player.ServerPosition) <= Spells["E"].Range);
                    MinionManager.FarmLocation ELocation =
                        MinionManager.GetBestLineFarmLocation(Eminions.Select(m => m.ServerPosition.To2D()).ToList(),
                                                              Spells["E"].Width, Spells["E"].Range);
                    if (ELocation.Position != null && ELocation.MinionsHit > 0)
                    {
                        Spells["E"].Cast(ELocation.Position);
                    }
                }
                else if (LissEMissile != null && LissUtils.Active("Waveclear.UseE2") && LissEMissile.Position == LissEMissile.EndPosition - 15 && SpellSlot.E.IsReady())
                {
                    if (LissUtils.PointUnderEnemyTurret(LissEMissile.Position) && LissUtils.Active("Misc.DontETurret"))
                    {
                        return;
                    }
                    Spells["E"].CastOnUnit(Player);
                }
            }

            if (SpellSlot.W.IsReady() && LissUtils.Active("Waveclear.UseW"))
            {
                var wminions = Minions.Where(m => Vector3.Distance(m.ServerPosition, Player.ServerPosition) <= Spells["W"].Range && m.IsValidTarget());
                if (wminions.Count() > LissUtils.GetSlider("Waveclear.Wcount"))
                {
                    Spells["W"].CastOnUnit(Player);
                }
            }
        }
Beispiel #29
0
        private static void JungleClear()
        {
            var pos = new List <Vector2>();
            List <Obj_AI_Base> mobs = MinionManager.GetMinions(
                Player.ServerPosition, Q.Range, MinionTypes.All, MinionTeam.Neutral, MinionOrderTypes.Health);

            foreach (Obj_AI_Base minion in mobs)
            {
                if (minion != null)
                {
                    pos.Add(minion.Position.To2D());
                }
                // Orbwalker.SetAttacks(!(Q.IsReady() || W.IsReady() || E.IsReady()) || TIA.IsReady() || HDR.IsReady());
                // Normal Farms
                if (Q.IsReady() && minion.IsValidTarget() && Player.Distance(minion) <= Q.Range &&
                    Config.Item("UseQFarm").GetValue <bool>())
                {
                    Orbwalker.SetAttack(false);
                    Q.Cast(minion);
                    Orbwalker.SetAttack(true);
                }
                if (W.IsReady() && minion.IsValidTarget() && Wnorm && Player.Distance(minion) <= W.Range &&
                    Config.Item("UseWFarm").GetValue <bool>() && (pos.Any()))
                {
                    MinionManager.FarmLocation pred = MinionManager.GetBestLineFarmLocation(pos, 70, 1025);

                    W.Cast(pred.Position);
                }
                if (E.IsReady() && minion.IsValidTarget() && Player.Distance(minion) <= E.Range &&
                    Config.Item("UseEFarm").GetValue <bool>() && (pos.Any()))
                {
                    MinionManager.FarmLocation pred = MinionManager.GetBestCircularFarmLocation(pos, 300, 600);
                    E.Cast(pred.Position);
                }
                //Evolved

                if (W.IsReady() && minion.IsValidTarget() && Wevolved && Player.Distance(minion) <= WE.Range &&
                    Config.Item("UseWFarm").GetValue <bool>() && (pos.Any()))
                {
                    MinionManager.FarmLocation pred = MinionManager.GetBestLineFarmLocation(pos, 70, 1025);

                    W.Cast(pred.Position);
                }
                if (Config.Item("UseItems").GetValue <bool>())
                {
                    if (HDR.IsReady() && Player.Distance(minion) <= HDR.Range)
                    {
                        HDR.Cast();
                        // Items.UseItem(3077, ObjectManager.Player);
                    }
                    if (TIA.IsReady() && Player.Distance(minion) <= TIA.Range)
                    {
                        TIA.Cast();
                    }
                }
            }
        }
Beispiel #30
0
 private void Clear()
 {
     MinionManager.FarmLocation bestPosition =
         E.GetCircularFarmLocation(
             MinionManager.GetMinions(E.Range - 100f, MinionTypes.All, MinionTeam.NotAlly), 200f);
     if (config.Item("useeLC", true).GetValue <bool>() && E.IsReady() &&
         bestPosition.MinionsHit > config.Item("ehitLC", true).GetValue <Slider>().Value)
     {
         E.Cast(bestPosition.Position);
     }
 }