private void Game_OnUpdate(EventArgs args) { if (!ObjectManager.Player.IsDead) { switch (MenuProvider.Orbwalker.ActiveMode) { case Orbwalking.OrbwalkingMode.Combo: { if (MenuProvider.Champion.Combo.UseQ) { if (Q.isReadyPerfectly()) { if (!ObjectManager.Player.IsDashing()) { if (!ObjectManager.Player.IsWindingUp) { var Target = TargetSelector.GetTargetNoCollision(Q); if (Target != null) { if (!E.isReadyPerfectly()) { Q.Cast(Target); } else if (ObjectManager.Player.Mana - Q.ManaCost >= E.ManaCost) { Q.Cast(Target); } } } } } } if (MenuProvider.Champion.Combo.UseE) { if (E.isReadyPerfectly()) { if (HeroManager.Enemies.Any(x => x.isKillableAndValidTarget(E.GetDamage(x)))) { E.Cast(); } } } break; } case Orbwalking.OrbwalkingMode.Mixed: { if (MenuProvider.Champion.Harass.UseQ) { if (ObjectManager.Player.isManaPercentOkay(MenuProvider.Champion.Harass.IfMana)) { if (!ObjectManager.Player.IsDashing()) { if (!ObjectManager.Player.IsWindingUp) { if (Q.isReadyPerfectly()) { Q.CastOnBestTarget(); } } } } } break; } case Orbwalking.OrbwalkingMode.LaneClear: { //Lane if (MenuProvider.Champion.Laneclear.UseQ) { if (Q.isReadyPerfectly()) { if (!ObjectManager.Player.IsDashing()) { if (!ObjectManager.Player.IsWindingUp) { if (ObjectManager.Player.isManaPercentOkay(MenuProvider.Champion.Laneclear.IfMana)) { foreach (var KillableMinion in MinionManager.GetMinions(Q.Range).Where(x => Q.GetPrediction(x).Hitchance >= Q.MinHitChance && x.isKillableAndValidTarget(Damage.GetSpellDamage(ObjectManager.Player, x, SpellSlot.Q), Q.Range))) { int killableNumber = 0; var CollisionMinions = LeagueSharp.Common.Collision.GetCollision(new List <Vector3> { ObjectManager.Player.ServerPosition.Extend(KillableMinion.ServerPosition, Q.Range) }, new PredictionInput { Unit = ObjectManager.Player, Delay = Q.Delay, Speed = Q.Speed, Radius = Q.Width, Range = Q.Range, CollisionObjects = new CollisionableObjects[] { CollisionableObjects.Minions }, UseBoundingRadius = false } ).OrderBy(x => x.Distance(ObjectManager.Player)); foreach (Obj_AI_Minion CollisionMinion in CollisionMinions) { if (CollisionMinion.isKillableAndValidTarget(Damage.GetSpellDamage(ObjectManager.Player, CollisionMinion, SpellSlot.Q), Q.Range)) { killableNumber++; } else { break; } } if (killableNumber >= MenuProvider.Champion.Laneclear.getSliderValue("Cast Q if Killable Minion Number >=").Value) { if (!ObjectManager.Player.IsWindingUp) { Q.Cast(KillableMinion.ServerPosition); break; } } } } } } } } if (MenuProvider.Champion.Laneclear.UseE) { if (E.isReadyPerfectly()) { if (ObjectManager.Player.isManaPercentOkay(MenuProvider.Champion.Laneclear.IfMana)) { if (MinionManager.GetMinions(float.MaxValue).Count(x => x.isKillableAndValidTarget(E.GetDamage(x))) >= MenuProvider.Champion.Laneclear.getSliderValue("Cast E if Killable Minion Number >=").Value) { E.Cast(); } } } } //Jugnle if (MenuProvider.Champion.Jungleclear.UseQ) { if (Q.isReadyPerfectly()) { if (ObjectManager.Player.isManaPercentOkay(MenuProvider.Champion.Jungleclear.IfMana)) { var QTarget = MinionManager.GetMinions(Q.Range, MinionTypes.All, MinionTeam.Neutral).FirstOrDefault(x => x.IsValidTarget(Q.Range) && Q.GetPrediction(x).Hitchance >= HitChance.High); if (QTarget != null) { Q.Cast(QTarget); } } } } if (MenuProvider.Champion.Jungleclear.UseE) { if (E.isReadyPerfectly()) { if (ObjectManager.Player.isManaPercentOkay(MenuProvider.Champion.Jungleclear.IfMana)) { if (MinionManager.GetMinions(float.MaxValue, MinionTypes.All, MinionTeam.Neutral).Any(x => x.isKillableAndValidTarget(E.GetDamage(x)))) { E.Cast(); } } } } break; } } if (MenuProvider.Champion.Misc.UseKillsteal) { if (E.isReadyPerfectly()) { if (HeroManager.Enemies.Any(x => x.isKillableAndValidTarget(E.GetDamage(x)))) { E.Cast(); } } } if (MenuProvider.Champion.Misc.getBoolValue("Use Mobsteal (With E)")) { if (E.isReadyPerfectly()) { if (MinionManager.GetMinions(float.MaxValue, MinionTypes.All, MinionTeam.Neutral).Any(x => x.isKillableAndValidTarget(E.GetDamage(x)))) { E.Cast(); } } } } }
private void Game_OnUpdate(EventArgs args) { if (!ObjectManager.Player.IsDead) { if (Orbwalking.CanMove(100)) { switch (MenuProvider.Orbwalker.ActiveMode) { case Orbwalking.OrbwalkingMode.Combo: { if (MenuProvider.Champion.Combo.getBoolValue("Attack Minion For Chasing")) { if (MenuProvider.Orbwalker.GetTarget() == null) { if (!HeroManager.Enemies.Any(x => x.IsValidTarget() && Orbwalking.InAutoAttackRange(x))) { var Minion = MinionManager.GetMinions(Orbwalking.GetRealAutoAttackRange(null) + 65, MinionTypes.All, MinionTeam.NotAlly).OrderBy(x => x.Distance(ObjectManager.Player)).FirstOrDefault(); if (Minion != null) { Orbwalking.Orbwalk(Minion, Game.CursorPos, 0f); } } } } if (MenuProvider.Champion.Combo.UseQ) { if (Q.isReadyPerfectly()) { if (!ObjectManager.Player.IsDashing()) { if (!ObjectManager.Player.IsWindingUp) { var Target = TargetSelector.GetTargetNoCollision(Q); if (Target != null) { if (ObjectManager.Player.Mana - QManaCost[Q.Level] >= 40) { Q.Cast(Target); } else { var killableTarget = HeroManager.Enemies.FirstOrDefault(x => !Orbwalking.InAutoAttackRange(x) && x.isKillableAndValidTarget(Q.GetDamage(x), TargetSelector.DamageType.Physical, Q.Range) && Q.GetPrediction(x).Hitchance >= Q.MinHitChance); if (killableTarget != null) { Q.Cast(killableTarget); } } } } } } } if (MenuProvider.Champion.Combo.UseE) { if (E.isReadyPerfectly()) { if (HeroManager.Enemies.Any(x => HealthPrediction.GetHealthPrediction(x, 250) > 0 && x.isKillableAndValidTarget(E.GetDamage(x), TargetSelector.DamageType.Physical, E.Range))) { E.Cast(); } } } break; } case Orbwalking.OrbwalkingMode.Mixed: { if (MenuProvider.Champion.Harass.UseQ) { if (ObjectManager.Player.isManaPercentOkay(MenuProvider.Champion.Harass.IfMana)) { if (!ObjectManager.Player.IsDashing()) { if (!ObjectManager.Player.IsWindingUp) { if (Q.isReadyPerfectly()) { var Target = TargetSelector.GetTargetNoCollision(Q); if (Target != null) { Q.Cast(Target); } } } } } } break; } case Orbwalking.OrbwalkingMode.LaneClear: { //Lane if (MenuProvider.Champion.Laneclear.UseQ) { if (Q.isReadyPerfectly()) { if (!ObjectManager.Player.IsDashing()) { if (!ObjectManager.Player.IsWindingUp) { if (ObjectManager.Player.isManaPercentOkay(MenuProvider.Champion.Laneclear.IfMana)) { foreach (var KillableMinion in MinionManager.GetMinions(Q.Range).Where(x => Q.GetPrediction(x).Hitchance >= Q.MinHitChance && x.isKillableAndValidTarget(Q.GetDamage(x), TargetSelector.DamageType.Physical, Q.Range))) { int killableNumber = 0; var CollisionMinions = LeagueSharp.Common.Collision.GetCollision(new List <Vector3> { ObjectManager.Player.ServerPosition.Extend(KillableMinion.ServerPosition, Q.Range) }, new PredictionInput { Unit = ObjectManager.Player, Delay = Q.Delay, Speed = Q.Speed, Radius = Q.Width, Range = Q.Range, CollisionObjects = new CollisionableObjects[] { CollisionableObjects.Minions }, UseBoundingRadius = false } ).OrderBy(x => x.Distance(ObjectManager.Player)); foreach (Obj_AI_Minion CollisionMinion in CollisionMinions) { if (CollisionMinion.isKillableAndValidTarget(Damage.GetSpellDamage(ObjectManager.Player, CollisionMinion, SpellSlot.Q), TargetSelector.DamageType.Physical, Q.Range)) { killableNumber++; } else { break; } } if (killableNumber >= MenuProvider.Champion.Laneclear.getSliderValue("Cast Q if Killable Minion Number >=").Value) { if (!ObjectManager.Player.IsWindingUp) { Q.Cast(KillableMinion.ServerPosition); break; } } } } } } } } if (MenuProvider.Champion.Laneclear.UseE) { if (E.isReadyPerfectly()) { if (ObjectManager.Player.isManaPercentOkay(MenuProvider.Champion.Laneclear.IfMana)) { if (MinionManager.GetMinions(E.Range).Count(x => HealthPrediction.GetHealthPrediction(x, 250) > 0 && x.isKillableAndValidTarget(E.GetDamage(x), TargetSelector.DamageType.Physical)) >= MenuProvider.Champion.Laneclear.getSliderValue("Cast E if Killable Minion Number >=").Value) { E.Cast(); } } } } //Jugnle if (MenuProvider.Champion.Jungleclear.UseQ) { if (Q.isReadyPerfectly()) { if (ObjectManager.Player.isManaPercentOkay(MenuProvider.Champion.Jungleclear.IfMana)) { var QTarget = MinionManager.GetMinions(Q.Range, MinionTypes.All, MinionTeam.Neutral, MinionOrderTypes.MaxHealth).FirstOrDefault(x => x.IsValidTarget(Q.Range) && Q.GetPrediction(x).Hitchance >= HitChance.High); if (QTarget != null) { Q.Cast(QTarget); } } } } if (MenuProvider.Champion.Jungleclear.UseE) { if (E.isReadyPerfectly()) { if (ObjectManager.Player.isManaPercentOkay(MenuProvider.Champion.Jungleclear.IfMana)) { if (MinionManager.GetMinions(E.Range, MinionTypes.All, MinionTeam.Neutral, MinionOrderTypes.MaxHealth).Any(x => HealthPrediction.GetHealthPrediction(x, 250) > 0 && x.isKillableAndValidTarget(E.GetDamage(x), TargetSelector.DamageType.Physical))) { E.Cast(); } } } } break; } } } if (MenuProvider.Champion.Misc.getBoolValue("Use Killsteal (With E)")) { if (E.isReadyPerfectly()) { if (HeroManager.Enemies.Any(x => HealthPrediction.GetHealthPrediction(x, 250) > 0 && x.isKillableAndValidTarget(E.GetDamage(x), TargetSelector.DamageType.Physical, E.Range))) { E.Cast(); } } } if (MenuProvider.Champion.Misc.getBoolValue("Use Mobsteal (With E)")) { if (E.isReadyPerfectly()) { if (MinionManager.GetMinions(E.Range, MinionTypes.All, MinionTeam.Neutral, MinionOrderTypes.MaxHealth).Any(x => HealthPrediction.GetHealthPrediction(x, 500) > 0 && x.isKillableAndValidTarget(E.GetDamage(x), TargetSelector.DamageType.Physical))) { E.Cast(); } } } if (MenuProvider.Champion.Misc.getBoolValue("Auto Steal Siege minion & Super minion (With E)")) { if (E.isReadyPerfectly()) { if (MinionManager.GetMinions(E.Range).Any(x => HealthPrediction.GetHealthPrediction(x, 250) > 0 && x.isKillableAndValidTarget(E.GetDamage(x), TargetSelector.DamageType.Physical) && (x.CharData.BaseSkinName.ToLower().Contains("siege") || x.CharData.BaseSkinName.ToLower().Contains("super")))) { E.Cast(); } } } if (MenuProvider.Champion.Misc.getBoolValue("Auto Balista Combo (With R)")) { if (R.isReadyPerfectly()) { var MyBlitzcrank = HeroManager.Allies.FirstOrDefault(x => !x.IsDead && x.HasBuff("kalistacoopstrikeally") && x.ChampionName == "Blitzcrank"); if (MyBlitzcrank != null) { var GrabTarget = HeroManager.Enemies.FirstOrDefault(x => !x.IsDead && x.HasBuff("rocketgrab2")); if (GrabTarget != null) { if (ObjectManager.Player.Distance(GrabTarget) > MyBlitzcrank.Distance(GrabTarget)) { R.Cast(); } } } } } if (MenuProvider.Champion.Misc.getBoolValue("Auto E Harass (With E)")) { if (E.isReadyPerfectly()) { if (!(MenuProvider.Champion.Misc.getBoolValue("^ Don't do this in ComboMode") && MenuProvider.Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo)) { if (ObjectManager.Player.Mana - E.ManaCost >= E.ManaCost) { if (HeroManager.Enemies.Any(x => x.IsValidTarget(E.Range) && E.GetDamage(x) > 10)) { if (MinionManager.GetMinions(E.Range, MinionTypes.All, MinionTeam.NotAlly).Any(x => HealthPrediction.GetHealthPrediction(x, 250) > 0 && x.isKillableAndValidTarget(E.GetDamage(x), TargetSelector.DamageType.Physical, E.Range))) { E.Cast(); } } } } } } if (MenuProvider.Champion.Misc.getBoolValue("Auto W on Dragon or Baron (With W)")) { if (ObjectManager.Player.isManaPercentOkay(50)) { if (!ObjectManager.Player.IsRecalling()) { if (ObjectManager.Player.Position.CountEnemiesInRange(1500f) <= 0) { if (MenuProvider.Orbwalker.GetTarget() == null) { if (W.isReadyPerfectly()) { if (ObjectManager.Player.Distance(BaronLocation) <= W.Range) { W.Cast(BaronLocation); } } if (W.isReadyPerfectly()) { if (ObjectManager.Player.Distance(DragonLocation) <= W.Range) { W.Cast(DragonLocation); } } } } } } } if (MenuProvider.Champion.Misc.getKeyBindValue("Cast W on Dragon").Active) { if (W.isReadyPerfectly()) { if (ObjectManager.Player.Distance(DragonLocation) <= W.Range) { W.Cast(DragonLocation); } } } if (MenuProvider.Champion.Misc.getKeyBindValue("Cast W on Baron").Active) { if (W.isReadyPerfectly()) { if (ObjectManager.Player.Distance(BaronLocation) <= W.Range) { W.Cast(BaronLocation); } } } } }