Exemplo n.º 1
0
        public static void JungleKS()
        {
            if (SkyLv_AurelionSol.Menu.Item("AurelionSol.JungleKS").GetValue <bool>())
            {
                var useQKS     = SkyLv_AurelionSol.Menu.Item("AurelionSol.UseQJungleKS").GetValue <bool>();
                var PacketCast = SkyLv_AurelionSol.Menu.Item("AurelionSol.JungleKSPacketCast").GetValue <bool>();

                foreach (var target in ObjectManager.Get <Obj_AI_Base>().Where(target => Monsters.Contains(target.BaseSkinName)))
                {
                    if (useQKS && Q.IsReady() && target.Health < CustomLib.QDamage(target) && Player.Distance(target) < Q.Range && !target.IsDead && target.IsValidTarget())
                    {
                        var prediction = Q.GetPrediction(target);
                        if (prediction.Hitchance >= HitChance.High)
                        {
                            Q.Cast(prediction.CastPosition, PacketCast);
                        }
                    }
                }
            }
        }
Exemplo n.º 2
0
        public static void KS()
        {
            var PacketCast  = SkyLv_AurelionSol.Menu.Item("AurelionSol.PacketCastKS").GetValue <bool>();
            var UseIgniteKS = SkyLv_AurelionSol.Menu.Item("AurelionSol.UseIgniteKS").GetValue <bool>();
            var UseQKS      = SkyLv_AurelionSol.Menu.Item("AurelionSol.UseQKS").GetValue <bool>();
            var UseWKS      = SkyLv_AurelionSol.Menu.Item("AurelionSol.UseWKS").GetValue <bool>();
            var UseRKS      = SkyLv_AurelionSol.Menu.Item("AurelionSol.UseRKS").GetValue <bool>();

            foreach (var target in ObjectManager.Get <AIHeroClient>().Where(target => !target.IsMe && !target.IsDead && target.Team != ObjectManager.Player.Team && !target.IsZombie && (SkyLv_AurelionSol.Ignite.Slot != SpellSlot.Unknown || !target.HasBuff("summonerdot"))))
            {
                if (UseQKS && Player.Distance(target) <= Q.Range && Q.IsReady() && target.Health < CustomLib.QDamage(target) && Player.Mana >= Q.ManaCost)
                {
                    Q.CastIfHitchanceEquals(target, HitChance.VeryHigh, PacketCast);
                }

                if (UseWKS && W1.IsReady() && target.Health < W1.GetDamage(target))
                {
                    if (Player.Distance(target) > W1.Range - 20 && Player.Distance(target) < W1.Range + 20 && CustomLib.isWInLongRangeMode())
                    {
                        W2.Cast(PacketCast);
                    }

                    if (Player.Distance(target) > W2.Range - 20 && Player.Distance(target) < W2.Range + 20 && !CustomLib.isWInLongRangeMode())
                    {
                        W1.Cast(PacketCast);
                    }
                }

                if (UseRKS && Player.Distance(target) <= R.Range && R.IsReady() && target.Health < CustomLib.RDamage(target) && Player.Mana >= R.ManaCost)
                {
                    R.CastIfHitchanceEquals(target, HitChance.VeryHigh, PacketCast);
                }

                if (UseIgniteKS && SkyLv_AurelionSol.Ignite.Slot != SpellSlot.Unknown && target.Health < Player.GetSummonerSpellDamage(target, Damage.SummonerSpell.Ignite) && Player.Distance(target) <= SkyLv_AurelionSol.Ignite.Range)
                {
                    SkyLv_AurelionSol.Ignite.Cast(target, true);
                }
            }
        }