Esempio n. 1
0
        private void OnHarass()
        {
            bool  useQ   = Menu["harass"]["useq"].Enabled;
            float useQHP = Menu["harass"]["hpq"].As <MenuSlider>().Value;

            if (Q.Ready && useQ && Player.HealthPercent() >= useQHP)
            {
                var target = GetBestEnemyHeroTargetInRange(Q.Range);
                if (target != null && target.IsValidTarget(Player.AttackRange + target.BoundingRadius))
                {
                    Q.Cast();
                }
            }

            bool  useE   = Menu["harass"]["usee"].Enabled;
            float useEHP = Menu["harass"]["hpe"].As <MenuSlider>().Value;

            if (E.Ready && useE && Player.HealthPercent() >= useEHP)
            {
                var target = GetBestEnemyHeroTargetInRange(E.Range);
                if (target.IsValidTarget(E.Range) && target != null)
                {
                    E.Cast(target);
                }
            }
        }
Esempio n. 2
0
        /// <summary>
        ///     Gets the real Damage the R spell would deal to a determined enemy hero.
        /// </summary>
        /// <param name="target">The target.</param>
        public double GetTotalLivingArtilleryDamage(Obj_AI_Hero target)
        {
            var missingHealth = Math.Min(60, 100 / target.HealthPercent());
            var damage        = UtilityClass.Player.GetSpellDamage(target, SpellSlot.R) * (1 + 0.833 * missingHealth / 100);

            return(damage * (target.HealthPercent() < 40 ? 2 : 1));
        }
Esempio n. 3
0
        static void Potions()
        {
            if (Menus._menu["consumable"]["usepot"].Enabled)
            {
                bool hasBuff = false;

                foreach (string buff in Extensions.PotionBuffs)
                {
                    if (_player.HasBuff(buff))
                    {
                        if (!hasBuff)
                        {
                            hasBuff = true;
                        }
                    }
                }

                foreach (uint item in Extensions.PotionItems)
                {
                    if (_player.HasAndCanUseItem(item) && !hasBuff &&
                        _player.HealthPercent() <= Menus._menu["consumable"]["potpercent"].Value)
                    {
                        _player.UseItem(item);
                    }
                }
            }
        }
Esempio n. 4
0
        private static void Game_OnUpdate()
        {
            if (_player.IsDead)
            {
                return;
            }

            bool hasBuff = false;

            foreach (string buff in Extensions.PotionBuffs)
            {
                if (_player.HasBuff(buff) && !hasBuff)
                {
                    hasBuff = true;
                }
            }

            foreach (uint item in Extensions.PotionItems)
            {
                if (_player.HasAndCanUseItem(item) && !hasBuff &&
                    _player.HealthPercent() <= Menus._menu["pots"]["potpercent"].Value)
                {
                    _player.UseItem(item);
                }
            }
        }
Esempio n. 5
0
        private void OnCombo()
        {
            var   target     = GetBestEnemyHeroTargetInRange(1500);
            bool  useQ       = Menu["combo"]["useq"].Enabled;
            float useQHP     = Menu["combo"]["useqhp"].As <MenuSlider>().Value;
            bool  useWF      = Menu["combo"]["usewf"].Enabled;
            bool  useW       = Menu["combo"]["usew"].Enabled;
            bool  useE       = Menu["combo"]["usee"].Enabled;
            var   EPredition = E.GetPrediction(target);
            bool  useR       = Menu["combo"]["user"].Enabled;
            float useRHP     = Menu["combo"]["userhp"].As <MenuSlider>().Value;

            if (!target.IsValidTarget())
            {
                return;
            }
            if (Q.Ready && target.IsValidTarget(400) && useQ && Player.HealthPercent() < useQHP)
            {
                Q.Cast();
            }
            if (W.Ready)
            {
                if (!target.IsFacing(Player) && useWF && target.IsValidTarget(W.Range))
                {
                    W.Cast();
                }
                else if (target.IsFacing(Player) && useW && target.IsValidTarget(W.Range) && Player.HealthPercent() < target.HealthPercent())
                {
                    W.Cast();
                }
            }
            if (E.Ready && target.IsValidTarget(E.Range) && useE)
            {
                if (EPredition.HitChance >= HitChance.High)
                {
                    E.Cast(EPredition.CastPosition);
                }
            }
            if (R.Ready && !Player.IsRecalling() && Player.HealthPercent() <= useRHP && target.IsValidTarget(500))
            {
                R.Cast();
            }
        }
Esempio n. 6
0
        public static void Healing()
        {
            List <Obj_AI_Base> targets = ObjectManager.Get <Obj_AI_Base>()
                                         .Where(a => a.IsLegitimate() && Extensions.BigMonsterNameList.Contains(a.UnitSkinName)).ToList();

            if (_player.HealthPercent() <= Menus._menu["settings"]["smiteheal"].Value)
            {
                Spells.CastSmite(targets);
            }
        }
Esempio n. 7
0
        private void OnCombo()
        {
            bool  useQ    = Menu["combo"]["useq"].Enabled;
            float QRange  = Menu["combo"]["qrange"].As <MenuSlider>().Value;
            bool  useQGap = Menu["combo"]["useq2"].Enabled;

            if (Q.Ready)
            {
                var targetq  = GetBestEnemyHeroTargetInRange(QRange);
                var targetq2 = GetBestEnemyHeroTargetInRange(Q2.Range);
                if (targetq.IsValidTarget(QRange) && useQ && Player.SpellBook.GetSpell(SpellSlot.Q).Name == "ThreshQ")
                {
                    Q.Cast(targetq);
                }
                if (targetq2.IsValidTarget(Q2.Range) && useQGap && Player.SpellBook.GetSpell(SpellSlot.Q).Name == "ThreshQLeap" && targetq2.HasBuff("ThreshQ"))
                {
                    Q2.Cast();
                }
            }

            bool  useWself = Menu["combo"]["usewself"].Enabled;
            float WSHP     = Menu["combo"]["wshp"].As <MenuSlider>().Value;

            if (W.Ready && useWself && Player.HealthPercent() <= WSHP)
            {
                var target = GetBestEnemyHeroTargetInRange(W.Range);
                if (target.IsValidTarget(W.Range))
                {
                    W.Cast(Player.ServerPosition);
                }
            }

            bool useE = Menu["combo"]["usee"].Enabled;

            if (E.Ready && useE)
            {
                var target = GetBestEnemyHeroTargetInRange(E.Range);
                if (target.IsValidTarget(E.Range) && !target.HasBuff("ThreshQ"))
                {
                    E.Cast(target);
                }
            }

            bool  useR     = Menu["combo"]["user"].Enabled;
            float REnemies = Menu["combo"]["usere"].As <MenuSlider>().Value;

            if (R.Ready && useR && Player.CountEnemyHeroesInRange(R.Range) >= REnemies)
            {
                var target = GetBestEnemyHeroTargetInRange(R.Range);
                if (target.IsValidTarget(R.Range))
                {
                    R.Cast();
                }
            }
        }
Esempio n. 8
0
        public void     Combo()
        {
            bool useQ         = WorldMenu.Combo["useQ"].As <MenuBool>().Enabled;
            bool useW         = WorldMenu.Combo["useW"].As <MenuBool>().Enabled;
            bool useE         = WorldMenu.Combo["useE"].As <MenuBool>().Enabled;
            bool useR         = WorldMenu.Combo["useR"].As <MenuBool>().Enabled;
            var  percentHealW = WorldMenu.Combo["lifeW"].As <MenuSlider>().Value;
            var  percentHealR = WorldMenu.Combo["lifeR"].As <MenuSlider>().Value;
            var  target       = TargetSelector.GetTarget(ManageSpells.Q.Range);

            if (!target.IsValidTarget())
            {
                return;
            }

            if (useQ && ManageSpells.Q.Ready)
            {
                if (target.IsValidTarget())
                {
                    ManageSpells.Q.Cast(target);
                }
            }

            if (useW && ManageSpells.W.Ready && Player.HealthPercent() <= percentHealW)
            {
                ManageSpells.W.Cast(Player);
            }

            if (useE && ManageSpells.E.Ready)
            {
                if (target.IsValidTarget())
                {
                    ManageSpells.E.Cast(Player);
                }
            }

            if (useR && ManageSpells.R.Ready && Player.HealthPercent() <= percentHealR)
            {
                ManageSpells.R.Cast(Player);
            }
        }
Esempio n. 9
0
        public static bool ShouldJump(Vector3 position, Obj_AI_Hero target = null)
        {
            if (!Variables.Menu["safety"]["enabled"].Enabled)
            {
                return(true);
            }

            if (Variables.Menu["safety"]["turretCheck"].Enabled && position.PointUnderEnemyTurret())
            {
                return(false);
            }
            else if (Variables.Menu["safety"]["enabled"].Enabled)
            {
                if (ObjectManager.GetLocalPlayer().HealthPercent() < Variables.Menu["safety"]["minHealth"].Value &&
                    ObjectManager.GetLocalPlayer().GetBurstDamage(target) < target.HealthPercent())
                {
                    return(false);
                }

                if (Variables.Menu["safety"]["countCheck"].Enabled)
                {
                    var enemies = position.GetEnemiesInRange(400);
                    var allies  = position.GetAlliesInRange(400);

                    var ec = enemies.Count;
                    var ac = allies.Count;

                    //if no enemies within 400 radius of jumping position then dont jump
                    if (ec == 0)
                    {
                        return(false);
                    }

                    float ratio    = ac / ec;
                    var   setratio = Variables.Menu["safety"]["ratio"].Value / 5f;

                    //Ratio of allies:enemies
                    //if < allies then enemies
                    if (ratio < setratio)
                    {
                        return(false);
                    }
                }

                return(true);
            }

            return(false);
        }
Esempio n. 10
0
        private void ProtectorOnTargetedProtection(Obj_AI_Base caster, Obj_AI_Hero target, SpellData spell)
        {
            try
            {
                if (!ConfigValue <bool>("Misc.Shield.Target"))
                {
                    return;
                }

                if (Orbwalking.IsAutoAttack(spell.Name) &&
                    target.HealthPercent() > ConfigValue <Slider>("Misc.Shield.Health").Value)
                {
                    return;
                }

                if (spell.MissileSpeed > 2000 || spell.MissileSpeed == 0)
                {
                    return;
                }

                // TODO: blacklist FiddleQ, FioraQ/R, LeonaE, VladQ, ZileanQ

                if (target.IsMe && E.IsReady())
                {
                    CastShield(caster.Position);
                }

                if (!target.IsMe && W.IsReady() && W.IsInRange(target) && (IsShieldActive || E.IsReady()))
                {
                    var jumpTime = (Player.Distance(target) * 1000 / W.Instance.SData.MissileSpeed) +
                                   (W.Instance.SData.SpellCastTime * 1000);
                    var missileTime = caster.Distance(target) * 1000 / spell.MissileSpeed;

                    if (jumpTime > missileTime)
                    {
                        Console.WriteLine("Abort Jump - Missile too Fast: {0} {1}", jumpTime, missileTime);
                        return;
                    }

                    W.CastOnUnit(target, UsePackets);
                    Utility.DelayAction.Add((int)jumpTime, () => CastShield(caster.Position));
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Esempio n. 11
0
        private void Game_OnUpdate()
        {
            if (Player.IsDead || MenuGUI.IsChatOpen())
            {
                return;
            }

            switch (Orbwalker.Mode)
            {
            case OrbwalkingMode.Combo:
                OnCombo();
                break;

            case OrbwalkingMode.Mixed:
                OnHarass();
                break;

            case OrbwalkingMode.Laneclear:
                OnLaneClear();
                OnJungleClear();
                break;
            }
            Killsteal();

            if (Q.Ready && Menu["misc"]["autoq"].Enabled)
            {
                foreach (var target in GameObjects.EnemyHeroes.Where(
                             t => (t.HasBuffOfType(BuffType.Charm) || t.HasBuffOfType(BuffType.Stun) ||
                                   t.HasBuffOfType(BuffType.Fear) || t.HasBuffOfType(BuffType.Snare) ||
                                   t.HasBuffOfType(BuffType.Taunt) || t.HasBuffOfType(BuffType.Knockback) ||
                                   t.HasBuffOfType(BuffType.Suppression)) && t.IsValidTarget(Q.Range) &&
                             !Invulnerable.Check(t, DamageType.Magical)))
                {
                    Q.Cast(target);
                }
            }
            var   EkkoR = ObjectManager.Get <GameObject>().FirstOrDefault(o => o.IsValid && o.Name == "Ekko_Base_R_TrailEnd.troy");
            bool  autoR = Menu["misc"]["autor"].Enabled;
            float hpR   = Menu["misc"]["minhp"].As <MenuSlider>().Value;

            if (R.Ready && EkkoR != null && autoR && Player.HealthPercent() <= hpR)
            {
                R.Cast();
            }
        }
Esempio n. 12
0
        private void ProtectorOnTargetedProtection(Obj_AI_Base caster, Obj_AI_Hero target, SpellData spell)
        {
            try
            {
                if (!ConfigValue<bool>("Misc.Shield.Target"))
                    return;

                if (Orbwalking.IsAutoAttack(spell.Name) &&
                    target.HealthPercent() > ConfigValue<Slider>("Misc.Shield.Health").Value)
                    return;

                if (spell.MissileSpeed > 2000 || spell.MissileSpeed == 0)
                    return;

                // TODO: blacklist FiddleQ, FioraQ/R, LeonaE, VladQ, ZileanQ

                if (target.IsMe && E.IsReady())
                {
                    CastShield(caster.Position);
                }

                if (!target.IsMe && W.IsReady() && W.IsInRange(target) && (IsShieldActive || E.IsReady()))
                {
                    var jumpTime = (Player.Distance(target)*1000/W.Instance.SData.MissileSpeed) +
                                   (W.Instance.SData.SpellCastTime*1000);
                    var missileTime = caster.Distance(target)*1000/spell.MissileSpeed;

                    if (jumpTime > missileTime)
                    {
                        Console.WriteLine("Abort Jump - Missile too Fast: {0} {1}", jumpTime, missileTime);
                        return;
                    }

                    W.CastOnUnit(target, UsePackets);
                    Utility.DelayAction.Add((int) jumpTime, () => CastShield(caster.Position));
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
            }
        }
Esempio n. 13
0
        internal static bool R2Logic(Obj_AI_Hero target)
        {
            if (target == null || !target.IsValidTarget() || !MyLogic.isRActive ||
                MyLogic.ComboMenu["FlowersRiven.ComboMenu.RMode"].As <MenuList>().Value == 3 ||
                !MyLogic.ComboMenu["FlowersRiven.ComboMenu.RTargetFor" + target.ChampionName].Enabled)
            {
                return(false);
            }

            switch (MyLogic.ComboMenu["FlowersRiven.ComboMenu.RMode"].As <MenuList>().Value)
            {
            case 0:
                if (target.HealthPercent() < 20 ||
                    target.Health >
                    ObjectManager.GetLocalPlayer().GetSpellDamage(target, SpellSlot.R) +
                    ObjectManager.GetLocalPlayer().GetAutoAttackDamage(target) * 2 && target.HealthPercent() < 40 ||
                    target.Health <= ObjectManager.GetLocalPlayer().GetSpellDamage(target, SpellSlot.R) ||
                    target.Health <= GetComboDamage(target))
                {
                    return(MyLogic.R.Cast(target.ServerPosition));
                }
                break;

            case 1:
                if (ObjectManager.GetLocalPlayer().GetSpellDamage(target, SpellSlot.R) > target.Health && target.DistanceToPlayer() < 600)
                {
                    return(MyLogic.R.Cast(target.ServerPosition));
                }
                break;

            case 2:
                if (target.DistanceToPlayer() < 600)
                {
                    return(MyLogic.R.Cast(target.ServerPosition));
                }
                break;
            }

            return(false);
        }
Esempio n. 14
0
        private void RCombo()
        {
            var target = GetBestEnemyHeroTargetInRange(R.Range);

            if (!target.IsValidTarget())
            {
                return;
            }

            bool  useR     = Menu["combo"]["user"].Enabled;
            float RHp      = Menu["combo"]["rhp"].As <MenuSlider>().Value;
            float REnemies = Menu["combo"]["defr"].As <MenuSlider>().Value;

            if (R.Ready && useR && Player.HealthPercent() <= RHp && target.IsValidTarget(R.Range))
            {
                R.Cast(Player);
            }
            if (R.Ready && useR && target.IsValidTarget(R.Range) && Player.CountEnemyHeroesInRange(R.Range - 50) >= REnemies)
            {
                R.Cast(Player);
            }
        }
Esempio n. 15
0
        /// <summary>
        ///     Checks if the specified target is invulnerable.
        /// </summary>
        /// <param name="hero">The target.</param>
        /// <param name="damageType">Type of the damage.</param>
        /// <param name="ignoreShields">if set to <c>true</c> [ignore shields].</param>
        /// <param name="damage">The damage.</param>
        /// <returns></returns>
        public static bool Check(
            Obj_AI_Hero hero,
            DamageType damageType = DamageType.True,
            bool ignoreShields    = true,
            float damage          = -1f)
        {
            if (hero.ValidActiveBuffs().Any(b => b.Type == BuffType.Invulnerability))
            {
                return(true);
            }

            foreach (var entry in Entries)
            {
                if (entry.ChampionName == null || entry.ChampionName == hero.ChampionName)
                {
                    if (entry.DamageType == null || entry.DamageType == damageType)
                    {
                        if (hero.HasBuff(entry.BuffName))
                        {
                            if (!ignoreShields || !entry.IsShield)
                            {
                                if (entry.CheckFunction == null || ExecuteCheckFunction(entry, hero, damageType))
                                {
                                    if (entry.MinHealthPercent <= 0 || hero.HealthPercent() < entry.MinHealthPercent)
                                    {
                                        return(true);
                                    }
                                }
                            }
                        }
                    }
                }
            }

            return(false);
        }
Esempio n. 16
0
        private void OnCombo()
        {
            var target = GetBestEnemyHeroTargetInRange(E.Range);


            if (!target.IsValidTarget())
            {
                return;
            }

            bool useQ = Menu["combo"]["useq"].Enabled;

            if (Q.Ready && useQ && target.IsValidTarget(Q.Range))
            {
                switch (Menu["combo"]["qco"].As <MenuList>().Value)
                {
                case 0:
                    Q.Cast(target);
                    break;

                case 1:
                    Q2.Cast(target);
                    break;
                }
            }

            bool  useW = Menu["combo"]["usew"].Enabled;
            float hpW  = Menu["combo"]["whp"].As <MenuSlider>().Value;

            if (W.Ready && useW && target.IsValidTarget(500))
            {
                switch (Player.SpellBook.GetSpell(SpellSlot.W).ToggleState)
                {
                case 1:
                    if (Player.SpellBook.GetSpell(SpellSlot.W).ToggleState == 1 && Player.HealthPercent() > hpW)
                    {
                        W.Cast();
                    }
                    break;

                case 2:
                    if (Player.SpellBook.GetSpell(SpellSlot.W).ToggleState == 2 && Player.HealthPercent() < hpW)
                    {
                        W.Cast();
                    }
                    break;
                }
            }

            bool useE = Menu["combo"]["usee"].Enabled;

            if (E.Ready && target.IsValidTarget(E.Range) && useE)
            {
                E.Cast(target);
            }

            bool  useR = Menu["combo"]["user"].Enabled;
            float thpR = Menu["combo"]["rhp"].As <MenuSlider>().Value;
            float thR  = Menu["combo"]["rce"].As <MenuSlider>().Value;

            if (R.Ready && useR && target.IsValidTarget(R.Range) && Player.CountEnemyHeroesInRange(R.Range) >= thR || target.HealthPercent() < thpR)
            {
                R.Cast();
            }
        }
Esempio n. 17
0
        static void HealUltManager(bool forceheal = false, bool forceult = false, Obj_AI_Hero target = null)
        {
            if (W.Ready)
            {
                if (Game.TickCount - LastHealDetection < 1000 && HealTarget.IsValidTarget(W.Range, false))
                {
                    var setvaluehealt = Getslider("hpct" + HealTarget.ChampionName);
                    if (HealTarget.Health <= setvaluehealt)
                    {
                        W.Cast(HealTarget);
                    }
                }
            }

            if (R.Ready)
            {
                if (Game.TickCount - LastUltDetection < 1000 && UltTarget.IsValidTarget(R.Range, false))
                {
                    var setvalueult = Getslider("upct" + UltTarget.ChampionName);
                    if (UltTarget.Health <= setvalueult)
                    {
                        R.Cast(UltTarget);
                    }
                }
            }

            if (forceheal && target != null && W.Ready && Player.Distance(target) <= W.Range)
            {
                W.CastOnUnit(target);
                return;
            }
            if (forceult && target != null && R.Ready && Player.Distance(target) <= R.Range)
            {
                if (debug())
                {
                    Console.WriteLine("Forceult");
                }
                R.CastOnUnit(target);
                return;
            }

            if (GetBool("Healingon") && !GetBool("onlyhincdmg"))
            {
                var herolistheal = GameObjects.AllyHeroes
                                   .Where(
                    h =>
                    !h.IsDead && GetBool("heal" + h.ChampionName) &&
                    h.HealthPercent() <= Getslider("hpct" + h.ChampionName) && Player.Distance(h) <= R.Range)
                                   .OrderByDescending(i => i.IsMe)
                                   .ThenBy(i => i.HealthPercent());

                if (W.Ready)
                {
                    if (herolistheal.Contains(Player) && !Player.IsRecalling())
                    {
                        W.CastOnUnit(Player);
                        return;
                    }
                    else if (herolistheal.Any())
                    {
                        var hero = herolistheal.FirstOrDefault();

                        if (Player.Distance(hero) <= R.Range && !Player.IsRecalling() && !hero.IsRecalling())
                        {
                            W.CastOnUnit(hero);
                            return;
                        }
                    }
                }
            }

            if (GetBool("Ultingon") && !GetBool("onlyuincdmg"))
            {
                Console.WriteLine(Player.HealthPercent());
                var herolist = GameObjects.AllyHeroes
                               .Where(
                    h =>
                    !h.IsDead &&
                    GetBool("ult" + h.ChampionName) &&
                    h.HealthPercent() <= Getslider("upct" + h.ChampionName) &&
                    Player.Distance(h) <= R.Range && Player.CountEnemyHeroesInRange(500) > 0).OrderByDescending(i => i.IsMe).ThenBy(i => i.HealthPercent());

                if (R.Ready)
                {
                    if (herolist.Contains(Player))
                    {
                        if (debug())
                        {
                            Console.WriteLine("regultself");
                        }
                        R.CastOnUnit(Player);
                        return;
                    }

                    else if (herolist.Any())
                    {
                        var hero = herolist.FirstOrDefault();

                        if (Player.Distance(hero) <= R.Range)
                        {
                            if (debug())
                            {
                                Console.WriteLine("regultotherorself");
                            }
                            R.CastOnUnit(hero);
                            return;
                        }
                    }
                }
            }
        }
Esempio n. 18
0
        private void Game_OnUpdate()
        {
            if (Player.IsDead || MenuGUI.IsChatOpen() || Player.IsRecalling())
            {
                return;
            }

            switch (Orbwalker.Mode)
            {
            case OrbwalkingMode.Combo:
                OnCombo();
                break;

            case OrbwalkingMode.Mixed:
                OnHarass();
                break;

            case OrbwalkingMode.Laneclear:
                Jungle();
                break;
            }
            Killsteal();
            if (Menu["misc"]["autoq"].Enabled && Player.SpellBook.GetSpell(SpellSlot.Q).Name == "JavelinToss")
            {
                foreach (var target in GameObjects.EnemyHeroes.Where(
                             t => (t.HasBuffOfType(BuffType.Charm) || t.HasBuffOfType(BuffType.Stun) ||
                                   t.HasBuffOfType(BuffType.Fear) || t.HasBuffOfType(BuffType.Snare) ||
                                   t.HasBuffOfType(BuffType.Taunt) || t.HasBuffOfType(BuffType.Knockback) ||
                                   t.HasBuffOfType(BuffType.Suppression)) && t.IsValidTarget(QH.Range) &&
                             !Invulnerable.Check(t, DamageType.Magical)))
                {
                    QH.Cast(target);
                }
            }
            if (Menu["misc"]["autow"].Enabled && Player.SpellBook.GetSpell(SpellSlot.W).Name == "Bushwhack")
            {
                foreach (var target in GameObjects.EnemyHeroes.Where(
                             t => (t.HasBuffOfType(BuffType.Charm) || t.HasBuffOfType(BuffType.Stun) ||
                                   t.HasBuffOfType(BuffType.Fear) || t.HasBuffOfType(BuffType.Snare) ||
                                   t.HasBuffOfType(BuffType.Taunt) || t.HasBuffOfType(BuffType.Knockback) ||
                                   t.HasBuffOfType(BuffType.Suppression)) && t.IsValidTarget(WH.Range) &&
                             !Invulnerable.Check(t, DamageType.Magical)))
                {
                    WH.Cast(target);
                }
            }
            float hp = Menu["misc"]["autoeh"].As <MenuSlider>().Value;

            if (Menu["misc"]["autoe"].Enabled && EH.Ready && Player.SpellBook.GetSpell(SpellSlot.E).Name == "PrimalSurge" && Player.HealthPercent() <= hp)
            {
                EH.Cast(Player);
            }
            if (Menu["flee"]["key"].Enabled)
            {
                Flee();
            }
        }
Esempio n. 19
0
 public static bool IsHealthy(this Obj_AI_Hero source)
 {
     return(source.HealthPercent() >= Variables.Menu["safety"]["minHealth"].Value);
 }
Esempio n. 20
0
        private void OnUpdate()
        {
            var Modes        = new Modes();
            var percentHealW = WorldMenu.miscs["lifeW"].As <MenuSlider>().Value;
            var percentHealR = WorldMenu.miscs["lifeR"].As <MenuSlider>().Value;

            if (Player.IsDead || MenuGUI.IsChatOpen())
            {
                return;
            }
            switch (Orbwalker.Implementation.Mode)
            {
            case OrbwalkingMode.Combo:
                Modes.Combo();
                break;

            case OrbwalkingMode.Mixed:
                Modes.Harass();
                break;

            case OrbwalkingMode.Laneclear:
                Modes.LaneClear();
                break;
            }

            if (WorldMenu.miscs["autoW"].As <MenuBool>().Enabled&& ManageSpells.W.Ready && Player.HealthPercent() <= percentHealW && !(Player.IsRecalling()))
            {
                ManageSpells.W.Cast(Player);
            }

            if (WorldMenu.miscs["autoR"].As <MenuBool>().Enabled&& ManageSpells.R.Ready && Player.HealthPercent() <= percentHealR && !(Player.IsRecalling()))
            {
                ManageSpells.R.Cast(Player);
            }
        }
Esempio n. 21
0
 private static void AutoPeel()
 {
     if (Setup.Misc["Peel"].As <MenuBool>().Enabled&& Spells.E.Ready)
     {
         var target = TargetSelector.GetTarget(450);
         if (target != null && target.AttackRange < 400 && Setup.Misc["HP"].As <MenuSlider>().Value > Player.HealthPercent())
         {
             Spells.E.Cast(target);
         }
     }
 }
Esempio n. 22
0
File: Lux.cs Progetto: Zypppy/AimTec
        private void Combo()
        {
            bool useQ = Menu["combo"]["useq"].Enabled;

            if (Q.Ready && useQ)
            {
                var target = GetBestEnemyHeroTargetInRange(Q.Range);
                if (target != null)
                {
                    Q.Cast(target);
                }
            }

            bool  useW   = Menu["combo"]["usew"].Enabled;
            float useWhp = Menu["combo"]["usewhp"].As <MenuSlider>().Value;

            if (W.Ready && useW && Player.HealthPercent() <= useWhp)
            {
                var target = GetBestEnemyHeroTargetInRange(W.Range);
                if (target != null)
                {
                    W.Cast();
                }
            }

            bool useE = Menu["combo"]["usee"].Enabled;

            if (E.Ready && useE)
            {
                switch (Player.SpellBook.GetSpell(SpellSlot.E).ToggleState)
                {
                case 0:
                    var etarget = GetBestEnemyHeroTargetInRange(E.Range);
                    if (etarget != null)
                    {
                        if (etarget.IsValidTarget(E.Range) && Player.SpellBook.GetSpell(SpellSlot.E).ToggleState == 0)
                        {
                            E.Cast(etarget);
                        }
                    }
                    break;

                case 1:
                    var target = GetBestEnemyHeroTargetInRange(E2.Range);
                    if (missiles != null && target != null)
                    {
                        if (target.IsValidTarget(350f, false, false, missiles.ServerPosition) && Player.SpellBook.GetSpell(SpellSlot.E).ToggleState == 1)
                        {
                            E2.Cast();
                        }
                    }
                    break;
                }
            }

            bool useR = Menu["combo"]["user"].Enabled;

            if (R.Ready && useR)
            {
                var target = GetBestEnemyHeroTargetInRange(R.Range);
                if (target != null && R.CastIfWillHit(target, Menu["combo"]["userhit"].As <MenuSlider>().Value - 1))
                {
                    R.Cast(target);
                }
            }
        }
Esempio n. 23
0
 private static bool CanbeRKillAble(Obj_AI_Hero target)
 {
     return(target != null && target.IsValidTarget() && isRActive && HaveRBuff(target) && target.HealthPercent() < 25 && R.Ready);
 }
Esempio n. 24
0
        private void OnCombo()
        {
            bool  useQ = Menu["combo"]["useq"].Enabled;
            bool  useW = Menu["combo"]["usew"].Enabled;
            float WHP  = Menu["combo"]["whp"].As <MenuSlider>().Value;
            bool  useE = Menu["combo"]["usee"].Enabled;
            bool  useR = Menu["combo"]["user"].Enabled;

            var target = GetBestEnemyHeroTargetInRange(Player.AttackRange + 800);

            if (target.IsValidTarget())
            {
                switch (Menu["combo"]["cs"].As <MenuList>().Value)
                {
                case 0:
                    if (useE && E.Ready)
                    {
                        if (Player.Distance(target) > E.Range)
                        {
                            E.Cast();
                        }
                        else if (Player.Distance(target) <= E.Range && !target.HasBuff("udyrbearstuncheck"))
                        {
                            E.Cast();
                        }
                    }
                    if (useR && R.Ready && !Player.HasBuff("UdyrPhoenixStance") && Player.Distance(target) <= R.Range && target.HasBuff("udyrbearstuncheck"))
                    {
                        R.Cast();
                    }
                    if (useQ && Q.Ready && Player.Distance(target) <= Q.Range && target.HasBuff("udyrbearstuncheck"))
                    {
                        Q.Cast();
                    }
                    break;

                case 1:
                    if (useE && E.Ready)
                    {
                        if (Player.Distance(target) > E.Range)
                        {
                            E.Cast();
                        }
                        else if (Player.Distance(target) <= E.Range && !target.HasBuff("udyrbearstuncheck"))
                        {
                            E.Cast();
                        }
                    }
                    if (useQ && Q.Ready && Player.Distance(target) <= Q.Range && target.HasBuff("udyrbearstuncheck"))
                    {
                        Q.Cast();
                    }
                    if (useR && R.Ready && !Player.HasBuff("UdyrPhoenixStance") && Player.Distance(target) <= R.Range && target.HasBuff("udyrbearstuncheck"))
                    {
                        R.Cast();
                    }
                    break;
                }
            }
            if (useW && Player.Distance(target) < 1000)
            {
                if (Player.HealthPercent() <= WHP && !Player.HasBuff("udyrmonkeyagilitybuff"))
                {
                    W.Cast();
                }
            }
        }
Esempio n. 25
0
        private void OnCombo()
        {
            bool useQ = Menu["combo"]["useq"].Enabled;

            if (Q.Ready && useQ && Player.SpellBook.GetSpell(SpellSlot.Q).Name == "YasuoQW" && !Player.IsDashing())
            {
                var qtarget = GetBestEnemyHeroTargetInRange(Q.Range);
                if (qtarget.IsValidTarget(Q.Range) && qtarget != null)
                {
                    Q.Cast(qtarget);
                }
            }
            if (Q.Ready && useQ && Player.SpellBook.GetSpell(SpellSlot.Q).Name == "YasuoQ2W" && !Player.IsDashing())
            {
                var qtarget = GetBestEnemyHeroTargetInRange(Q2.Range);
                if (qtarget.IsValidTarget(Q2.Range) && qtarget != null)
                {
                    Q2.Cast(qtarget);
                }
            }

            bool useQ2 = Menu["combo"]["useq"].Enabled;

            if (Q.Ready && useQ2 && Player.SpellBook.GetSpell(SpellSlot.Q).Name == "YasuoQ3W" && !Player.IsDashing())
            {
                var qtarget = GetBestEnemyHeroTargetInRange(Q3.Range);
                if (qtarget.IsValidTarget(Q3.Range) && qtarget != null)
                {
                    Q3.Cast(qtarget);
                }
            }

            bool useE = Menu["combo"]["usee"].Enabled;

            if (E.Ready && useE)
            {
                var etarget = GetBestEnemyHeroTargetInRange(E.Range);
                if (etarget.IsValidTarget(E.Range) && etarget != null)
                {
                    E.Cast(etarget);
                }
            }


            if (R.Ready)
            {
                var   rtarget   = GetBestEnemyHeroTargetInRange(R.Range);
                bool  useSmartR = Menu["combo"]["usersmart"].Enabled;
                float tRHP      = Menu["combo"]["userhp"].As <MenuSlider>().Value;
                float hitR      = Menu["combo"]["userhit"].As <MenuSlider>().Value;

                bool  useR     = Menu["combo"]["userauto"].Enabled;
                float hittR    = Menu["combo"]["userautohit"].As <MenuSlider>().Value;
                float aroundTR = Menu["combo"]["useraround"].As <MenuSlider>().Value;
                float selfhpR  = Menu["combo"]["usermyhp"].As <MenuSlider>().Value;
                if (useSmartR && rtarget != null)
                {
                    var KockedUp = GameObjects.EnemyHeroes
                                   .Where(x => x.IsValidTarget(R.Range))
                                   .Where(x => x.HasBuffOfType(BuffType.Knockback) || x.HasBuffOfType(BuffType.Knockup));
                    var enemies = KockedUp as IList <Obj_AI_Hero> ?? KockedUp.ToList();
                    if (enemies.Count >= hitR && rtarget != null)
                    {
                        R.CastOnUnit(enemies.FirstOrDefault());
                    }
                    else if (rtarget.HealthPercent() <= tRHP)
                    {
                        R.Cast();
                    }
                }
                else if (useR && rtarget != null)
                {
                    var KockedUp = GameObjects.EnemyHeroes
                                   .Where(x => x.IsValidTarget(R.Range))
                                   .Where(x => x.HasBuffOfType(BuffType.Knockback) || x.HasBuffOfType(BuffType.Knockup));
                    var enemies = KockedUp as IList <Obj_AI_Hero> ?? KockedUp.ToList();
                    if (enemies.Count >= hittR)
                    {
                        R.CastOnUnit(enemies.FirstOrDefault());
                    }
                    else if (rtarget.CountEnemyHeroesInRange(700) <= aroundTR && (rtarget.HasBuffOfType(BuffType.Knockup) || rtarget.HasBuffOfType(BuffType.Knockback)))
                    {
                        R.Cast();
                    }
                    else if (Player.HealthPercent() >= selfhpR && (rtarget.HasBuffOfType(BuffType.Knockup) || rtarget.HasBuffOfType(BuffType.Knockback)))
                    {
                        R.Cast();
                    }
                }
            }
        }