예제 #1
0
        private static void Game_OnTick(EventArgs args)
        {
            if (Player.Instance.Health * 100 / Player.Instance.MaxHealth <= Variables.AutoWHeal.CurrentValue &&
                Player.Instance.Mana == 5 && Variables.W.IsReady())
            {
                Variables.W.Cast(Player.Instance);
            }

            foreach (var hero in EntityManager.Heroes.Enemies.Where(x => x.IsValidCheck()))
            {
                if (Variables.AutoSmiteKS.CurrentValue && Checker.SmiteReady() && Checker.GetSmiteDamage(hero) >= hero.Health &&
                    Player.Instance.Position.To2D().Distance(hero.Position.To2D())
                    <= 500 + Player.Instance.BoundingRadius + hero.BoundingRadius)
                {
                    Player.Instance.Spellbook.CastSpell(Variables.Smite, hero);
                }

                if (Variables.AutoWKS.CurrentValue && Variables.W.IsReady() && Player.Instance.IsInRange(hero, 500) &&
                    DamageLibrary.GetSpellDamage(Player.Instance, hero, SpellSlot.W) > hero.Health)
                {
                    Variables.W.Cast(Player.Instance);
                }

                if (Variables.AutoESK.CurrentValue && Variables.E.IsReady() && Player.Instance.IsInRange(hero, Variables.E.Range) &&
                    DamageLibrary.GetSpellDamage(Player.Instance, hero, SpellSlot.E) > hero.Health)
                {
                    Variables.E.Cast(hero);
                }
            }

            if (Variables.AutoSmiteSteal.CurrentValue && Checker.SmiteReady())
            {
                var creep = EntityManager.MinionsAndMonsters.GetJungleMonsters(Player.Instance.Position, 800).
                            Where(x => x.BaseSkinName == "SRU_Dragon" || x.BaseSkinName == "SRU_Baron");
                foreach (var x in creep.Where(y => Player.Instance.Distance(y.Position)
                                              <= Player.Instance.BoundingRadius + 500 + y.BoundingRadius))
                {
                    if (x != null && x.Health <= Checker.GetSmiteDamage())
                    {
                        Player.Instance.Spellbook.CastSpell(Variables.Smite, x);
                    }
                }
            }
        }
예제 #2
0
        public static void combo()
        {
            if (Checker.SmiteReady() && Variables.ComboSmite.CurrentValue)
            {
                if (Checker.HasSmiteBlue || Checker.HasSmiteRed)
                {
                    var target = TargetSelector.GetTarget(650, DamageType.Physical);
                    if (target.IsValidCheck() && Player.Instance.Distance(target.Position)
                        <= Player.Instance.BoundingRadius + 500 + target.BoundingRadius)
                    {
                        Player.Instance.Spellbook.CastSpell(Variables.Smite, target);
                    }
                }
            }

            if (Player.HasBuff("RengarR") && Checker.HasYoumuu() && Variables.ComboYoumuu.CurrentValue)
            {
                Checker.CastYoumuu();
            }
            if (!Player.HasBuff("RengarR"))
            {
                if (Variables.ComboMode.CurrentValue == 1)
                {
                    if (Player.Instance.Mana < 5)
                    {
                        var targetW = TargetSelector.GetTarget(500, DamageType.Physical);
                        if (Variables.W.IsReady() && targetW.IsValidCheck())
                        {
                            Variables.W.Cast(targetW);
                        }
                        if (Variables.E.IsReady())
                        {
                            if (Player.Instance.IsDashing() || Orbwalker.CanMove &&
                                !(Checker.CanAttack() && EntityManager.Heroes.Enemies.Any(x => x.IsValidCheck() &&
                                                                                          Player.Instance.IsInAutoAttackRange(x))))
                            {
                                var targetE = TargetSelector.GetTarget(Variables.E.Range, DamageType.Physical);
                                if (targetE.IsValidCheck())
                                {
                                    Variables.E.Cast(targetE);
                                }
                                foreach (var target in EntityManager.Heroes.Enemies.Where(x => x.IsValidTarget(Variables.E.Range) && !x.IsZombie))
                                {
                                    Variables.E.Cast(target);
                                }
                            }
                        }
                        if (Variables.Q.IsReady() && Player.Instance.CountEnemiesInRange(Player.Instance.AttackRange
                                                                                         + Player.Instance.BoundingRadius + 100) != 0)
                        {
                            if (Checker.CanMove() && !Checker.CanAttack())
                            {
                                Variables.Q.Cast();
                            }
                        }
                    }
                    else
                    {
                        if (Player.Instance.IsDashing() || Orbwalker.CanMove &&
                            !(Checker.CanAttack() && EntityManager.Heroes.Enemies.Any(x => x.IsValidCheck() &&
                                                                                      Player.Instance.IsInAutoAttackRange(x))))
                        {
                            var targetE = TargetSelector.GetTarget(Variables.E.Range, DamageType.Physical);
                            if (Variables.E.IsReady() && targetE.IsValidCheck())
                            {
                                Variables.E.Cast(targetE);
                            }
                            foreach (var target in EntityManager.Heroes.Enemies.Where(x => x.IsValidTarget(Variables.E.Range) && !x.IsZombie))
                            {
                                if (Variables.E.IsReady())
                                {
                                    Variables.E.Cast(target);
                                }
                            }
                        }
                    }
                }
                else if (Variables.ComboMode.CurrentValue == 2)
                {
                    if (Player.Instance.Mana < 5)
                    {
                        var targetW = TargetSelector.GetTarget(500, DamageType.Physical);
                        if (Variables.W.IsReady() && targetW.IsValidCheck())
                        {
                            Variables.W.Cast(targetW);
                        }
                        if (Variables.E.IsReady())
                        {
                            if (Player.Instance.IsDashing() || Orbwalker.CanMove &&
                                !(Checker.CanAttack() && EntityManager.Heroes.Enemies.Any(x => x.IsValidCheck() &&
                                                                                          Player.Instance.IsInAutoAttackRange(x))))
                            {
                                var targetE = TargetSelector.GetTarget(Variables.E.Range, DamageType.Physical);
                                if (targetE.IsValidCheck())
                                {
                                    Variables.E.Cast(targetE);
                                }
                                foreach (var target in EntityManager.Heroes.Enemies.Where(x => x.IsValidTarget(Variables.E.Range) && !x.IsZombie))
                                {
                                    Variables.E.Cast(target);
                                }
                            }
                        }
                        if (Variables.Q.IsReady() && Player.Instance.CountEnemiesInRange(Player.Instance.AttackRange
                                                                                         + Player.Instance.BoundingRadius + 100) != 0)
                        {
                            if (Checker.CanMove() && !Checker.CanAttack())
                            {
                                Variables.Q.Cast();
                            }
                        }
                    }

                    else
                    {
                        if (Variables.Q.IsReady() && Player.Instance.CountEnemiesInRange(Player.Instance.AttackRange
                                                                                         + Player.Instance.BoundingRadius + 100) != 0)
                        {
                            if (Checker.CanMove() && !Checker.CanAttack())
                            {
                                Variables.Q.Cast();
                            }
                        }
                        if (Variables.Q.IsReady() && Player.Instance.IsDashing())
                        {
                            Variables.Q.Cast();
                        }
                        if (Variables.E.IsReady())
                        {
                            if (Player.Instance.CountEnemiesInRange(Player.Instance.AttackRange + Player.Instance.BoundingRadius + 100)
                                == 0 && !Player.HasBuff("rengarpassivebuff") && !Player.Instance.IsDashing() &&
                                Orbwalker.CanMove)
                            {
                                var targetE = TargetSelector.GetTarget(Variables.E.Range, DamageType.Physical);
                                if (targetE.IsValidCheck())
                                {
                                    Variables.E.Cast(targetE);
                                }
                                foreach (var target in EntityManager.Heroes.Enemies.Where(x => x.IsValidTarget(Variables.E.Range) && !x.IsZombie))
                                {
                                    Variables.E.Cast(target);
                                }
                            }
                        }
                    }
                }
                else if (Variables.ComboMode.CurrentValue == 3)
                {
                    if (Player.Instance.Mana < 5)
                    {
                        var targetW = TargetSelector.GetTarget(500, DamageType.Physical);
                        if (Variables.W.IsReady() && targetW.IsValidCheck())
                        {
                            Variables.W.Cast(targetW);
                        }
                        if (Variables.E.IsReady())
                        {
                            if (Player.Instance.IsDashing() || Orbwalker.CanMove &&
                                !(Checker.CanAttack() && EntityManager.Heroes.Enemies.Any(x => x.IsValidCheck() &&
                                                                                          Player.Instance.IsInAutoAttackRange(x))))
                            {
                                var targetE = TargetSelector.GetTarget(Variables.E.Range, DamageType.Physical);
                                if (targetE.IsValidCheck())
                                {
                                    Variables.E.Cast(targetE);
                                }
                                foreach (var target in EntityManager.Heroes.Enemies.Where(x => x.IsValidTarget(Variables.E.Range) && !x.IsZombie))
                                {
                                    Variables.E.Cast(target);
                                }
                            }
                        }
                        if (Variables.Q.IsReady() && Player.Instance.CountEnemiesInRange(Player.Instance.AttackRange
                                                                                         + Player.Instance.BoundingRadius + 100) != 0)
                        {
                            if (Checker.CanMove() && !Checker.CanAttack())
                            {
                                Variables.Q.Cast();
                            }
                        }
                    }
                    else
                    {
                        if (Variables.Q.IsReady() && Player.Instance.CountEnemiesInRange(Player.Instance.AttackRange
                                                                                         + Player.Instance.BoundingRadius + 100) != 0)
                        {
                            if (Checker.CanMove() && !Checker.CanAttack())
                            {
                                Variables.Q.Cast();
                            }
                        }
                        if (Variables.E.IsReady() && Player.Instance.IsDashing())
                        {
                            var targetE = TargetSelector.GetTarget(Variables.E.Range, DamageType.Physical);
                            if (Variables.E.IsReady() && targetE.IsValidTarget() && !targetE.IsZombie)
                            {
                                Variables.E.Cast(targetE);
                            }
                            foreach (var target in EntityManager.Heroes.Enemies.Where(x => x.IsValidTarget(Variables.E.Range) && !x.IsZombie))
                            {
                                if (Variables.E.IsReady())
                                {
                                    Variables.E.Cast(target);
                                }
                            }
                        }
                        if (Variables.E.IsReady())
                        {
                            if (Player.Instance.CountEnemiesInRange(Player.Instance.AttackRange + Player.Instance.BoundingRadius + 100)
                                == 0 && !Player.HasBuff("rengarpassivebuff") && !Player.Instance.IsDashing() &&
                                Orbwalker.CanMove)
                            {
                                var targetE = TargetSelector.GetTarget(Variables.E.Range, DamageType.Physical);
                                if (targetE.IsValidCheck())
                                {
                                    Variables.E.Cast(targetE);
                                }
                                foreach (var target in EntityManager.Heroes.Enemies.Where(x => x.IsValidTarget(Variables.E.Range) && !x.IsZombie))
                                {
                                    Variables.E.Cast(target);
                                }
                            }
                        }
                    }
                }
                else if (Variables.ComboMode.CurrentValue == 4)
                {
                    if (Player.Instance.Mana < 5)
                    {
                        var targetW = TargetSelector.GetTarget(500, DamageType.Physical);
                        if (Variables.W.IsReady() && targetW.IsValidCheck())
                        {
                            Variables.W.Cast(targetW);
                        }
                        if (Variables.E.IsReady())
                        {
                            if (Player.Instance.IsDashing() || Orbwalker.CanMove &&
                                !(Checker.CanAttack() && EntityManager.Heroes.Enemies.Any(x => x.IsValidCheck() &&
                                                                                          Player.Instance.IsInAutoAttackRange(x))))
                            {
                                var targetE = TargetSelector.GetTarget(Variables.E.Range, DamageType.Physical);
                                if (targetE.IsValidCheck())
                                {
                                    Variables.E.Cast(targetE);
                                }
                                foreach (var target in EntityManager.Heroes.Enemies.Where(x => x.IsValidTarget(Variables.E.Range) && !x.IsZombie))
                                {
                                    Variables.E.Cast(target);
                                }
                            }
                        }
                        if (Variables.Q.IsReady() && Player.Instance.CountEnemiesInRange(Player.Instance.AttackRange
                                                                                         + Player.Instance.BoundingRadius + 100) != 0)
                        {
                            if (Checker.CanMove() && !Checker.CanAttack())
                            {
                                Variables.Q.Cast();
                            }
                        }
                    }
                    else
                    {
                        if (Variables.Q.IsReady() && Player.Instance.CountEnemiesInRange(Player.Instance.AttackRange
                                                                                         + Player.Instance.BoundingRadius + 100) != 0)
                        {
                            if (Checker.CanMove() && !Checker.CanAttack())
                            {
                                Variables.Q.Cast();
                            }
                        }
                        if (Variables.Q.IsReady() && Player.Instance.IsDashing())
                        {
                            Variables.Q.Cast();
                        }
                    }
                }

                else
                {
                    Chat.Print("Noob Dev");
                }
            }
        }