private void LaneClear() { if (ManaManager.HasEnoughMana(Menu.GetSlider("LaneClearMana")) && ManaManager.SpellFarm) { if (Menu.GetBool("LaneClearQ") && Q.IsReady()) { var minions = MinionManager.GetMinions(Me.Position, Q.Range); if (minions.Any()) { if (Menu.GetBool("LaneClearQOut")) { var mins = minions.Where( x => x.DistanceToPlayer() > Orbwalking.GetRealAutoAttackRange(Me) && x.Health < Q.GetDamage(x) && HealthPrediction.GetHealthPrediction(x, 250) > 0); Q.Cast(mins.Any() ? mins.FirstOrDefault() : minions.FirstOrDefault(), true); } else { Q.Cast(minions.FirstOrDefault(), true); } } } } }
private static void EDash(Obj_AI_Hero target) { if (target == null || target.IsDead || !E.IsReady()) { return; } if (Menu.GetBool("ComboQ") && Q.IsReady() && qStack == 0 && target.DistanceToPlayer() < Q.Range + Orbwalking.GetRealAutoAttackRange(Me)) { return; } if (target.DistanceToPlayer() <= E.Range + (Q.IsReady() && qStack == 0 ? Q.Range : 0)) { E.Cast(target.Position, true); } if (target.DistanceToPlayer() <= E.Range + (W.IsReady() ? W.Range : 0)) { E.Cast(target.Position, true); } if (!Q.IsReady() && !W.IsReady() && target.DistanceToPlayer() < E.Range + Me.AttackRange) { E.Cast(target.Position, true); } }
private void BeforeAttack(Orbwalking.BeforeAttackEventArgs Args) { if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo) { var ForcusETarget = HeroManager.Enemies.FirstOrDefault( x => x.IsValidTarget(Orbwalking.GetRealAutoAttackRange(Me)) && x.HasBuff("kindredecharge")); var ForcusTarget = HeroManager.Enemies.FirstOrDefault( x => x.IsValidTarget(Orbwalking.GetRealAutoAttackRange(Me)) && x.HasBuff("kindredhittracker")); if (ForcusETarget.Check(Orbwalking.GetRealAutoAttackRange(Me)) && Menu.GetBool("ForcusE")) { Orbwalker.ForceTarget(ForcusETarget); } else if (Menu.GetBool("Forcus") && ForcusTarget.Check(Orbwalking.GetRealAutoAttackRange(Me))) { Orbwalker.ForceTarget(ForcusTarget); } else { Orbwalker.ForceTarget(null); } } }
private void Combo() { var target = TargetSelector.GetSelectedTarget() ?? TargetSelector.GetTarget(Q.Range, TargetSelector.DamageType.Physical); if (target.Check(Q.Range)) { if (Menu.GetBool("ComboE") && E.IsReady() && Me.HasBuff("QuinnR")) { E.CastOnUnit(target); } if (Menu.GetBool("ComboQ") && Q.IsReady() && !Me.HasBuff("QuinnR")) { if (target.DistanceToPlayer() <= Orbwalking.GetRealAutoAttackRange(Me) && HavePassive(target)) { return; } SpellManager.PredCast(Q, target, true); } if (Menu.GetBool("ComboW") && W.IsReady()) { var WPred = W.GetPrediction(target); if ((NavMesh.GetCollisionFlags(WPred.CastPosition) == CollisionFlags.Grass || NavMesh.IsWallOfGrass(target.ServerPosition, 20)) && !target.IsVisible) { W.Cast(); } } } }
internal static void Init(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs Args) { if (sender == null || !sender.IsMe || Args.SData == null) { return; } if (Args.SData.Name.Contains("DariusAxeGrabCone")) { lastETime = Utils.TickCount; } if (Args.SData.Name.Contains("ItemTiamatCleave")) { if (Orbwalking.isCombo) { if (!HeroManager.Enemies.Any(x => x.DistanceToPlayer() <= Orbwalking.GetRealAutoAttackRange(Me))) { return; } if (Menu.GetBool("ComboW") && W.IsReady()) { W.Cast(); } } } }
private void OnDraw(EventArgs Args) { if (!Me.IsDead && !MenuGUI.IsShopOpen && !MenuGUI.IsChatOpen && !MenuGUI.IsScoreboardOpen) { if (Menu.GetBool("DrawQ") && Q.IsReady()) { Render.Circle.DrawCircle(Me.Position, Q.Range, Color.Green, 1); } if (Menu.GetBool("DrawW") && W.IsReady()) { Render.Circle.DrawCircle(Me.Position, W.Range, Color.FromArgb(9, 253, 242), 1); } if (Menu.GetBool("DrawE") && E.IsReady()) { Render.Circle.DrawCircle(Me.Position, E.Range, Color.FromArgb(188, 6, 248), 1); } if (Menu.GetBool("DrawR") && R.IsReady()) { Render.Circle.DrawCircle(Me.Position, R.Range, Color.FromArgb(19, 130, 234), 1); } if (Menu.GetBool("DrawBurst")) { Render.Circle.DrawCircle(Me.Position, Orbwalking.GetRealAutoAttackRange(Me), Color.FromArgb(90, 255, 255), 1); } } }
private void Combo() { var target = TargetSelector.GetSelectedTarget() ?? TargetSelector.GetTarget(R.Range, TargetSelector.DamageType.Physical); if (target.Check(R.Range)) { if (Menu.GetBool("ComboR") && R.IsReady() && Menu.GetSlider("ComboRLimit") >= GetRCount && target.IsValidTarget(R.Range)) { SpellManager.PredCast(R, target, true); } if (Menu.GetBool("ComboQ") && Q.IsReady() && target.IsValidTarget(Q.Range)) { SpellManager.PredCast(Q, target, true); } if (Menu.GetBool("ComboE") && E.IsReady() && target.IsValidTarget(E.Range)) { SpellManager.PredCast(E, target); } if (Menu.GetBool("ComboW") && W.IsReady() && target.IsValidTarget(W.Range) && target.DistanceToPlayer() > Orbwalking.GetRealAutoAttackRange(Me) && Me.CanAttack) { W.Cast(); } } }
private void Combo() { var target = TargetSelector.GetTarget(R.Range, TargetSelector.DamageType.Physical); if (target.Check(R.Range)) { if (Menu.GetBool("ComboQ") && Q.IsReady() && target.IsValidTarget(Q.Range)) { SpellManager.PredCast(Q, target); } if (Menu.GetBool("ComboE") && E.IsReady() && target.IsValidTarget(SearchERange)) { ELogic(target); } if (Menu.GetBool("ComboW") && W.IsReady() && target.IsValidTarget(W.Range) && (target.DistanceToPlayer() <= target.AttackRange + 70 || (target.DistanceToPlayer() >= Orbwalking.GetRealAutoAttackRange(Me) + 80))) { SpellManager.PredCast(W, target); } if (Menu.GetBool("ComboR") && R.IsReady() && target.IsValidTarget(R.Range)) { R.CastIfWillHit(target, Menu.GetSlider("ComboRCount")); } } }
private void BeforeAttack(Orbwalking.BeforeAttackEventArgs args) { if (Menu.GetBool("Forcus")) { if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo || Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Mixed) { foreach (var enemy in HeroManager.Enemies.Where(x => !x.IsDead && !x.IsZombie && Orbwalking.InAutoAttackRange(x) && x.HasBuff("kalistacoopstrikemarkally"))) { Orbwalker.ForceTarget(enemy); } } else if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.LaneClear) { var all = MinionManager.GetMinions(Me.Position, Orbwalking.GetRealAutoAttackRange(Me), MinionTypes.All, MinionTeam.NotAlly) .Where(x => Orbwalking.InAutoAttackRange(x) && x.HasBuff("kalistacoopstrikemarkally")); if (all.Any()) { Orbwalker.ForceTarget(all.FirstOrDefault()); } } } }
private void Combo() { if (Menu.GetBool("ComboELogic") && E.IsReady()) { var target = TargetSelector.GetTarget(975f, TargetSelector.DamageType.Physical); if (target.IsValidTarget(975f) && target.DistanceToPlayer() > Orbwalking.GetRealAutoAttackRange(Me)) { if (Utils.TickCount - CastSpellTime > 400) { Cast_E(target, true); } } } if (Menu.GetBool("ComboQExtended") && Q.IsReady() && !Me.IsDashing() && !Me.IsWindingUp) { var target = TargetSelector.GetTarget(QExtend.Range, TargetSelector.DamageType.Physical); if (target.Check(QExtend.Range) && target.DistanceToPlayer() > Q.Range && (!E.IsReady() || (E.IsReady() && target.DistanceToPlayer() > 975f))) { var pred = QExtend.GetPrediction(target, true); var collisions = MinionManager.GetMinions(Me.ServerPosition, Q.Range, MinionTypes.All, MinionTeam.NotAlly); if (!collisions.Any()) { return; } foreach (var minion in collisions) { var poly = new Geometry.Polygon.Rectangle(Me.ServerPosition, Me.ServerPosition.Extend(minion.ServerPosition, QExtend.Range), QExtend.Width); if (poly.IsInside(pred.UnitPosition)) { Q.Cast(minion); } } } } if (Menu.GetBool("ComboR") && R.IsReady()) { var target = TargetSelector.GetTarget(R.Range, TargetSelector.DamageType.Physical); if (target.Check(R.Range) && R.GetDamage(target) * (7.5 + 7.5 * Me.AttackSpeedMod) > target.Health && target.Distance(Me) > Orbwalking.GetAttackRange(Me) + 300) { R.Cast(target); } } }
private void OnDoCast(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs Args) { if (!sender.IsMe || !Orbwalking.IsAutoAttack(Args.SData.Name)) { return; } switch (Orbwalker.ActiveMode) { case Orbwalking.OrbwalkingMode.Combo: if (Menu.GetBool("ComboQ")) { var target = (Obj_AI_Hero)Args.Target; if (target != null && !target.IsDead && !target.IsZombie) { if (Me.HasBuff("asheqcastready")) { Q.Cast(); Orbwalking.ResetAutoAttackTimer(); } } } break; case Orbwalking.OrbwalkingMode.LaneClear: if (ManaManager.HasEnoughMana(Menu.GetSlider("JungleClearMana")) && ManaManager.SpellFarm) { if (Menu.GetBool("JungleClearQ") && Args.Target is Obj_AI_Minion) { var mobs = MinionManager.GetMinions(Me.Position, Orbwalking.GetRealAutoAttackRange(Me), MinionTypes.All, MinionTeam.Neutral, MinionOrderTypes.MaxHealth); if (mobs.Any()) { foreach (var mob in mobs) { if (!mob.IsValidTarget(Orbwalking.GetRealAutoAttackRange(Me)) || !(mob.Health > Me.GetAutoAttackDamage(mob) * 2)) { continue; } if (Me.HasBuff("asheqcastready")) { Q.Cast(); Orbwalking.ResetAutoAttackTimer(); } } } } } break; } }
internal static void Init() { var target = TargetSelector.GetSelectedTarget() ?? TargetSelector.GetTarget(900, TargetSelector.DamageType.Physical); if (target.Check(900f)) { if (Menu.GetBool("ComboIgnite") && Ignite != SpellSlot.Unknown && Ignite.IsReady() && DamageCalculate.GetComboDamage(target) > target.Health) { Me.Spellbook.CastSpell(Ignite, target); return; } if (Menu.GetBool("ComboE") && E.IsReady() && Me.CanMoveMent() && target.DistanceToPlayer() <= 650 && target.DistanceToPlayer() > Orbwalking.GetRealAutoAttackRange(Me) + 100) { EDash(target); } if (Menu.GetBool("ComboQ") && Q.IsReady() && Me.CanMoveMent() && qStack == 0 && target.DistanceToPlayer() <= Q.Range + Orbwalking.GetRealAutoAttackRange(Me) && target.DistanceToPlayer() > Orbwalking.GetRealAutoAttackRange(Me) + 50 && Utils.TickCount - lastQTime > 900) { if (!Me.IsDashing()) { SpellManager.CastQ(target); } } if (Menu.GetBool("ComboW") && W.IsReady() && target.IsValidTarget(W.Range) && !target.HasBuffOfType(BuffType.SpellShield)) { WLogic(target); } if (Menu.GetBool("ComboR") && R.IsReady()) { if (Menu.GetKey("R1Combo") && R.Instance.Name == "RivenFengShuiEngine" && !E.IsReady()) { if (target.DistanceToPlayer() < 500 && Me.CountEnemiesInRange(500) >= 1) { R.Cast(true); } } else if (R.Instance.Name == "RivenIzunaBlade") { SpellManager.R2Logic(target); } } } }
private void LaneClear() { if (ManaManager.HasEnoughMana(Menu.GetSlider("LaneClearMana")) && ManaManager.SpellFarm) { var minions = MinionManager.GetMinions(Me.Position, R.Range); if (minions.Any()) { if (Menu.GetBool("LaneClearR") && R.IsReady() && Menu.GetSlider("LaneClearRLimit") >= GetRCount) { var rMinion = minions.FirstOrDefault(x => x.DistanceToPlayer() > Orbwalking.GetRealAutoAttackRange(Me)); if (rMinion != null && HealthPrediction.GetHealthPrediction(rMinion, 250) > 0) { R.Cast(rMinion); } } if (Menu.GetBool("LaneClearE") && E.IsReady()) { var eMinions = MinionManager.GetMinions(Me.Position, E.Range); var eFarm = MinionManager.GetBestLineFarmLocation(eMinions.Select(x => x.Position.To2D()).ToList(), E.Width, E.Range); if (eFarm.MinionsHit >= Menu.GetSlider("LaneClearECount")) { E.Cast(eFarm.Position); } } if (Menu.GetBool("LaneClearQ") && Q.IsReady()) { var qMinion = MinionManager .GetMinions( Me.Position, Q.Range) .FirstOrDefault( x => x.Health < Q.GetDamage(x) && HealthPrediction.GetHealthPrediction(x, 250) > 0 && x.Health > Me.GetAutoAttackDamage(x)); if (qMinion != null) { Q.Cast(qMinion); } } } } }
private void Burst() { var target = TargetSelector.GetSelectedTarget(); if (target.Check(800f)) { var pos = Me.Position.Extend(target.Position, E.Range); if (R.IsReady()) { if (!Menu.GetBool("BurstER")) { if (E.IsReady() && target.IsValidTarget(600f)) { if (R.CanCast(target)) { R.Cast(target, true); } } } else { if (E.IsReady() && target.IsValidTarget(600f)) { E.Cast(target.Position, true); } } } else { if (Q.IsReady() && target.IsValidTarget(Q.Range)) { SpellManager.PredCast(Q, target); } if (W.IsReady() && target.IsValidTarget(W.Range) && (target.DistanceToPlayer() <= target.AttackRange + 70 || (target.DistanceToPlayer() >= Orbwalking.GetRealAutoAttackRange(Me) + 80))) { SpellManager.PredCast(W, target); } if (E.IsReady() && !R.IsReady()) { ELogic(target); } } } }
private void Combo() { var target = TargetSelector.GetSelectedTarget() ?? TargetSelector.GetTarget(qRange, TargetSelector.DamageType.Physical); if (target.Check(qRange)) { if (Menu.GetBool("ComboR") && R.IsReady() && target.IsValidTarget(R.Range)) { if (Menu.GetBool("ComboRSolo") && Me.CountEnemiesInRange(1000) <= 2) { if (target.Health + target.HPRegenRate * 2 < R.GetDamage(target) + W.GetDamage(target) + (E.IsReady() ? E.GetDamage(target) : 0) + (Q.IsReady() ? Q.GetDamage(target) : 0) + Me.GetAutoAttackDamage(target) * 3) { SpellManager.PredCast(R, target); } } var rPred = R.GetPrediction(target, true); if (rPred.AoeTargetsHitCount >= Menu.GetSlider("ComboRCount") || Me.CountEnemiesInRange(R.Range) >= Menu.GetSlider("ComboRCount")) { SpellManager.PredCast(R, target); } } if (Menu.GetBool("ComboQ") && target.IsValidTarget(qRange)) { if (target.DistanceToPlayer() >= Orbwalking.GetRealAutoAttackRange(Me) + 200 || GetPassiveCount(target) >= Menu.GetSlider("ComboPassive") || W.Level == 0 || target.Health < Q.GetDamage(target)) { CastQ(target); } } if (Menu.GetBool("ComboE") && E.IsReady() && target.IsValidTarget(E.Range)) { if (GetPassiveCount(target) >= Menu.GetSlider("ComboPassive") || W.Level == 0 || target.Health < E.GetDamage(target)) { SpellManager.PredCast(E, target, true); } } } }
private void LaneClearW() { if (ManaManager.HasEnoughMana(Menu.GetSlider("LaneClearMana")) && ManaManager.SpellFarm) { if (Menu.GetBool("LaneClearW") && W.IsReady()) { var minions = MinionManager.GetMinions(Me.Position, Orbwalking.GetRealAutoAttackRange(Me)); if (minions.Count >= 3) { W.Cast(); Orbwalking.ResetAutoAttackTimer(); } } } }
private void JungleClearW() { if (ManaManager.HasEnoughMana(Menu.GetSlider("JungleClearMana")) && ManaManager.SpellFarm) { if (Menu.GetBool("JungleClearW") && W.IsReady()) { var Mobs = MinionManager.GetMinions(Me.Position, Orbwalking.GetRealAutoAttackRange(Me), MinionTypes.All, MinionTeam.Neutral, MinionOrderTypes.MaxHealth); if (Mobs.Any()) { W.Cast(); Orbwalking.ResetAutoAttackTimer(); } } } }
private void KillSteal() { if (Menu.GetBool("KillStealW") && W.IsReady()) { foreach (var target in HeroManager.Enemies.Where(x => x.Check(W.Range))) { if (!target.IsValidTarget(W.Range) || !(target.Health < W.GetDamage(target))) { continue; } if (target.DistanceToPlayer() <= Orbwalking.GetRealAutoAttackRange(Me) && Me.HasBuff("AsheQAttack")) { continue; } SpellManager.PredCast(W, target); return; } } if (!Menu.GetBool("KillStealR") || !R.IsReady()) { return; } foreach ( var target in HeroManager.Enemies.Where( x => x.Check(2000) && Menu.GetBool("KillStealR" + x.ChampionName.ToLower()))) { if (!(target.DistanceToPlayer() > 800) || !(target.Health < R.GetDamage(target)) || target.HasBuffOfType(BuffType.SpellShield)) { continue; } SpellManager.PredCast(R, target); return; } }
private void OnDoCast(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs Args) { if (!sender.IsMe || !Orbwalking.IsAutoAttack(Args.SData.Name)) { return; } if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo) { var hero = Args.Target as Obj_AI_Hero; if (hero != null && Menu.GetBool("ComboW") && W.IsReady()) { var WTarget = hero; if (WTarget.IsValidTarget(Orbwalking.GetRealAutoAttackRange(Me)) && Me.CanAttack) { W.Cast(); Orbwalking.ResetAutoAttackTimer(); } } } else if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.LaneClear) { if (Args.Target is Obj_AI_Minion) { LaneClearW(); JungleClearW(); } else if (Args.Target is Obj_AI_Turret || Args.Target.Type == GameObjectType.obj_AI_Turret) { if (ManaManager.HasEnoughMana(Menu.GetSlider("LaneClearMana")) && ManaManager.SpellFarm) { if (Menu.GetBool("LaneClearWTurret") && W.IsReady() && Me.CountEnemiesInRange(1000) == 0) { W.Cast(); Orbwalking.ResetAutoAttackTimer(); } } } } }
private void AutoRLogic() { if (Menu.GetBool("AutoR") && R.IsReady()) { foreach (var target in HeroManager.Enemies.Where(x => x.IsValidTarget(R.Range) && x.Check(R.Range))) { if (!(target.DistanceToPlayer() > Orbwalking.GetRealAutoAttackRange(Me)) || !(target.DistanceToPlayer() <= 700) || !(target.Health > Me.GetAutoAttackDamage(target)) || !(target.Health < R.GetDamage(target) + Me.GetAutoAttackDamage(target) * 3) || target.HasBuffOfType(BuffType.SpellShield)) { continue; } SpellManager.PredCast(R, target); return; } } }
private void LastHit() { if (ManaManager.HasEnoughMana(Menu.GetSlider("LastHitMana"))) { if (Menu.GetBool("LastHitQ") && Q.IsReady()) { var minions = MinionManager.GetMinions(Me.Position, Q.Range) .Where( x => x.DistanceToPlayer() <= Q.Range && x.DistanceToPlayer() > Orbwalking.GetRealAutoAttackRange(Me) && x.Health < Q.GetDamage(x)); if (minions.Any()) { Q.Cast(minions.FirstOrDefault(), true); } } } }
private void BeforeAttack(Orbwalking.BeforeAttackEventArgs Args) { if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo || Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Mixed) { var ForcusTarget = HeroManager.Enemies.FirstOrDefault( x => x.IsValidTarget(Orbwalking.GetRealAutoAttackRange(Me)) && x.HasBuff("VayneSilveredDebuff") && x.GetBuffCount("VayneSilveredDebuff") == 2); if (Menu.GetBool("Forcus") && ForcusTarget.Check()) { Orbwalker.ForceTarget(ForcusTarget); } else { Orbwalker.ForceTarget(null); } } }
private static void JungleClear(GameObjectProcessSpellCastEventArgs Args) { if (Args.SData == null || !Orbwalking.IsAutoAttack(Args.SData.Name) || Args.Target == null || !Orbwalking.isLaneClear || Args.Target.Type != GameObjectType.obj_AI_Minion || !ManaManager.HasEnoughMana(Menu.GetSlider("JungleClearMana")) || !ManaManager.SpellFarm) { return; } var mobs = MinionManager.GetMinions(Orbwalking.GetRealAutoAttackRange(Me), MinionTypes.All, MinionTeam.Neutral, MinionOrderTypes.MaxHealth); var mob = mobs.FirstOrDefault(); if (mob != null) { SpellManager.CastItem(); if (Menu.GetBool("JungleClearW") && W.IsReady() && Orbwalking.InAutoAttackRange(Me)) { W.Cast(true); } } }
private void LaneClear() { if (ManaManager.HasEnoughMana(Menu.GetSlider("LaneClearMana")) && ManaManager.SpellFarm) { if (Menu.GetBool("LaneClearQ") && Q.IsReady()) { var minions = MinionManager.GetMinions(Me.Position, 700) .Where(m => m.Health < Q.GetDamage(m) + Me.GetAutoAttackDamage(m)); var minion = minions.FirstOrDefault(); if (minion != null) { if (minion.Distance(Me.Position.Extend(Game.CursorPos, Q.Range)) <= Orbwalking.GetRealAutoAttackRange(Me)) { Q.Cast(Me.Position.Extend(Game.CursorPos, Q.Range)); Orbwalker.ForceTarget(minions.FirstOrDefault()); } } } } }
private void Combo() { if (Menu.GetBool("ComboR") && R.IsReady()) { foreach (var target in HeroManager.Enemies.Where(x => x.Check(1200))) { if (target.IsValidTarget(600) && Me.CountEnemiesInRange(600) >= 3 && target.CountAlliesInRange(200) <= 2) { SpellManager.PredCast(R, target); } if (Me.CountEnemiesInRange(800) == 1 && target.DistanceToPlayer() > Orbwalking.GetRealAutoAttackRange(Me) && target.DistanceToPlayer() <= 700 && target.Health > Me.GetAutoAttackDamage(target) && target.Health < R.GetDamage(target) + Me.GetAutoAttackDamage(target) * 3 && !target.HasBuffOfType(BuffType.SpellShield)) { SpellManager.PredCast(R, target); } if (target.DistanceToPlayer() <= 1000 && (!target.CanMove || target.HasBuffOfType(BuffType.Stun) || R.GetPrediction(target).Hitchance == HitChance.Immobile)) { SpellManager.PredCast(R, target); } } } if (Menu.GetBool("ComboW") && W.IsReady() && !Me.HasBuff("AsheQAttack")) { if ((Menu.GetBool("ComboSaveMana") && Me.Mana > (R.IsReady() ? R.Instance.ManaCost : 0) + W.Instance.ManaCost + Q.Instance.ManaCost) || !Menu.GetBool("ComboSaveMana")) { var target = TargetSelector.GetTarget(W.Range, TargetSelector.DamageType.Physical); if (target.Check(W.Range)) { SpellManager.PredCast(W, target); } } } if (Menu.GetBool("ComboE") && E.IsReady()) { var target = TargetSelector.GetTarget(1000, TargetSelector.DamageType.Physical); if (target.Check(1000)) { var EPred = E.GetPrediction(target); if ((NavMesh.GetCollisionFlags(EPred.CastPosition) == CollisionFlags.Grass || NavMesh.IsWallOfGrass(target.ServerPosition, 20)) && !target.IsVisible) { E.Cast(EPred.CastPosition); } } } }
private void ELogic(Obj_AI_Base target) { if (!E.IsReady()) { return; } var ePosition = Me.ServerPosition.Extend(Game.CursorPos, E.Range); var targetDisE = target.ServerPosition.Distance(ePosition); if (ePosition.UnderTurret(true) && Me.HealthPercent <= 60) { canE = false; } if (Menu.GetBool("ComboECheck")) { if (ePosition.CountEnemiesInRange(350f) >= 3) { canE = false; } //Catilyn W if (ObjectManager .Get <Obj_GeneralParticleEmitter>() .FirstOrDefault( x => x != null && x.IsValid && x.Name.ToLower().Contains("yordletrap_idle_red.troy") && x.Position.Distance(ePosition) <= 100) != null) { canE = false; } //Jinx E if (ObjectManager.Get <Obj_AI_Minion>() .FirstOrDefault(x => x.IsValid && x.IsEnemy && x.Name == "k" && x.Position.Distance(ePosition) <= 100) != null) { canE = false; } //Teemo R if (ObjectManager.Get <Obj_AI_Minion>() .FirstOrDefault(x => x.IsValid && x.IsEnemy && x.Name == "Noxious Trap" && x.Position.Distance(ePosition) <= 100) != null) { canE = false; } if (ePosition.CountEnemiesInRange(350) >= 3) { canE = false; } } if (target.Distance(ePosition) > Orbwalking.GetRealAutoAttackRange(Me)) { canE = false; } if (target.Health < Me.GetAutoAttackDamage(target, true) * 2 && target.Distance(ePosition) <= Orbwalking.GetRealAutoAttackRange(Me) && Me.CanAttack) { canE = true; } if (!Me.HasBuff("GravesBasicAttackAmmo2") && Me.HasBuff("GravesBasicAttackAmmo1") && target.IsValidTarget(Orbwalking.GetRealAutoAttackRange(Me)) && target.Distance(ePosition) <= Orbwalking.GetRealAutoAttackRange(Me)) { canE = true; } if (!Me.HasBuff("GravesBasicAttackAmmo2") && !Me.HasBuff("GravesBasicAttackAmmo1") && target.IsValidTarget(Orbwalking.GetRealAutoAttackRange(Me))) { canE = true; } if (canE) { E.Cast(Game.CursorPos, true); canE = false; } }
private void Combo() { var target = TargetSelector.GetSelectedTarget() ?? (isADMode ? TargetSelector.GetTarget(EQ.Range, TargetSelector.DamageType.Physical) : TargetSelector.GetTarget(EQ.Range, TargetSelector.DamageType.Magical)); if (target.Check(EQ.Range)) { if (Menu.GetBool("ComboQ") && Q.IsReady() && target.IsValidTarget(Q.Range)) { SpellManager.PredCast(Q, target); } if (Menu.GetBool("ComboW") && W.IsReady() && target.IsValidTarget(W.Range)) { SpellManager.PredCast(W, target, true); } if (Menu.GetBool("ComboE") && E.IsReady() && target.IsValidTarget(EQ.Range)) { if (Menu.GetBool("ComboECheck") && !Me.UnderTurret(true) && Me.CountEnemiesInRange(1200) <= 2) { var useECombo = false; if (target.DistanceToPlayer() > Orbwalking.GetRealAutoAttackRange(Me) && target.Check() && HealthPrediction.GetHealthPrediction(target, 750) > 0) { if (target.Health < E.GetDamage(target) + Me.GetAutoAttackDamage(target) && target.Distance(Game.CursorPos) < Me.Distance(Game.CursorPos)) { useECombo = true; } if (target.Health < E.GetDamage(target) + W.GetDamage(target) && W.IsReady() && target.Distance(Game.CursorPos) + 350 < Me.Distance(Game.CursorPos)) { useECombo = true; } if (target.Health < E.GetDamage(target) + Q.GetDamage(target) && Q.IsReady() && target.Distance(Game.CursorPos) + 300 < Me.Distance(Game.CursorPos)) { useECombo = true; } } if (useECombo) { var CastEPos = Me.Position.Extend(target.Position, 475f); if (Menu.GetBool("ComboEWall")) { if (NavMesh.GetCollisionFlags(CastEPos) != CollisionFlags.Wall && NavMesh.GetCollisionFlags(CastEPos) != CollisionFlags.Building && NavMesh.GetCollisionFlags(CastEPos) != CollisionFlags.Prop) { E.Cast(CastEPos); useECombo = false; } } else { E.Cast(CastEPos); useECombo = false; } } } } if (Menu.GetBool("ComboR") && R.IsReady()) { if (Me.UnderTurret(true) || Me.CountEnemiesInRange(800) > 1) { return; } foreach ( var rTarget in HeroManager.Enemies.Where( x => x.Check(R.Range) && target.DistanceToPlayer() > Orbwalking.GetRealAutoAttackRange(Me) && HealthPrediction.GetHealthPrediction(x, 3000) > 0)) { if (target.Health < R.GetDamage(rTarget) && R.GetPrediction(rTarget).Hitchance >= HitChance.High && target.DistanceToPlayer() > Q.Range + E.Range / 2) { R.Cast(rTarget, true); } if (rTarget.IsValidTarget(Q.Range + E.Range) && R.GetDamage(rTarget) + (Q.IsReady() ? Q.GetDamage(rTarget) : 0) + (W.IsReady() ? W.GetDamage(rTarget) : 0) > rTarget.Health + rTarget.HPRegenRate * 2) { R.Cast(rTarget, true); } } } } }
private void Combo() { var target = TargetSelector.GetSelectedTarget() ?? TargetSelector.GetTarget(Q.Range, TargetSelector.DamageType.Physical); if (target.Check(Q.Range)) { if (Menu.GetBool("ComboAttack") && target.DistanceToPlayer() > Orbwalking.GetRealAutoAttackRange(Me)) { var minion = MinionManager.GetMinions(Me.Position, Orbwalking.GetRealAutoAttackRange(Me), MinionTypes.All, MinionTeam.NotAlly) .Where(Orbwalking.InAutoAttackRange) .OrderBy(x => x.DistanceToPlayer()) .FirstOrDefault(); if (minion != null && !minion.IsDead) { Orbwalking.Orbwalk(minion, Game.CursorPos); } } if (Menu.GetBool("ComboQ") && Q.IsReady() && target.IsValidTarget(Q.Range) && !Orbwalking.InAutoAttackRange(target)) { if (Menu.GetBool("ComboMana")) { if (Me.Mana > Q.ManaCost + E.ManaCost) { SpellManager.PredCast(Q, target); } } else { SpellManager.PredCast(Q, target); } } if (Menu.GetBool("ComboW") && W.IsReady() && Utils.TickCount - lastWCast > 2000) { if (NavMesh.IsWallOfGrass(target.ServerPosition, 20) && !target.IsVisible) { if (Menu.GetBool("ComboMana")) { if (Me.Mana > Q.ManaCost + E.ManaCost * 2 + W.ManaCost + R.ManaCost) { W.Cast(target.ServerPosition); } } else { W.Cast(target.ServerPosition); } } } if (Menu.GetBool("ComboE") && E.IsReady() && target.IsValidTarget(E.Range) && target.HasBuff("kalistaexpungemarker") && Utils.TickCount - lastECast >= 500) { if (target.Health < GetRealEDamage(target)) { E.Cast(); } if (Menu.GetBool("ComboEUse") && target.DistanceToPlayer() > Orbwalking.GetRealAutoAttackRange(Me) + 100) { var EKillMinion = MinionManager .GetMinions(Me.Position, E.Range, MinionTypes.All, MinionTeam.NotAlly) .FirstOrDefault(x => x.HasBuff("kalistaexpungemarker") && x.DistanceToPlayer() <= E.Range && x.Health < GetRealEDamage(x)); if (EKillMinion != null && EKillMinion.DistanceToPlayer() <= E.Range && target.IsValidTarget(E.Range)) { E.Cast(); } } } } }
private void OnDoCast(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs Args) { if (!sender.IsMe || !Orbwalking.IsAutoAttack(Args.SData.Name)) { return; } if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo) { var target = (Obj_AI_Hero)Args.Target; if (target != null && !target.IsDead && !target.IsZombie) { if (Menu.GetBool("ComboE") && E.IsReady() && (Q.IsReady() || target.Health < E.GetDamage(target))) { SpellManager.PredCast(E, target, true); } if (Menu.GetBool("ComboW") && W.IsReady()) { if (target.DistanceToPlayer() <= Orbwalking.GetRealAutoAttackRange(Me)) { if (Menu.GetBool("ComboWAlways")) { W.Cast(); } if (Me.HealthPercent <= Menu.GetSlider("ComboWLowHp")) { W.Cast(); } } if (Menu.GetBool("ComboWBuff") && HaveEBuff(target) && Q.IsReady()) { W.Cast(); } } else if (Menu.GetBool("ComboQ") && Q.IsReady() && target.IsValidTarget(QExtend.Range)) { if (!HaveEBuff(target) && target.IsValidTarget(Q.Range)) { if (Menu.GetBool("ComboFirstE") && E.IsReady() && Menu.GetBool("ComboE") && target.IsValidTarget(E.Range)) { SpellManager.PredCast(E, target, true); } else { SpellManager.PredCast(Q, target); } } else if (target.IsValidTarget(QExtend.Range) && HaveEBuff(target)) { QExtend.Cast(target); } } } } if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.LaneClear) { if (ManaManager.HasEnoughMana(Menu.GetSlider("JungleClearMana")) && ManaManager.SpellFarm) { var mobs = MinionManager.GetMinions(Me.Position, R.Range, MinionTypes.All, MinionTeam.Neutral, MinionOrderTypes.MaxHealth); if (mobs.Any()) { var mob = mobs.FirstOrDefault(); var bigmob = mobs.FirstOrDefault(x => !x.Name.ToLower().Contains("mini")); if (Menu.Item("JungleClearW", true).GetValue <bool>() && W.IsReady() && bigmob != null && bigmob.IsValidTarget(W.Range)) { W.Cast(); } else if (Menu.Item("JungleClearQ", true).GetValue <bool>() && Q.IsReady() && mob != null && mob.IsValidTarget(Q.Range)) { Q.Cast(mob); } } } } }
private void Combo() { var target = TargetSelector.GetSelectedTarget() ?? TargetSelector.GetTarget(QExtend.Range, TargetSelector.DamageType.Physical); if (target.Check(QExtend.Range)) { if (Menu.GetBool("ComboR") && R.IsReady() && target.IsValidTarget(R.Range)) { if (Menu.GetBool("RSafe") && !Me.UnderTurret(true)) { foreach ( var rTarget in HeroManager.Enemies.Where( x => x.IsValidTarget(R.Range) && !Menu.GetBool("Dontr" + target.ChampionName.ToLower())) .OrderByDescending(x => E.IsReady() ? E.GetDamage(x) : 0 + Q.GetDamage(x) * 2)) { if (rTarget.CountEnemiesInRange(R.Range) <= Menu.GetSlider("RSwap")) { if (Menu.GetBool("RAlly") && Me.UnderAllyTurret() && rTarget.DistanceToPlayer() <= 350) { R.CastOnUnit(rTarget); } if (Menu.GetBool("RKill") && target.Health < DamageCalculate.GetComboDamage(target)) { R.CastOnUnit(rTarget); } } } } } if (Menu.GetBool("ComboE") && E.IsReady() && target.IsValidTarget(E.Range) && (Q.IsReady() || target.Health < E.GetDamage(target))) { SpellManager.PredCast(E, target, true); } if (Menu.GetBool("ComboW") && W.IsReady()) { if (target.DistanceToPlayer() <= Orbwalking.GetRealAutoAttackRange(Me)) { if (Menu.GetBool("ComboWAlways")) { W.Cast(); } if (Me.HealthPercent <= Menu.GetSlider("ComboWLowHp")) { W.Cast(); } } if (Menu.GetBool("ComboWBuff") && HaveEBuff(target) && Q.IsReady()) { W.Cast(); } } if (Menu.GetBool("ComboQ") && Q.IsReady() && target.IsValidTarget(QExtend.Range)) { if (!HaveEBuff(target) && target.IsValidTarget(Q.Range)) { if (Menu.GetBool("ComboFirstE") && E.IsReady() && Menu.GetBool("ComboE") && target.IsValidTarget(E.Range)) { SpellManager.PredCast(E, target, true); } else { SpellManager.PredCast(Q, target); } } else if (target.IsValidTarget(QExtend.Range) && HaveEBuff(target)) { QExtend.Cast(target); } } } }