Ejemplo n.º 1
0
        private void LogicW()
        {
            if (Player.Mana > RMANA + WMANA)
            {
                if (Program.Combo)
                {
                    return;
                }
                if (Config.Item("autoW", true).GetValue <bool>())
                {
                    foreach (var enemy in HeroManager.Enemies.Where(enemy => enemy.IsValidTarget(W.Range) && !OktwCommon.CanMove(enemy) && !enemy.HasBuff("caitlynyordletrapinternal")))
                    {
                        if (Utils.TickCount - W.LastCastAttemptT > 1000)
                        {
                            W.Cast(enemy);
                            LastW = enemy;
                        }
                        else if (LastW.NetworkId != enemy.NetworkId)
                        {
                            W.Cast(enemy);
                            LastW = enemy;
                        }
                    }
                }

                if (Config.Item("telE", true).GetValue <bool>())
                {
                    var trapPos = OktwCommon.GetTrapPos(W.Range);
                    if (!trapPos.IsZero)
                    {
                        W.Cast(trapPos);
                    }
                }
                if ((int)(Game.Time * 10) % 2 == 0 && Config.Item("bushW2", true).GetValue <bool>())
                {
                    if (Player.Spellbook.GetSpell(SpellSlot.W).Ammo == new int[] { 0, 3, 3, 4, 4, 5 }[W.Level] && Player.CountEnemiesInRange(1000) == 0)
                    {
                        var points = OktwCommon.CirclePoints(8, W.Range, Player.Position);
                        foreach (var point in points)
                        {
                            if (NavMesh.IsWallOfGrass(point, 0) || point.UnderTurret(true))
                            {
                                if (!OktwCommon.CirclePoints(8, 150, point).Any(x => x.IsWall()))
                                {
                                    W.Cast(point);
                                    return;
                                }
                            }
                        }
                    }
                }
            }
        }
Ejemplo n.º 2
0
        private void LogicE()
        {
            if (Player.Mana > RMANA + EMANA && Config.Item("autoE", true).GetValue <bool>())
            {
                var close = HeroManager.Enemies.FirstOrDefault(x => x.IsMelee && x.IsValidTarget(400) && x.IsFacing(Player));
                if (close != null)
                {
                    E.Cast(close);
                }

                foreach (var enemy in HeroManager.Enemies.Where(enemy => enemy.IsValidTarget(E.Range + 50) && !OktwCommon.CanMove(enemy)))
                {
                    E.Cast(enemy);
                    return;
                }

                if (Config.Item("telE", true).GetValue <bool>())
                {
                    var trapPos = OktwCommon.GetTrapPos(E.Range);
                    if (!trapPos.IsZero)
                    {
                        E.Cast(trapPos);
                    }
                }

                if (Program.Combo && Player.IsMoving && Config.Item("comboE", true).GetValue <bool>() && Player.Mana > RMANA + EMANA + WMANA)
                {
                    var t = TargetSelector.GetTarget(E.Range, TargetSelector.DamageType.Physical);
                    if (t.IsValidTarget(E.Range))
                    {
                        E.CastIfWillHit(t, 2);
                        if (t.HasBuffOfType(BuffType.Slow))
                        {
                            Program.CastSpell(E, t);
                        }

                        if (OktwCommon.IsMovingInSameDirection(Player, t))
                        {
                            Program.CastSpell(E, t);
                        }
                    }
                }
                else if (FarmSpells && Config.Item("farmE", true).GetValue <bool>())
                {
                    var allMinions = Cache.GetMinions(Player.ServerPosition, E.Range);
                    var farmPos    = E.GetCircularFarmLocation(allMinions, E.Width);
                    if (farmPos.MinionsHit >= FarmMinions + 1)
                    {
                        E.Cast(farmPos.Position);
                    }
                }
            }
        }
Ejemplo n.º 3
0
        private void LogicW()
        {
            var orbT = Orbwalker.GetTarget() as Obj_AI_Hero;

            if (orbT != null && orbT.Health - OktwCommon.GetIncomingDamage(orbT) < Player.GetAutoAttackDamage(orbT) * 2)
            {
                return;
            }
            if (Player.Mana > RMANA + WMANA)
            {
                if (Config.Item("autoW", true).GetValue <bool>())
                {
                    foreach (var enemy in HeroManager.Enemies.Where(enemy => enemy.IsValidTarget(W.Range) && !OktwCommon.CanMove(enemy) && !enemy.HasBuff("caitlynyordletrapinternal")))
                    {
                        W.Cast(enemy);
                    }
                }

                if (Config.Item("telE", true).GetValue <bool>())
                {
                    var trapPos = OktwCommon.GetTrapPos(W.Range);
                    if (!trapPos.IsZero)
                    {
                        W.Cast(trapPos);
                    }
                }
                if (!SebbyLib.Orbwalking.CanMove(40))
                {
                    return;
                }
                if ((int)(Game.Time * 10) % 2 == 0 && Config.Item("bushW2", true).GetValue <bool>())
                {
                    if (Player.Spellbook.GetSpell(SpellSlot.W).Ammo == new int[] { 0, 3, 3, 4, 4, 5 }[W.Level] && Player.CountEnemiesInRange(1000) == 0)
                    {
                        var points = OktwCommon.CirclePoints(8, W.Range, Player.Position);
                        foreach (var point in points)
                        {
                            if (NavMesh.IsWallOfGrass(point, 0) || point.UnderTurret(true))
                            {
                                if (!OktwCommon.CirclePoints(8, 150, point).Any(x => x.IsWall()))
                                {
                                    W.Cast(point);
                                    return;
                                }
                            }
                        }
                    }
                }
            }
        }
Ejemplo n.º 4
0
        private void LogicW()
        {
            if (Player.Mana > RMANA + WMANA)
            {
                var w = Config[Player.CharacterName]["WConfig"];

                if (w.GetValue <MenuBool>("autoW").Enabled)
                {
                    foreach (var enemy in GameObjects.EnemyHeroes.Where(enemy => enemy.IsValidTarget(W.Range) && !OktwCommon.CanMove(enemy) && !enemy.HasBuff("caitlynyordletrapinternal")))
                    {
                        W.Cast(enemy);
                    }
                }

                if (w.GetValue <MenuBool>("telE").Enabled)
                {
                    var trapPos = OktwCommon.GetTrapPos(W.Range);
                    if (!trapPos.IsZero)
                    {
                        W.Cast(trapPos);
                    }
                }

                if (!Orbwalker.CanMove(40, false))
                {
                    return;
                }

                if ((int)(Game.Time * 10) % 2 == 0 && w.GetValue <MenuBool>("bushW2").Enabled)
                {
                    if (Player.Spellbook.GetSpell(SpellSlot.W).Ammo == new int[] { 0, 3, 3, 4, 4, 5 }[W.Level] && Player.CountEnemyHeroesInRange(1000) == 0)
                    {
                        var points = OktwCommon.CirclePoints(8, W.Range, Player.Position);
                        foreach (var point in points)
                        {
                            if (NavMesh.IsWallOfGrass(point, 0) || point.IsUnderEnemyTurret())
                            {
                                if (!OktwCommon.CirclePoints(8, 150, point).Any(x => x.IsWall()))
                                {
                                    W.Cast(point);
                                    return;
                                }
                            }
                        }
                    }
                }
            }
        }
Ejemplo n.º 5
0
        private void LogicE()
        {
            if (Player.Mana > RMANA + EMANA && MainMenu.Item("autoE", true).GetValue <bool>() && Game.Time - grabTime > 1)
            {
                foreach (var enemy in HeroManager.Enemies.Where(enemy => enemy.IsValidTarget(E.Range + 50) && !OktwCommon.CanMove(enemy)))
                {
                    Program.CastSpell(E, enemy);
                    return;
                }
                if (!Program.LagFree(1))
                {
                    return;
                }

                if (MainMenu.Item("telE", true).GetValue <bool>())
                {
                    var trapPos = OktwCommon.GetTrapPos(E.Range);
                    if (!trapPos.IsZero)
                    {
                        E.Cast(trapPos);
                    }
                }

                if (Program.Combo && Player.IsMoving && MainMenu.Item("comboE", true).GetValue <bool>() && Player.Mana > RMANA + EMANA + WMANA)
                {
                    foreach (var t in HeroManager.Enemies.Where(enemy => enemy.IsValidTarget(E.Range + 50)))
                    {
                        if (t.IsValidTarget(E.Range) && E.GetPrediction(t).CastPosition.Distance(t.Position) > 200)
                        {
                            if (E.CastIfWillHit(t, 2))
                            {
                                return;
                            }
                            if (t.HasBuffOfType(BuffType.Slow))
                            {
                                Program.CastSpell(E, t);
                            }
                            if (OktwCommon.IsMovingInSameDirection(Player, t))
                            {
                                Program.CastSpell(E, t);
                            }
                        }
                    }
                }
            }
        }
Ejemplo n.º 6
0
        private static void LogicW()
        {
            if (Player.Mana > RMANA + WMANA)
            {
                if (SebbyLib.Program.Combo && Orbwalker.IsAutoAttacking)
                {
                    return;
                }
                if (getCheckBoxItem(wMenu, "autoW"))
                {
                    var target = TargetSelector.GetTarget(R.Range, DamageType.Physical);

                    if (target != null)
                    {
                        if (W.GetPrediction(target).Hitchance >= HitChance.Medium && W.IsInRange(target))
                        {
                            W.Cast(target);
                        }
                    }

                    foreach (var enemy in EntityManager.Heroes.Enemies.Where(enemy => enemy.IsValidTarget(W.Range) && !OktwCommon.CanMove(enemy) && !enemy.HasBuff("caitlynyordletrapinternal")))
                    {
                        if (Utils.TickCount - W.LastCastAttemptT > 1000)
                        {
                            W.Cast(target, true);
                            LastW = enemy;
                        }
                        else if (LastW.NetworkId != enemy.NetworkId)
                        {
                            W.Cast(target, true);
                            LastW = enemy;
                        }
                    }
                }

                if (getCheckBoxItem(wMenu, "telE"))
                {
                    var trapPos = OktwCommon.GetTrapPos(W.Range);
                    if (!trapPos.IsZero)
                    {
                        W.Cast(trapPos);
                    }
                }
            }
        }
Ejemplo n.º 7
0
        private void LogicE()
        {
            var e = Config[Player.CharacterName]["EConfig"];

            if (Player.Mana > RMANA + EMANA && e.GetValue <MenuBool>("autoE").Enabled&& Game.Time - grabTime > 1)
            {
                foreach (var enemy in GameObjects.EnemyHeroes.Where(enemy => enemy.IsValidTarget(E.Range + 50) && !OktwCommon.CanMove(enemy)))
                {
                    E.Cast(enemy);
                    return;
                }

                if (!LagFree(1))
                {
                    return;
                }

                if (e.GetValue <MenuBool>("telE").Enabled)
                {
                    var trapPos = OktwCommon.GetTrapPos(E.Range);
                    if (!trapPos.IsZero)
                    {
                        E.Cast(trapPos);
                    }
                }

                if (Combo && Player.IsMoving && e.GetValue <MenuBool>("comboE").Enabled&& Player.Mana > RMANA + EMANA + WMANA)
                {
                    var t = TargetSelector.GetTarget(E.Range);
                    if (t.IsValidTarget(E.Range) && E.GetPrediction(t).CastPosition.Distance(t.Position) > 250)
                    {
                        E.CastIfWillHit(t, 2);
                        if (t.HasBuffOfType(BuffType.Slow))
                        {
                            CastSpell(E, t);
                        }
                        if (OktwCommon.IsMovingInSameDirection(Player, t))
                        {
                            CastSpell(E, t);
                        }
                    }
                }
            }
        }
Ejemplo n.º 8
0
        private void LogicW()
        {
            if (Player.Mana > RMANA + WMANA && Orbwalking.CanMove(50) && !Orbwalking.CanAttack())
            {
                if (MainMenu.Item("autoW", true).GetValue <bool>())
                {
                    foreach (var enemy in HeroManager.Enemies.Where(enemy => enemy.IsValidTarget(W.Range) && !OktwCommon.CanMove(enemy) && !enemy.HasBuff("caitlynyordletrapinternal")))
                    {
                        Program.CastSpell(W, enemy);
                    }
                }

                if (MainMenu.Item("telE", true).GetValue <bool>())
                {
                    var trapPos = OktwCommon.GetTrapPos(W.Range);
                    if (!trapPos.IsZero)
                    {
                        W.Cast(trapPos);
                    }
                }

                if ((int)(Game.Time * 10) % 2 == 0 && MainMenu.Item("bushW2", true).GetValue <bool>() && !Orbwalker.ShouldWait())
                {
                    if (Player.Spellbook.GetSpell(SpellSlot.W).Ammo == new int[] { 0, 3, 3, 4, 4, 5 }[W.Level] && Player.CountEnemiesInRange(1000) == 0)
                    {
                        var points = OktwCommon.CirclePoints(8, W.Range, Player.Position);
                        foreach (var point in points)
                        {
                            if (NavMesh.IsWallOfGrass(point, 0) || point.UnderTurret(true))
                            {
                                if (!OktwCommon.CirclePoints(8, 150, point).Any(x => x.IsWall()))
                                {
                                    W.Cast(point);
                                    return;
                                }
                            }
                        }
                    }
                }
            }
        }
Ejemplo n.º 9
0
        private void LogicR()
        {
            if (Player.Mana > RMANA + QMANA && (Player.IsMoving || !Program.None))
            {
                if (Program.LagFree(1) && Orbwalking.CanMove(50))
                {
                    foreach (var enemy in HeroManager.Enemies.Where(enemy => enemy.IsValidTarget(R.Range + 100)))
                    {
                        if (Config.Item("autoRcc", true).GetValue <bool>() && !OktwCommon.CanMove(enemy))
                        {
                            R.Cast(enemy);
                        }
                        if (Config.Item("autoRdash", true).GetValue <bool>())
                        {
                            R.CastIfHitchanceEquals(enemy, HitChance.Dashing);
                        }
                        if (Config.Item("autoRslow", true).GetValue <bool>() && enemy.HasBuffOfType(BuffType.Slow))
                        {
                            Program.CastSpell(R, enemy);
                        }
                        if (Config.Item("Raoe", true).GetValue <bool>())
                        {
                            R.CastIfWillHit(enemy, 2);
                        }
                        if (Config.Item("comboR", true).GetValue <bool>() && OktwCommon.IsMovingInSameDirection(Player, enemy))
                        {
                            var predPos = R.GetPrediction(enemy, true);
                            if (predPos.CastPosition.Distance(enemy.Position) > 300 && predPos.Hitchance >= HitChance.Low)
                            {
                                if (!OktwCommon.CirclePoints(8, 120, predPos.CastPosition).Any(x => x.IsWall()))
                                {
                                    R.Cast(predPos.CastPosition);
                                    return;
                                }
                            }
                        }
                    }
                }

                if (Program.LagFree(2) && Config.Item("telR", true).GetValue <bool>())
                {
                    var trapPos = OktwCommon.GetTrapPos(R.Range);
                    if (!trapPos.IsZero)
                    {
                        R.Cast(trapPos);
                    }
                }

                if (Program.LagFree(3) && Orbwalking.CanMove(50) && Player.Mana > RMANA + QMANA + WMANA && Config.Item("bushR2", true).GetValue <bool>() && Utils.TickCount - R.LastCastAttemptT > 2000)
                {
                    if (ObjectManager.Player.Spellbook.GetSpell(SpellSlot.R).Ammo > 1 + Player.CountEnemiesInRange(1200) && Player.CountEnemiesInRange(800) == 0)
                    {
                        var points = OktwCommon.CirclePoints(12, R.Range, Player.Position);
                        points.Add(Player.Position);
                        foreach (var point in points)
                        {
                            if (NavMesh.IsWallOfGrass(point, 10))
                            {
                                if (!OktwCommon.CirclePoints(8, 110, point).Any(x => x.IsWall()) && !ObjectManager.Get <Obj_AI_Base>().Any(obj => obj.IsValid && obj.Mana > 40 && obj.Health > 0 && obj.Position.Distance(point) < 500 && obj.Name.ToLower().Contains("noxious trap".ToLower())))
                                {
                                    R.Cast(point);
                                    return;
                                }
                            }
                        }
                    }
                }
            }
        }
Ejemplo n.º 10
0
        private void LogicE()
        {
            if (Config.Item("autoE", true).GetValue <bool>())
            {
                var trapPos = OktwCommon.GetTrapPos(E.Range);
                if (!trapPos.IsZero)
                {
                    E.Cast(trapPos);
                }

                foreach (var enemy in HeroManager.Enemies.Where(enemy => enemy.IsValidTargetLS(E.Range) && !OktwCommon.CanMove(enemy)))
                {
                    E.Cast(enemy);
                }
            }

            var t = TargetSelector.GetTarget(E.Range, TargetSelector.DamageType.Physical);

            if (t.IsValidTargetLS() && Config.Item("EmodeCombo", true).GetValue <StringList>().SelectedIndex != 2)
            {
                if (Program.Combo && !Player.Spellbook.IsAutoAttacking)
                {
                    if (Config.Item("EmodeCombo", true).GetValue <StringList>().SelectedIndex == 1)
                    {
                        if (E.GetPrediction(t).CastPosition.Distance(t.Position) > 100)
                        {
                            if (Player.Position.Distance(t.ServerPosition) > Player.Position.Distance(t.Position))
                            {
                                if (t.Position.Distance(Player.ServerPosition) < t.Position.Distance(Player.Position))
                                {
                                    Program.CastSpell(E, t);
                                }
                            }
                            else
                            {
                                if (t.Position.Distance(Player.ServerPosition) > t.Position.Distance(Player.Position))
                                {
                                    Program.CastSpell(E, t);
                                }
                            }
                        }
                    }
                    else
                    {
                        Program.CastSpell(E, t);
                    }
                }

                E.CastIfWillHit(t, Config.Item("Eaoe", true).GetValue <Slider>().Value);
            }
            else if (Program.LaneClear && Player.ManaPercent > Config.Item("Mana", true).GetValue <Slider>().Value&& Config.Item("farmE", true).GetValue <bool>())
            {
                var minionList   = Cache.GetMinions(Player.ServerPosition, E.Range);
                var farmPosition = E.GetCircularFarmLocation(minionList, E.Width);

                if (farmPosition.MinionsHit >= Config.Item("LCminions", true).GetValue <Slider>().Value)
                {
                    E.Cast(farmPosition.Position);
                }
            }
        }
Ejemplo n.º 11
0
        private static void LogicE()
        {
            if (getCheckBoxItem(eMenu, "autoE"))
            {
                var trapPos = OktwCommon.GetTrapPos(E.Range);
                if (!trapPos.IsZero)
                {
                    E.Cast(trapPos);
                }

                foreach (var enemy in Program.Enemies.Where(enemy => enemy.LSIsValidTarget(E.Range) && !OktwCommon.CanMove(enemy)))
                {
                    E.Cast(enemy.ServerPosition);
                }
            }

            var t = TargetSelector.GetTarget(E.Range, DamageType.Physical);

            if (t.LSIsValidTarget() && getBoxItem(eMenu, "EmodeCombo") != 2)
            {
                if (Program.Combo && !Player.Spellbook.IsAutoAttacking)
                {
                    if (getBoxItem(eMenu, "EmodeCombo") == 1)
                    {
                        if (E.GetPrediction(t).CastPosition.LSDistance(t.Position) > 100)
                        {
                            if (Player.Position.LSDistance(t.ServerPosition) > Player.Position.LSDistance(t.Position))
                            {
                                if (t.Position.LSDistance(Player.ServerPosition) < t.Position.LSDistance(Player.Position))
                                {
                                    Program.CastSpell(E, t);
                                }
                            }
                            else
                            {
                                if (t.Position.LSDistance(Player.ServerPosition) > t.Position.LSDistance(Player.Position))
                                {
                                    Program.CastSpell(E, t);
                                }
                            }
                        }
                    }
                    else
                    {
                        Program.CastSpell(E, t);
                    }
                }

                E.CastIfWillHit(t, getSliderItem(eMenu, "Eaoe"));
            }
            else if (Program.LaneClear && Player.ManaPercent > getSliderItem(farmMenu, "Mana") && getCheckBoxItem(farmMenu, "farmE"))
            {
                var minionList   = Cache.GetMinions(Player.ServerPosition, E.Range);
                var farmPosition = E.GetCircularFarmLocation(minionList, E.Width);

                if (farmPosition.MinionsHit >= getSliderItem(farmMenu, "LCminions"))
                {
                    E.Cast(farmPosition.Position);
                }
            }
        }
Ejemplo n.º 12
0
        private void LogicR()
        {
            if (Player.Mana > RMANA + QMANA)
            {
                if (Program.LagFree(1))
                {
                    foreach (var enemy in HeroManager.Enemies.Where(enemy => enemy.IsValidTargetLS(R.Range + 100)))
                    {
                        if (Config.Item("autoRcc", true).GetValue <bool>() && !OktwCommon.CanMove(enemy))
                        {
                            R.Cast(enemy);
                        }
                        if (Config.Item("autoRdash", true).GetValue <bool>())
                        {
                            R.CastIfHitchanceEquals(enemy, HitChance.Dashing);
                        }
                        if (Config.Item("autoRslow", true).GetValue <bool>() && enemy.HasBuffOfType(BuffType.Slow))
                        {
                            Program.CastSpell(R, enemy);
                        }
                        if (Config.Item("Raoe", true).GetValue <bool>())
                        {
                            R.CastIfWillHit(enemy, 2);
                        }
                        if (Config.Item("comboR", true).GetValue <bool>() && OktwCommon.IsMovingInSameDirection(Player, enemy))
                        {
                            var predPos = R.GetPrediction(enemy);
                            if (predPos.CastPosition.Distance(enemy.Position) > 200 && predPos.Hitchance >= HitChance.Low)
                            {
                                R.Cast(predPos.CastPosition);
                            }
                        }
                    }
                }

                if (Program.LagFree(2) && Config.Item("telR", true).GetValue <bool>())
                {
                    var trapPos = OktwCommon.GetTrapPos(R.Range);
                    if (!trapPos.IsZero)
                    {
                        R.Cast(trapPos);
                    }
                }

                if ((int)(Game.Time * 10) % 2 == 0 && Config.Item("bushR2", true).GetValue <bool>() && Utils.TickCount - R.LastCastAttemptT > 4000)
                {
                    if (Player.Spellbook.GetSpell(SpellSlot.R).Ammo > 1 && Player.CountEnemiesInRange(800) == 0)
                    {
                        var points = OktwCommon.CirclePoints(8, R.Range, Player.Position);
                        foreach (var point in points)
                        {
                            if (NavMesh.IsWallOfGrass(point, 0))
                            {
                                if (!OktwCommon.CirclePoints(8, 120, point).Any(x => x.IsWall()))
                                {
                                    R.Cast(point);
                                    return;
                                }
                            }
                        }
                    }
                }
            }
        }