Example #1
0
        public static float GetSmiteKSDamage(SummonerManager.SmiteType type)
        {
            float damage = 0;

            switch (type)
            {
            case SummonerManager.SmiteType.Challenging:
                damage = 54 + (6 * Player.Instance.Level);
                break;

            case SummonerManager.SmiteType.Chilling:
                damage = 20 + (8 * Player.Instance.Level);
                break;
            }
            return(damage);
        }
Example #2
0
        public void Execute()
        {
            if (SummonerManager.Smite.Handle.Ammo <= MenuHelper.GetSliderValue(Summoners.Menu, "Summoners.Smite.Keep.Count"))
            {
                return;
            }
            Obj_AI_Minion Monster;

            Monster = EloBuddy.SDK.EntityManager.MinionsAndMonsters.GetJungleMonsters().
                      FirstOrDefault(m => Managers.EntityManager.MonsterSmiteables.Contains(m.BaseSkinName) &&
                                     Summoners.Menu.GetCheckBoxValue("Smite.Monster." + m.BaseSkinName) &&
                                     m.TotalShieldHealth() <= Managers.EntityManager.GetSmiteDamage() - Summoners.Menu.GetSliderValue("Summoners.Smite.Substract")
                                     );
            if (Monster != null)
            {
                SummonerManager.Smite.Cast(Monster);
            }

            if (!Summoners.Menu.GetCheckBoxValue("Summoners.Smite.Champions"))
            {
                return;
            }
            if (SummonerManager.Smite.Handle.Ammo <= MenuHelper.GetSliderValue(Summoners.Menu, "Summoners.Smite.Keep.Count"))
            {
                return;
            }

            if (Summoners.Menu.GetCheckBoxValue("Summoners.Smite.KillSteal"))
            {
                SummonerManager.SmiteType smiteType = SummonerManager.SmiteType.None;
                switch (SummonerManager.Smite.Handle.Name)
                {
                case "s5_SummonerSmitePlayerGanker": smiteType = SummonerManager.SmiteType.Chilling; break;

                case "s5_SummonerSmiteDuel": smiteType = SummonerManager.SmiteType.Challenging; break;
                }
                if (smiteType != SummonerManager.SmiteType.None)
                {
                    Obj_AI_Base ks = EloBuddy.SDK.EntityManager.Heroes.Enemies.FirstOrDefault(p =>
                                                                                              Prediction.Health.GetPrediction(p, Game.Ping) <= Managers.EntityManager.GetSmiteKSDamage(smiteType) - Summoners.Menu.GetSliderValue("Summoners.Smite.Substract") &&
                                                                                              p.IsValidTarget(SummonerManager.Smite.Range)
                                                                                              );
                    if (ks != null)
                    {
                        SummonerManager.Smite.Cast(ks);
                    }
                }
            }

            if (SummonerManager.Smite.Handle.Ammo <= MenuHelper.GetSliderValue(Summoners.Menu, "Summoners.Smite.Keep.Count"))
            {
                return;
            }

            Obj_AI_Base target = TargetSelector.GetTarget(SummonerManager.Smite.Range, DamageType.Mixed);

            if (target == null || !Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo))
            {
                return;
            }
            switch (SummonerManager.Smite.Handle.Name)
            {
            case "S5_SummonerSmitePlayerGanker":     // Blue Smite
                if (target.HealthPercent <= Summoners.Menu.GetSliderValue("Summoners.Smite.Champions.Health") && target.IsInAutoAttackRange(Player.Instance))
                {
                    SummonerManager.Smite.Cast(target);
                }
                break;

            case "S5_SummonerSmiteDuel":     // Red Smite
                if (target.HealthPercent <= Summoners.Menu.GetSliderValue("Summoners.Smite.Champions.Health") && target.IsInRange(Player.Instance, SummonerManager.Smite.Range / 2))
                {
                    SummonerManager.Smite.Cast(target);
                }
                break;

            default:
                break;
            }
        }