Beispiel #1
0
        private static void AutoUltEvent()
        {
            if (Me.Spellbook.GetSpell(SpellSlot.R).Level > 0 && R.IsReady())
            {
                var ally = GameObjects.AllyHeroes.FirstOrDefault(
                    x => !x.IsMe && !x.IsDead && x.Buffs.Any(a => a.Name.ToLower().Contains("kalistacoopstrikeally")));

                if (ally != null && ally.IsVisible && ally.DistanceToPlayer() <= R.Range)
                {
                    if (MiscOption.GetSliderBool("R", "AutoRAlly").Enabled&& Me.CountEnemyHeroesInRange(R.Range) > 0 &&
                        ally.CountEnemyHeroesInRange(R.Range) > 0 &&
                        ally.HealthPercent <= MiscOption.GetSliderBool("R", "AutoRAlly").Value)
                    {
                        R.Cast();
                    }

                    if (MiscOption.GetBool("R", "Balista").Enabled&& ally.CharacterName == "Blitzcrank")
                    {
                        if (
                            GameObjects.EnemyHeroes.Any(
                                x =>
                                !x.IsDead && x.IsValidTarget() &&
                                x.Buffs.Any(a => a.Name.ToLower().Contains("rocketgrab"))))
                        {
                            R.Cast();
                        }
                    }
                }
            }
        }
Beispiel #2
0
        private static void ComboEvent()
        {
            if (ComboOption.GetBool("ComboGapcloser").Enabled)
            {
                ForcusAttack();
            }

            var target = MyTargetSelector.GetTarget(Q.Range);

            if (target != null && target.IsValidTarget(Q.Range))
            {
                if (ComboOption.UseQ && Q.IsReady() && target.IsValidTarget(Q.Range) && !target.InAutoAttackRange())
                {
                    var qPred = Q.GetPrediction(target);

                    if (qPred.Hitchance >= HitChance.High)
                    {
                        Q.Cast(qPred.CastPosition);
                    }
                }

                if (ComboOption.UseE && E.IsReady() && target.IsValidTarget(E.Range) &&
                    Variables.GameTimeTickCount - lastETime > 500 + Game.Ping)
                {
                    if (target.Health < E.GetKalistaRealDamage(target,
                                                               MiscOption.GetSliderBool("E", "EToler").Enabled,
                                                               MiscOption.GetSliderBool("E", "EToler").Value) &&
                        !target.IsUnKillable())
                    {
                        E.Cast();
                    }

                    if (ComboOption.GetBool("ComboESlow").Enabled&&
                        target.DistanceToPlayer() > Me.AttackRange + Me.BoundingRadius + 100 &&
                        target.IsValidTarget(E.Range))
                    {
                        var EKillMinion = GameObjects.Minions.Where(x => x.IsValidTarget(Me.GetRealAutoAttackRange(x)))
                                          .FirstOrDefault(x => x.Buffs.Any(a => a.Name.ToLower().Contains("kalistaexpungemarker")) &&
                                                          x.DistanceToPlayer() <= E.Range && x.Health < E.GetKalistaRealDamage(x));

                        if (EKillMinion != null && EKillMinion.IsValidTarget(E.Range) &&
                            target.IsValidTarget(E.Range))
                        {
                            E.Cast();
                        }
                    }
                }
            }
        }
Beispiel #3
0
        private static void KillStealEvent()
        {
            if (KillStealOption.UseE && E.IsReady())
            {
                if (
                    GameObjects.EnemyHeroes.Where(
                        x =>
                        x.IsValidTarget(E.Range) &&
                        x.Health <
                        E.GetKalistaRealDamage(x,
                                               MiscOption.GetSliderBool("E", "EToler").Enabled,
                                               MiscOption.GetSliderBool("E", "EToler").Value) &&
                        !x.IsUnKillable()).Any(target => target.IsValidTarget(E.Range)))
                {
                    E.Cast();
                }
            }

            if (KillStealOption.UseQ && Q.IsReady() && Variables.GameTimeTickCount - lastETime > 1000)
            {
                foreach (
                    var target in
                    GameObjects.EnemyHeroes.Where(
                        x => x.IsValidTarget(Q.Range) && x.Health < Me.GetSpellDamage(x, SpellSlot.Q) && !x.IsUnKillable()))
                {
                    if (target.IsValidTarget(Q.Range))
                    {
                        var qPred = Q.GetPrediction(target);

                        if (qPred.Hitchance >= HitChance.High)
                        {
                            Q.Cast(qPred.CastPosition);
                        }
                    }
                }
            }
        }