Ejemplo n.º 1
0
        private static void OnClear()
        {
            if (ObjectManager.Player.ManaPercent < Utilities.Slider("clearmana"))
            {
                return;
            }

            var minions = MinionManager.GetMinions(ObjectManager.Player.Position, Spells.E.Range, MinionTypes.All, MinionTeam.NotAlly);

            if (minions == null || minions.Count == 0)
            {
                return;
            }

            if (Spells.Q.IsReady() && Utilities.Enabled("q.clear"))
            {
                foreach (var min in minions.Where(x => x.IsValidTarget(Spells.Q.Range) && x.Health < Spells.Q.GetDamage(x)))
                {
                    Spells.Q.Cast();
                }
            }

            if (Spells.W.IsReady() && Utilities.Enabled("w.clear"))
            {
                var minionloc = Spells.W.GetCircularFarmLocation(minions);
                if (minionloc.MinionsHit >= Utilities.Slider("w.min.count"))
                {
                    Spells.W.Cast();
                }
            }
        }
Ejemplo n.º 2
0
        private static void OnMixed()
        {
            if (ObjectManager.Player.ManaPercent < Utilities.Slider("harassmana"))
            {
                return;
            }

            var target = TargetSelector.GetTarget(Spells.E.Range, TargetSelector.DamageType.Magical);

            if (target != null)
            {
                if (Spells.Q.IsReady() && Utilities.Enabled("q.harass") && target.IsValidTarget(Spells.Q.Range) && !Utilities.IsInvulnerable(target, DamageType.Magical))
                {
                    Spells.Q.Cast();
                }

                if (Spells.W.IsReady() && Utilities.Enabled("w.harass") && target.IsValidTarget(Spells.W.Range) && !Utilities.IsInvulnerable(target, DamageType.Magical))
                {
                    Spells.W.Cast();
                }

                if (Spells.E.IsReady() && Utilities.Enabled("e.harass") && target.IsValidTarget(2000) && !Utilities.IsInvulnerable(target, DamageType.Magical))
                {
                    Spells.E.Cast();
                }
            }
        }
Ejemplo n.º 3
0
        private static void OnNewPath(Obj_AI_Base sender, GameObjectNewPathEventArgs args)
        {
            if (sender.IsEnemy && sender is AIHeroClient && args.IsDash && Utilities.Enabled("block.dashes") &&
                sender.IsValidTarget(Spells.E.Range) && Spells.E.IsReady())
            {
                var starttick = Utils.TickCount;
                var speed     = args.Speed;
                var startpos  = sender.ServerPosition.To2D();
                var path      = args.Path;
                var forch     = path.OrderBy(x => starttick + (int)(1000 * (new Vector3(x.X, x.Y, x.Z).
                                                                            Distance(startpos.To3D()) / speed))).FirstOrDefault();
                {
                    var endpos  = new Vector3(forch.X, forch.Y, forch.Z);
                    var endtick = starttick + (int)(1000 * (endpos.Distance(startpos.To3D())
                                                            / speed));
                    var duration = endtick - starttick;

                    if (duration < starttick)
                    {
                        Spells.E.Cast(endpos);
                    }
                }
            }
        }
Ejemplo n.º 4
0
        private static void OnJungle()
        {
            if (ObjectManager.Player.ManaPercent < Utilities.Slider("junglemana"))
            {
                return;
            }

            var mob = MinionManager.GetMinions(ObjectManager.Player.ServerPosition, Orbwalking.GetRealAutoAttackRange(ObjectManager.Player) + 100, MinionTypes.All, MinionTeam.Neutral, MinionOrderTypes.MaxHealth);

            if (mob == null || mob.Count == 0)
            {
                return;
            }

            if (Spells.Q.IsReady() && Utilities.Enabled("q.jungle") && mob[0].IsValidTarget(Spells.Q.Range))
            {
                Spells.Q.Cast();
            }

            if (Spells.W.IsReady() && Utilities.Enabled("w.jungle") && mob[0].IsValidTarget(Spells.W.Range))
            {
                Spells.W.Cast();
            }
        }
Ejemplo n.º 5
0
        public static void OnCombo()
        {
            var target = TargetSelector.GetTarget(Spells.R.Range, TargetSelector.DamageType.Magical);

            if (target != null)
            {
                if (Spells.Q.IsReady() && Utilities.Enabled("q.combo") && target.IsValidTarget(Spells.Q.Range) && !Utilities.IsInvulnerable(target, DamageType.Physical))
                {
                    Spells.Q.Cast();
                }

                if (Spells.W.IsReady() && Utilities.Enabled("w.combo") && target.IsValidTarget(Spells.W.Range))
                {
                    Spells.W.Cast();
                }

                if (Spells.E.IsReady() && Utilities.Enabled("e.combo") && target.IsValidTarget(2000) && !Utilities.IsInvulnerable(target, DamageType.Magical))
                {
                    Spells.E.Cast();
                }

                if (Spells.R.IsReady() && Utilities.Enabled("r.combo") && target.IsValidTarget(Spells.R.Range) && !Utilities.IsInvulnerable(target, DamageType.Magical))
                {
                    if (Utilities.Enabled("r." + target.ChampionName))
                    {
                        Spells.R.HikiCast(target, Utilities.HikiChance("hitchance"), "prediction", Menus.Config);
                    }
                }
            }
        }