Esempio n. 1
0
        private static void LogicQ()
        {
            if (Program.Farm && !FishBoneActive && !Orbwalker.IsAutoAttacking && Orbwalker.LastTarget == null &&
                Orbwalking.CanAttack() && getCheckBoxItem(farmMenu, "farmQout") &&
                Player.Mana > RMANA + WMANA + EMANA + 10)
            {
                foreach (var minion in Cache.GetMinions(Player.Position, bonusRange() + 30).Where(minion => !Orbwalking.InAutoAttackRange(minion) && GetRealPowPowRange(minion) < GetRealDistance(minion) && bonusRange() < GetRealDistance(minion)))
                {
                    var hpPred = HealthPrediction.GetHealthPrediction(minion, 400);
                    if (hpPred < Player.GetAutoAttackDamage(minion) * 1.1 && hpPred > 5)
                    {
                        Orbwalker.ForcedTarget = minion;
                        Q.Cast();
                        return;
                    }
                }
            }

            var t = TargetSelector.GetTarget(bonusRange() + 60, DamageType.Physical);

            if (t.LSIsValidTarget())
            {
                if (!FishBoneActive && (!Orbwalking.InAutoAttackRange(t) || t.CountEnemiesInRange(250) > 2) && Orbwalker.LastTarget == null)
                {
                    var distance = GetRealDistance(t);
                    if (Program.Combo && (Player.Mana > RMANA + WMANA + 10 || Player.GetAutoAttackDamage(t) * 3 > t.Health))
                    {
                        Q.Cast();
                    }
                    else if (Program.Farm && !Orbwalker.IsAutoAttacking && Orbwalking.CanAttack() && getCheckBoxItem(qMenu, "Qharras") && !ObjectManager.Player.UnderTurret(true) && Player.Mana > RMANA + WMANA + EMANA + 20 && distance < bonusRange() + t.BoundingRadius + Player.BoundingRadius)
                    {
                        Q.Cast();
                    }
                }
            }
            else if (!FishBoneActive && Program.Combo && Player.Mana > RMANA + WMANA + 20 && Player.CountEnemiesInRange(2000) > 0)
            {
                Q.Cast();
            }
            else if (FishBoneActive && Program.Combo && Player.Mana < RMANA + WMANA + 20)
            {
                Q.Cast();
            }
            else if (FishBoneActive && Program.Combo && Player.CountEnemiesInRange(2000) == 0)
            {
                Q.Cast();
            }
            else if (FishBoneActive && (Program.Farm || Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.LastHit)))
            {
                Q.Cast();
            }
            Orbwalker.ForcedTarget = null;
        }
Esempio n. 2
0
        private static void farm()
        {
            if (SebbyLib.Program.LaneClear)
            {
                var mobs = Cache.GetMinions(Player.ServerPosition, Q.Range, MinionTeam.Neutral);
                if (mobs.Count > 0)
                {
                    var mob = mobs[0];
                    if (W.IsReady())
                    {
                        W.Cast(mob);
                    }
                    else if (Q.IsReady())
                    {
                        Q.Cast(mob);
                    }
                }
            }

            var minionsList = Cache.GetMinions(Player.ServerPosition, Q.Range);

            if (Q.IsReady())
            {
                var minion =
                    minionsList.FirstOrDefault(x => HealthPrediction.LaneClearHealthPrediction(x, 250, 50) < Q.GetDamage(x) &&
                                               x.Health > Player.GetAutoAttackDamage(x));
                Q.Cast(minion);
            }
            else if (SebbyLib.Program.LaneClear && W.IsReady() && Player.ManaPercent > getSliderItem(FarmMenu, "Mana") &&
                     getCheckBoxItem(FarmMenu, "farmW"))
            {
                var farmLocation = W.GetCircularFarmLocation(minionsList, W.Width);
                if (farmLocation.MinionsHit > 1)
                {
                    W.Cast(farmLocation.Position);
                }
            }
        }
Esempio n. 3
0
        private static void LogicQ()
        {
            var t = TargetSelector.GetTarget(Q.Range, DamageType.Magical);

            if (t.IsValidTarget())
            {
                if (Program.Combo && Player.Mana > RMANA + QMANA + EMANA && !E.IsReady())
                {
                    Program.CastSpell(Q, t);
                }
                else if (Program.Farm && getCheckBoxItem(q, "harrasQ") &&
                         getCheckBoxItem(harass, "harras" + t.ChampionName) &&
                         Player.ManaPercent > getSliderItem(q, "QHarassMana") && OktwCommon.CanHarras())
                {
                    Program.CastSpell(Q, t);
                }
                else if (OktwCommon.GetKsDamage(t, Q) > t.Health)
                {
                    Program.CastSpell(Q, t);
                }
                else if (Player.Mana > RMANA + QMANA)
                {
                    foreach (
                        var enemy in
                        Program.Enemies.Where(
                            enemy => enemy.IsValidTarget(Q.Range) && !OktwCommon.CanMove(enemy)))
                    {
                        Program.CastSpell(Q, t);
                    }
                }
            }

            if (Orbwalker.IsAutoAttacking)
            {
                return;
            }

            if (!Program.None && !Program.Combo && Player.ManaPercent > getSliderItem(farm, "Mana"))
            {
                var allMinions = Cache.GetMinions(Player.ServerPosition, Q.Range);

                if (getCheckBoxItem(farm, "farmQout"))
                {
                    foreach (
                        var minion in
                        allMinions.Where(
                            minion =>
                            minion.IsValidTarget(Q.Range) &&
                            (!Player.IsInAutoAttackRange(minion) ||
                             (!minion.UnderTurret(true) && minion.UnderTurret()))))
                    {
                        var hpPred = HealthPrediction.GetHealthPrediction(minion, 600);
                        if (hpPred < Q.GetDamage(minion) && hpPred > minion.Health - hpPred * 2)
                        {
                            Q.Cast(minion);
                            return;
                        }
                    }
                }
                if (Program.LaneClear && getCheckBoxItem(farm, "farmQ"))
                {
                    var farmPos = Q.GetCircularFarmLocation(allMinions, Q.Width);
                    if (farmPos.MinionsHit >= getSliderItem(farm, "LCminions"))
                    {
                        Q.Cast(farmPos.Position);
                    }
                }
            }
        }
Esempio n. 4
0
        public static void farmQ()
        {
            if (Program.LaneClear && getCheckBoxItem(farmMenu, "farmQ") && Player.ManaPercent > getSliderItem(farmMenu, "Mana"))
            {
                var mobs = EntityManager.MinionsAndMonsters.EnemyMinions.Where(x => x.IsInRange(Player, Q.Range));
                if (mobs != null)
                {
                    if (mobs.Count() > 0)
                    {
                        var mob = mobs.FirstOrDefault();
                        Q.Cast(mob.Position);
                    }
                }

                var monster = EntityManager.MinionsAndMonsters.Monsters.Where(x => x.IsInRange(Player, Q.Range));
                if (monster != null)
                {
                    if (monster.Count() > 0)
                    {
                        var monsters = monster.FirstOrDefault();
                        Q.Cast(monsters.Position);
                    }
                }
            }

            var minions   = EntityManager.MinionsAndMonsters.EnemyMinions.Where(x => x.IsInRange(Player, Q.Range));
            var orbTarget = 0;

            if (Orbwalker.LastTarget != null)
            {
                orbTarget = Orbwalker.LastTarget.NetworkId;
            }

            if (getCheckBoxItem(farmMenu, "FQ"))
            {
                if (minions.Where(minion => minion.IsValidTarget() && orbTarget != minion.NetworkId && minion.HealthPercent < 70 && !LeagueSharp.Common.Orbwalking.InAutoAttackRange(minion) && minion.Health < Q.GetDamage(minion)).Any(minion => Q.Cast(minion) == Spell.CastStates.SuccessfullyCasted))
                {
                    Console.WriteLine("2");
                    return;
                }
            }

            if (getCheckBoxItem(farmMenu, "farmQ") && Program.LaneClear && !Orbwalking.CanAttack() && Player.ManaPercent > getSliderItem(farmMenu, "Mana"))
            {
                var LCP = getCheckBoxItem(farmMenu, "LCP");
                var PT  = Game.Time - GetPassiveTime() > -1.5 || !E.IsReady();

                foreach (var minion in minions.Where(LeagueSharp.Common.Orbwalking.InAutoAttackRange))
                {
                    var hpPred = HealthPrediction.GetHealthPrediction(minion, 300);
                    if (hpPred < 20)
                    {
                        continue;
                    }

                    var qDmg = Q.GetDamage(minion);
                    if (hpPred < qDmg && orbTarget != minion.NetworkId)
                    {
                        if (Q.Cast(minion) == Spell.CastStates.SuccessfullyCasted)
                        {
                            return;
                        }
                    }
                    else if (PT || LCP)
                    {
                        if (minion.HealthPercent > 80)
                        {
                            if (Q.Cast(minion) == Spell.CastStates.SuccessfullyCasted)
                            {
                                return;
                            }
                        }
                    }
                }
            }
        }
Esempio n. 5
0
        public static void farmQ()
        {
            if (Program.LaneClear)
            {
                var mobs = Cache.GetMinions(Player.ServerPosition, 800, MinionTeam.Neutral);
                if (mobs.Count > 0)
                {
                    var mob = mobs[0];
                    Q.Cast(mob, true);
                    return;
                }
            }

            if (!getCheckBoxItem(farm, "farmQ"))
            {
                return;
            }

            var minions = Cache.GetMinions(Player.ServerPosition, Q.Range);

            var orbTarget = 0;

            if (Orbwalker.LastTarget != null)
            {
                orbTarget = Orbwalker.LastTarget.NetworkId;
            }

            if (minions.Where(
                    minion =>
                    orbTarget != minion.NetworkId && !ObjectManager.Player.IsInAutoAttackRange(minion) &&
                    minion.Health < Q.GetDamage(minion)).Any(minion => Q.Cast(minion) == Spell.CastStates.SuccessfullyCasted))
            {
                return;
            }

            if (getCheckBoxItem(farm, "LC") && Program.LaneClear && !Orbwalking.CanAttack() &&
                Player.ManaPercent > getSliderItem(farm, "Mana"))
            {
                var LCP = getCheckBoxItem(farm, "LCP");

                foreach (
                    var minion in
                    minions.Where(
                        minion => ObjectManager.Player.IsInAutoAttackRange(minion) && orbTarget != minion.NetworkId)
                    )
                {
                    var hpPred    = HealthPrediction.GetHealthPrediction(minion, 300);
                    var dmgMinion = minion.GetAutoAttackDamage(minion);
                    var qDmg      = Q.GetDamage(minion);
                    if (hpPred < qDmg)
                    {
                        if (hpPred > dmgMinion)
                        {
                            if (Q.Cast(minion) == Spell.CastStates.SuccessfullyCasted)
                            {
                                return;
                            }
                        }
                    }
                    else if (LCP)
                    {
                        if (hpPred > dmgMinion + qDmg)
                        {
                            if (Q.Cast(minion) == Spell.CastStates.SuccessfullyCasted)
                            {
                                return;
                            }
                        }
                    }
                }
            }
        }
Esempio n. 6
0
        public static void farmQ()
        {
            if (Program.LaneClear)
            {
                var mobs = Cache.GetMinions(Player.ServerPosition, 800, MinionTeam.Neutral);
                if (mobs.Count > 0)
                {
                    var mob = mobs[0];
                    Q.Cast(mob.Position);
                }
            }

            var minions   = Cache.GetMinions(Player.ServerPosition, Q.Range);
            var orbTarget = 0;

            if (Orbwalker.LastTarget != null)
            {
                orbTarget = Orbwalker.LastTarget.NetworkId;
            }

            if (getCheckBoxItem(farmMenu, "FQ"))
            {
                if (minions.Where(minion => minion.IsValidTarget() && orbTarget != minion.NetworkId && minion.HealthPercent < 70 && !LeagueSharp.Common.Orbwalking.InAutoAttackRange(minion) && minion.Health < Q.GetDamage(minion)).Any(minion => Q.Cast(minion) == Spell.CastStates.SuccessfullyCasted))
                {
                    return;
                }
            }

            if (getCheckBoxItem(farmMenu, "farmQ") && Program.LaneClear && !Orbwalking.CanAttack() &&
                Player.ManaPercent > getSliderItem(farmMenu, "Mana"))
            {
                var LCP = getCheckBoxItem(farmMenu, "LCP");
                var PT  = Game.Time - GetPassiveTime() > -1.5 || !E.IsReady();

                foreach (var minion in minions.Where(LeagueSharp.Common.Orbwalking.InAutoAttackRange))
                {
                    var hpPred = HealthPrediction.GetHealthPrediction(minion, 300);
                    if (hpPred < 20)
                    {
                        continue;
                    }

                    var qDmg = Q.GetDamage(minion);
                    if (hpPred < qDmg && orbTarget != minion.NetworkId)
                    {
                        if (Q.Cast(minion) == Spell.CastStates.SuccessfullyCasted)
                        {
                            return;
                        }
                    }
                    else if (PT || LCP)
                    {
                        if (minion.HealthPercent > 80)
                        {
                            if (Q.Cast(minion) == Spell.CastStates.SuccessfullyCasted)
                            {
                                return;
                            }
                        }
                    }
                }
            }
        }