Exemple #1
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);
                    }
                }
            }
        }
Exemple #2
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);
                            }
                        }
                    }
                }
            }
        }
Exemple #3
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);
                        }
                    }
                }
            }
        }
Exemple #4
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;
                                }
                            }
                        }
                    }
                }
            }
        }
Exemple #5
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;
                                }
                            }
                        }
                    }
                }
            }
        }