Beispiel #1
0
        public static void Update(EventArgs args)
        {
            var target = Variables.TargetSelector.GetTarget(Spells.R.Range, DamageType.Physical);

            if (target == null)
            {
                return;
            }

            if (target.HasBuff("kindrednodeathbuff") ||
                target.HasBuff("Undying Rage") ||
                target.HasBuff("JudicatorIntervention"))
            {
                return;
            }

            //if (Spells.Q.IsReady())
            //{
            //    if (target.Health < Spells.Q.GetDamage(target) && Logic.InQRange(target))
            //    {
            //        Spells.Q.Cast(target);
            //    }
            //}

            if (Spells.W.IsReady())
            {
                if (target.Health < Spells.W.GetDamage(target) && Logic.InWRange(target))
                {
                    Spells.W.Cast();
                }
            }

            if (Spells.R.IsReady() && Spells.R.Instance.Name == IsSecondR)
            {
                if (target.Health < Dmg.RDmg(target))
                {
                    var pred = Spells.R.GetPrediction(target);
                    if (pred.Hitchance > HitChance.High)
                    {
                        if (Spells.E.IsReady())
                        {
                            Spells.E.Cast(target.ServerPosition);
                        }
                        Spells.R.Cast(pred.CastPosition);
                    }
                }
            }

            if (!Spells.Ignite.IsReady() || !MenuConfig.Ignite)
            {
                return;
            }

            foreach (var x in GameObjects.EnemyHeroes.Where(t => t.IsValidTarget(600f) && t.Health < Dmg.IgniteDmg))
            {
                GameObjects.Player.Spellbook.CastSpell(Spells.Ignite, x);
            }
        }
Beispiel #2
0
        public static void Update(EventArgs args)
        {
            var target = TargetSelector.GetTarget(Spells.R.Range, TargetSelector.DamageType.Physical);

            if (target == null || target.HasBuff(BackgroundData.InvulnerableList.ToString()))
            {
                return;
            }

            if (Spells.W.IsReady() &&
                MenuConfig.KsW &&
                target.Health <= Spells.W.GetDamage(target) &&
                BackgroundData.InRange(target))
            {
                BackgroundData.CastW(target);
            }

            if (Spells.R.IsReady() &&
                Spells.R.Instance.Name == IsSecondR &&
                MenuConfig.KsR2)
            {
                if (target.Health < Dmg.RDmg(target))
                {
                    var pred = Spells.R.GetPrediction(target);

                    Spells.R.Cast(pred.CastPosition);
                }
            }

            if (target.Health < Spells.Q.GetDamage(target) && Spells.Q.IsReady() && Qstack != 3)
            {
                Spells.Q.Cast(target.Position);
            }

            if (!Spells.Ignite.IsReady() || !MenuConfig.Ignite)
            {
                return;
            }

            if (target.IsValidTarget(600f) && Dmg.IgniteDamage(target) >= target.Health)
            {
                Player.Spellbook.CastSpell(Spells.Ignite, target);
            }
        }
Beispiel #3
0
        public static void Update(EventArgs args)
        {
            var target = TargetSelector.GetTarget(Spells.R.Range, DamageType.Physical);

            if (target == null || target.IsDead || target.HasBuff(BackgroundData.InvulnerableList.ToString()))
            {
                return;
            }

            if (Spells.W.IsReady() &&
                MenuConfig.KsW &&
                target.Health <= Spells.W.GetSpellDamage(target) &&
                BackgroundData.InRange(target))
            {
                BackgroundData.CastW(target);
            }

            if (Spells.R.IsReady() && Spells.R.Name == IsSecondR && MenuConfig.KsR2)
            {
                var rDmg = Dmg.RDmg(target);
                //Chat.Print("Ult dmg= " + rDmg);
                if (rDmg != 0 && (target.Health + target.TotalShieldHealth()) < rDmg)
                {
                    var pred = Spells.R.GetPrediction(target);
                    Player.Spellbook.CastSpell(SpellSlot.R, pred.CastPosition);
                }
            }

            if (target.Health < Spells.Q.GetSpellDamage(target) && Spells.Q.IsReady() && Qstack != 3)
            {
                Player.Spellbook.CastSpell(SpellSlot.Q, target.Position);
            }

            if (Player.Spellbook.CanUseSpell(Spells.Ignite) != SpellState.Ready || !MenuConfig.Ignite)
            {
                return;
            }

            if (target.IsValidTarget(600f) && Dmg.IgniteDamage(target) >= target.Health)
            {
                Player.Spellbook.CastSpell(Spells.Ignite, target);
            }
        }
Beispiel #4
0
        public static void Update(EventArgs args)
        {
            var hero = TargetSelector.GetTarget(Spells.R.Range, TargetSelector.DamageType.Physical);

            if (hero == null || hero.HasBuff("kindrednodeathbuff") || hero.HasBuff("Undying Rage") ||
                hero.HasBuff("JudicatorIntervention"))
            {
                return;
            }

            if (Spells.W.IsReady() && InWRange(hero))
            {
                if (hero.Health <= Spells.W.GetDamage(hero))
                {
                    Spells.W.Cast();
                }
            }

            if (Spells.R.IsReady() && Spells.R.Instance.Name == IsSecondR)
            {
                if (hero.Health < Dmg.RDmg(hero))
                {
                    var pred = Spells.R.GetPrediction(hero);

                    Spells.R.Cast(pred.CastPosition);
                }
            }

            if (!Spells.Ignite.IsReady() || !MenuConfig.Ignite)
            {
                return;
            }

            if (hero.IsValidTarget(600f) && Dmg.IgniteDamage(hero) >= hero.Health)
            {
                Player.Spellbook.CastSpell(Spells.Ignite, hero);
            }
        }