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); } } } } }
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); } } }