示例#1
0
        public override void LaneClear()
        {
            if (Q.IsReady() && LaneClearMenu.CheckBoxValue(SpellSlot.Q) && LaneClearMenu.CompareSlider("Qmana", user.ManaPercent))
            {
                var qminions = EntityManager.MinionsAndMonsters.GetCircularFarmLocation(Q.LaneMinions(), Q.SetSkillshot().Width * 2, (int)Q.Range, Q.CastDelay, Q.SetSkillshot().Speed);
                if (qminions.HitNumber >= LaneClearMenu.SliderValue("Qhit"))
                {
                    Q.Cast(qminions.CastPosition);
                }
            }

            if (W.IsReady() && LaneClearMenu.CheckBoxValue(SpellSlot.W) && LaneClearMenu.CompareSlider("Wmana", user.ManaPercent))
            {
                var wminions = EntityManager.MinionsAndMonsters.GetCircularFarmLocation(W.LaneMinions(), W.SetSkillshot().Width * 2, (int)W.Range, W.CastDelay, W.SetSkillshot().Speed);
                if (wminions.HitNumber + 1 >= LaneClearMenu.SliderValue("Whit"))
                {
                    WCast(wminions.CastPosition);
                }
            }

            if (E.IsReady() && LaneClearMenu.CheckBoxValue(SpellSlot.E) && LaneClearMenu.CompareSlider("Emana", user.ManaPercent))
            {
                foreach (var ball in BallsList)
                {
                    var Eminions = EntityManager.MinionsAndMonsters.GetLineFarmLocation(Eball.LaneMinions(), Eball.Width, (int)Eball.Range, ball.ServerPosition.Extend(user, 100));
                    if (Eminions.HitNumber >= LaneClearMenu.SliderValue("Ehit"))
                    {
                        Eball.Cast(ball.ServerPosition);
                    }
                }
            }
        }
示例#2
0
文件: Syndra.cs 项目: spall9/KappAIO
        public override void LaneClear()
        {
            var qmanacheck   = Player.Instance.ManaPercent > LaneClearMenu.SliderValue("Qmana");
            var wmanacheck   = Player.Instance.ManaPercent > LaneClearMenu.SliderValue("Wmana");
            var emanacheck   = Player.Instance.ManaPercent > LaneClearMenu.SliderValue("Emana");
            var qhits        = LaneClearMenu.SliderValue("Qhit");
            var whits        = LaneClearMenu.SliderValue("Whit");
            var ehits        = LaneClearMenu.SliderValue("Ehit");
            var QBestFarmLoc = Q.GetBestCircularCastPosition(Q.LaneMinions());
            var WBestFarmLoc = W.GetBestCircularCastPosition(W.LaneMinions());
            var EBestFarmLoc = E.GetBestConeCastPosition(E.LaneMinions());

            if (qmanacheck && Q.IsReady() && QBestFarmLoc.HitNumber >= qhits)
            {
                Q.Cast(QBestFarmLoc.CastPosition);
            }
            if (wmanacheck && W.IsReady() && (WBestFarmLoc.HitNumber >= whits || W.ToggleState != 1))
            {
                WCast(WBestFarmLoc.CastPosition);
            }
            if (emanacheck && W.IsReady() && EBestFarmLoc.HitNumber >= ehits)
            {
                ECast(EBestFarmLoc.CastPosition);
            }
        }
示例#3
0
文件: Syndra.cs 项目: uvbs/WSUBot
        public override void LaneClear()
        {
            if (Q.IsReady() && LaneClearMenu.CheckBoxValue(SpellSlot.Q) && LaneClearMenu.CompareSlider("Qmana", user.ManaPercent))
            {
                var qminions = Q.SetSkillshot().GetBestCircularCastPosition(Q.LaneMinions());
                if (qminions.HitNumber >= LaneClearMenu.SliderValue("Qhit"))
                {
                    Q.Cast(qminions.CastPosition);
                }
            }

            if (W.IsReady() && LaneClearMenu.CheckBoxValue(SpellSlot.W) && LaneClearMenu.CompareSlider("Wmana", user.ManaPercent))
            {
                var wminions = W.SetSkillshot().GetBestCircularCastPosition(W.LaneMinions());
                if (wminions.HitNumber + 1 >= LaneClearMenu.SliderValue("Whit"))
                {
                    WCast(wminions.CastPosition);
                }
            }

            if (E.IsReady() && LaneClearMenu.CheckBoxValue(SpellSlot.E) && LaneClearMenu.CompareSlider("Emana", user.ManaPercent))
            {
                foreach (var ball in BallsList)
                {
                    var Eminions = Eball.SetSkillshot().GetBestLinearCastPosition(Eball.LaneMinions(), 0, ball.ServerPosition.To2D());
                    if (Eminions.HitNumber >= LaneClearMenu.SliderValue("Ehit"))
                    {
                        Eball.Cast(ball.ServerPosition);
                    }
                }
            }
        }
示例#4
0
 public override void LastHit()
 {
     if (LaneClearMenu.CheckBoxValue("QLH") && Q.IsReady())
     {
         var barrel = BarrelsList.OrderByDescending(b => b.Barrel.CountEnemyMinionsInRange(E.Width)).FirstOrDefault(m => KillableBarrel(m) != null && m.Barrel.CountEnemyMinionsInRange(E.Width) > 0 && (KillableBarrel(m).IsValidTarget(Q.Range) || KillableBarrel(m).IsInRange(user, user.GetAutoAttackRange())));
         if (barrel != null)
         {
             var EkillMinions = EntityManager.MinionsAndMonsters.EnemyMinions.Count(m => BarrelKill(m) && BarrelsList.Any(b => b.Barrel.IsInRange(m, E.Width)) && m.IsValidTarget())
                                >= LaneClearMenu.SliderValue("EKill");
             if (KillableBarrel(barrel).IsValidTarget(user.GetAutoAttackRange()))
             {
                 Orbwalker.ForcedTarget = KillableBarrel(barrel);
             }
             else
             {
                 if (KillableBarrel(barrel).IsValidTarget(Q.Range) && EkillMinions)
                 {
                     Q.Cast(barrel.Barrel);
                 }
             }
         }
         else
         {
             if (LaneClearMenu.CompareSlider("Qmana", user.ManaPercent))
             {
                 foreach (var minion in EntityManager.MinionsAndMonsters.EnemyMinions.OrderByDescending(m => m.Distance(user)).Where(m => m.IsKillable(Q.Range) && Q.WillKill(m) && !BarrelsList.Any(b => b.Barrel.Distance(m) <= E.Width)))
                 {
                     Q.Cast(minion);
                 }
             }
         }
     }
 }
示例#5
0
 public override void LaneClear()
 {
     Orbwalker.ForcedTarget = null;
     if (Q.IsReady())
     {
         if (E.IsReady() && LaneClearMenu.CheckBoxValue(SpellSlot.E))
         {
             foreach (var minion in EntityManager.MinionsAndMonsters.EnemyMinions.OrderBy(m => m.Health).Where(m => m.IsKillable(E.Range)))
             {
                 var pred = E.GetPrediction(minion);
                 if (EntityManager.MinionsAndMonsters.EnemyMinions.Count(e => e.Distance(pred.CastPosition) <= E.SetSkillshot().Width&& BarrelKill(e)) >= LaneClearMenu.SliderValue("EKill"))
                 {
                     if (BarrelsList.Count(b => b.Barrel.IsInRange(pred.CastPosition, E.SetSkillshot().Width)) < 1 ||
                         (BarrelsList.Count(b => b.Barrel.IsInRange(pred.CastPosition, ConnectionRange)) > 0 && BarrelsList.Count(b => b.Barrel.IsInRange(pred.CastPosition, E.SetSkillshot().Width)) < 1))
                     {
                         E.Cast(pred.CastPosition);
                         return;
                     }
                 }
             }
         }
         if (LaneClearMenu.CheckBoxValue(SpellSlot.Q))
         {
             var barrel = BarrelsList.OrderByDescending(b => b.Barrel.CountEnemyMinionsInRange(E.SetSkillshot().Width)).FirstOrDefault(m => KillableBarrel(m) != null && m.Barrel.CountEnemyMinionsInRange(E.SetSkillshot().Width) > 0 && (KillableBarrel(m).IsValidTarget(Q.Range) || KillableBarrel(m).IsInRange(user, user.GetAutoAttackRange())));
             if (barrel != null)
             {
                 var EkillMinions = EntityManager.MinionsAndMonsters.EnemyMinions.Count(m => BarrelKill(m) && BarrelsList.Any(b => b.Barrel.IsInRange(m, E.SetSkillshot().Width)) && m.IsValidTarget())
                                    >= LaneClearMenu.SliderValue("EKill");
                 var EHitMinions = EntityManager.MinionsAndMonsters.EnemyMinions.Count(m => BarrelsList.Any(b => b.Barrel.IsInRange(m, E.SetSkillshot().Width)) && m.IsValidTarget())
                                   >= LaneClearMenu.SliderValue("EHits");
                 if (KillableBarrel(barrel).IsValidTarget(user.GetAutoAttackRange()))
                 {
                     Orbwalker.ForcedTarget = KillableBarrel(barrel);
                 }
                 else
                 {
                     if (KillableBarrel(barrel).IsValidTarget(Q.Range) && (EkillMinions || EHitMinions))
                     {
                         Q.Cast(barrel.Barrel);
                     }
                 }
             }
             else
             {
                 if (LaneClearMenu.CompareSlider("Qmana", user.ManaPercent))
                 {
                     foreach (var minion in EntityManager.MinionsAndMonsters.EnemyMinions.OrderByDescending(m => m.Distance(user)).Where(m => m.IsKillable(Q.Range) && Q.WillKill(m) && !BarrelsList.Any(b => b.Barrel.Distance(m) <= E.SetSkillshot().Width)))
                     {
                         Q.Cast(minion);
                     }
                 }
             }
         }
     }
 }
示例#6
0
        public override void LaneClear()
        {
            if (E.IsReady() && LaneClearMenu.CheckBoxValue(SpellSlot.E) && LaneClearMenu.CompareSlider("Emana", user.ManaPercent) && LaneClearMenu.CompareSlider("Ekills", EntityManager.MinionsAndMonsters.EnemyMinions.Count(e => e.IsKillable(E.Range) && e.EKill())))
            {
                E.Cast();
            }

            if (Q.IsReady() && LaneClearMenu.CheckBoxValue(SpellSlot.Q) && LaneClearMenu.CompareSlider("Qmana", user.ManaPercent))
            {
                foreach (var mob in EntityManager.MinionsAndMonsters.EnemyMinions.Where(m => m.IsKillable(Q.Range)))
                {
                    QCast(mob, false, LaneClearMenu.SliderValue("Qhits"));
                }
            }
        }
示例#7
0
        public override void LaneClear()
        {
            var qfarm = Q.GetBestLinearCastPosition(Q.LaneMinions());
            var efarm = E.GetBestLinearCastPosition(E.LaneMinions());

            if (qfarm.HitNumber >= LaneClearMenu.SliderValue("Qhit") && (!IsChargingQ && Player.Instance.ManaPercent > LaneClearMenu.SliderValue("Qmana") || IsChargingQ))
            {
                QCast(qfarm.CastPosition, qfarm.HitNumber);
            }

            if (efarm.HitNumber > LaneClearMenu.SliderValue("Ehit") && E.IsReady() && Player.Instance.ManaPercent > LaneClearMenu.SliderValue("Emana"))
            {
                E.Cast(efarm.CastPosition);
            }
        }
示例#8
0
 public override void LaneClear()
 {
     if (LaneClearMenu.CheckBoxValue(SpellSlot.E) && E.IsReady())
     {
         Vectors.ECast(LaneClearMenu.SliderValue("Ehits"));
     }
     if (LaneClearMenu.CheckBoxValue(SpellSlot.Q) && Q.IsReady())
     {
         foreach (var mob in EntityManager.MinionsAndMonsters.EnemyMinions.Where(m => m.IsKillable(Q.Range) && Q.WillKill(m)))
         {
             if (mob != null)
             {
                 Q.Cast(mob);
             }
         }
     }
 }
示例#9
0
        public override void LaneClear()
        {
            var QReady = Q.IsReady() && LaneClearMenu.CheckBoxValue("Q") && LaneClearMenu.CompareSlider("Qmana", user.ManaPercent);
            var WReady = W.IsReady() && LaneClearMenu.CheckBoxValue("W") && LaneClearMenu.CompareSlider("Wmana", user.ManaPercent);
            var EReady = E.IsReady() && LaneClearMenu.CheckBoxValue("E") && LaneClearMenu.CompareSlider("Emana", user.ManaPercent);
            var qhits  = LaneClearMenu.SliderValue("Qhit");
            var whits  = LaneClearMenu.SliderValue("Whit");
            var ehits  = LaneClearMenu.SliderValue("Ehit");

            if (QReady)
            {
                var qfarmloc = Q.SetSkillshot().GetBestCircularCastPosition(Q.Enemies());
                if (LaneClearMenu.ComboBoxValue("Qfarm") == 1)
                {
                    qfarmloc = Q.SetSkillshot().GetBestLinearCastPosition(Q.Enemies(), 0, Q.SetSkillshot().SourcePosition.GetValueOrDefault(user.ServerPosition).To2D());
                }
                if (qfarmloc.HitNumber >= qhits)
                {
                    Q.Cast(qfarmloc.CastPosition);
                }
            }
            if (WReady)
            {
                var whit = EntityManager.Enemies.Count(e => WHit(e));
                if (whit >= whits)
                {
                    W.Cast();
                }
            }
            if (EReady)
            {
                var etarget = EFarmTarget(ehits);
                if (etarget != null)
                {
                    E.Cast(etarget);
                }
            }
        }
示例#10
0
文件: Jhin.cs 项目: spall9/KappAIO
        public override void LaneClear()
        {
            if (IsCastingR || Orbwalker.IsAutoAttacking)
            {
                return;
            }

            if (W.IsReady() && LaneClearMenu.CheckBoxValue(SpellSlot.W) && LaneClearMenu.CompareSlider("Wmana", user.ManaPercent))
            {
                var minions = W.LaneMinions();
                var farmloc = EntityManager.MinionsAndMonsters.GetLineFarmLocation(minions, W.Width, (int)W.Range);
                if (farmloc.HitNumber >= LaneClearMenu.SliderValue("Whit"))
                {
                    W.Cast(farmloc.CastPosition);
                }
            }

            if (Q.IsReady() && LaneClearMenu.CheckBoxValue(SpellSlot.Q) && LaneClearMenu.CompareSlider("Qmana", user.ManaPercent))
            {
                var qminion = Q.LaneMinions().OrderBy(m => m.Health / user.GetSpellDamage(m, SpellSlot.Q)).FirstOrDefault(m => m.CountEnemyMinionsInRange(450) >= LaneClearMenu.SliderValue("Qhit"));
                if (qminion != null)
                {
                    Q.Cast(qminion);
                }
            }

            if (E.IsReady() && LaneClearMenu.CheckBoxValue(SpellSlot.E) && LaneClearMenu.CompareSlider("Emana", user.ManaPercent))
            {
                var minions = E.LaneMinions();
                var farmloc = EntityManager.MinionsAndMonsters.GetCircularFarmLocation(minions, E.Width, (int)E.Range);
                if (farmloc.HitNumber >= LaneClearMenu.SliderValue("Ehit"))
                {
                    E.Cast(farmloc.CastPosition);
                }
            }
        }
示例#11
0
        public override void Active()
        {
            if (BoundHero == null && Created)
            {
                if (File.Exists(appdata + Game.GameId + ".dat"))
                {
                    var read = File.ReadAllLines(appdata + Game.GameId + ".dat");
                    BoundHero = EntityManager.Heroes.Allies.FirstOrDefault(a => read.Contains(a.NetworkId.ToString()));
                }
            }

            if (!E.IsReady())
            {
                return;
            }
            if (AutoMenu.CheckBoxValue("AutoEJungle"))
            {
                foreach (var mob in BigJungleMobs.Where(m => m != null && m.IsKillable(E.Range) && m.EKill()))
                {
                    if (mob != null)
                    {
                        E.Cast();
                    }
                    return;
                }
            }
            if (AutoMenu.CheckBoxValue("AutoEBig"))
            {
                foreach (var mob in EntityManager.MinionsAndMonsters.EnemyMinions.Where(m => m != null && m.IsBigMinion() && m.IsKillable(E.Range) && m.EKill()))
                {
                    if (mob != null)
                    {
                        E.Cast();
                    }
                    return;
                }
            }
            if (AutoMenu.CheckBoxValue("AutoE") && NoModesActive)
            {
                foreach (var enemy in EntityManager.Heroes.Enemies.Where(e => e != null && e.IsKillable(E.Range) && AutoMenu.CompareSlider("AutoEcount", e.RendCount())))
                {
                    if (enemy != null)
                    {
                        E.Cast();
                    }
                    return;
                }
            }
            if (LaneClearMenu.KeyBindValue("Etog"))
            {
                if (EntityManager.MinionsAndMonsters.EnemyMinions.Count(m => m.IsKillable(E.Range) && m.EKill()) >= LaneClearMenu.SliderValue("Ekills"))
                {
                    E.Cast();
                }
            }
        }