예제 #1
0
 private static void HealOnTick()
 {
     if (PlayerHasHeal && SummonerMenu.GetCheckBoxValue("check" + "heal"))
     {
         var ally =
             EntityManager.Heroes.Allies.OrderBy(a => a.Health)
             .FirstOrDefault(
                 a => a.IsValidTarget(Heal.Range) && !a.IsMe && a.IsInDanger(SummonerMenu.GetSliderValue("slider" + "heal" + "ally")));
         if (ally != null)
         {
             Heal.Cast();
         }
         if (Player.Instance.IsInDanger(SummonerMenu.GetSliderValue("slider" + "heal" + "me")))
         {
             Heal.Cast();
         }
     }
 }
예제 #2
0
 private static void IgniteOnTick()
 {
     if (PlayerHasIgnite && SummonerMenu.GetCheckBoxValue("check" + "ignite"))
     {
         var target = TargetSelector.GetTarget(Ignite.Range, DamageType.Mixed);
         if (target != null && Ignite.IsReady() && !target.IsInRange(Player.Instance, SummonerMenu.GetSliderValue("minimunRangeIgnite")))
         {
             var predictedHealth = Prediction.Health.GetPrediction(target, Game.Ping);
             if (predictedHealth <= GetTotalDamage(target) + IgniteDamage() && predictedHealth > IgniteDamage())
             {
                 Ignite.Cast(target);
             }
         }
     }
 }
예제 #3
0
 private static void BarrierOnTick()
 {
     if (PlayerHasBarrier && SummonerMenu.GetCheckBoxValue("check" + "barrier") && Player.Instance.IsInDanger(SummonerMenu.GetSliderValue("slider" + "barrier")))
     {
         Barrier.Cast();
     }
 }
예제 #4
0
        private static void SmiteOnTick()
        {
            if (!PlayerHasSmite || !Smite.IsReady() || Smite == null || SummonerMenu.GetKeyBindValue("smiteKeybind"))
            {
                return;
            }

            Obj_AI_Base GetJungleMinion;

            var comboBoxValue = SummonerMenu.Get <ComboBox>("comboBox").CurrentValue;
            var sliderSafeDMG = SummonerMenu.GetSliderValue("sliderDMGSmite");

            switch (comboBoxValue)
            {
            case 0:
                GetJungleMinion =
                    EntityManager.MinionsAndMonsters.GetJungleMonsters()
                    .FirstOrDefault(
                        m =>
                        MonsterSmiteables.Contains(m.BaseSkinName) && m.IsValidTarget(Smite.Range) &&
                        Prediction.Health.GetPrediction(m, Game.Ping) <= SmiteDamage() - sliderSafeDMG &&
                        SummonerMenu.GetCheckBoxValue("monster" + m.BaseSkinName));
                break;

            case 1:
                GetJungleMinion =
                    EntityManager.MinionsAndMonsters.GetJungleMonsters()
                    .FirstOrDefault(
                        m =>
                        MonsterSmiteables.Contains(m.BaseSkinName) && m.IsValidTarget(Smite.Range) &&
                        m.Health <= SmiteDamage() - sliderSafeDMG &&
                        SummonerMenu.GetCheckBoxValue("monster" + m.BaseSkinName));
                break;

            default:
                GetJungleMinion = null;
                break;
            }


            if (GetJungleMinion != null)
            {
                Smite.Cast(GetJungleMinion);
            }

            if (!SummonerMenu.GetCheckBoxValue("smiteUseOnChampions"))
            {
                return;
            }

            var keepSmite = SummonerMenu.GetSliderValue("smiteKeep");

            var smiteGanker = Player.Spells.FirstOrDefault(s => s.Name.ToLower().Contains("playerganker"));

            if (Smite.Handle.Ammo < keepSmite)
            {
                return;
            }

            if (smiteGanker != null)
            {
                var target =
                    EntityManager.Heroes.Enemies.FirstOrDefault(
                        e =>
                        Prediction.Health.GetPrediction(e, Game.Ping) - 5 <= SmiteKSDamage() && e.IsValidTarget(Smite.Range));

                if (target != null)
                {
                    Smite.Cast(target);
                }
            }

            var smiteDuel = Player.Spells.FirstOrDefault(s => s.Name.ToLower().Contains("duel"));

            if (smiteDuel != null)
            {
                var target = TargetSelector.GetTarget(Smite.Range, DamageType.Mixed);

                if (target != null && Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo) && target.HealthPercent <= 60 &&
                    target.IsInAutoAttackRange(Player.Instance))
                {
                    Smite.Cast(target);
                }
            }
        }