public override void OnUpdate(EventArgs args) { base.OnUpdate(args); if (E.IsReady()) { this.ELogic(); } if (Orbwalker.ActiveMode == OrbwalkingMode.Combo && Q.IsReady() && Orbwalker.CanMove) { foreach (var enemy in ValidTargets.Where(e => e.Distance(ObjectManager.Player) < 900)) { var pred = Q.GetPrediction(enemy); if (pred.Hitchance >= HitChance.High && !pred.CollisionObjects.Any()) { Q.Cast(pred.UnitPosition); } } } #region Orbwalk On Minions if (OrbwalkOnMinions && Orbwalker.ActiveMode == OrbwalkingMode.Combo && ValidTargets.Count(e => e.InAutoAttackRange()) == 0 && ObjectManager.Player.InventoryItems.Any(i => (int)i.Id == 3085)) { var minion = GameObjects.EnemyMinions.Where(m => m.InAutoAttackRange()).OrderBy(m => m.Health).FirstOrDefault(); if (minion != null) { EloBuddy.Player.IssueOrder(GameObjectOrder.AttackUnit, minion); } } #endregion Orbwalk On Minions }
public override void OnUpdate(EventArgs args) { if (E.IsReady()) { this.ELogic(); } if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo) && Q.IsReady() && Orbwalker.CanMove) { foreach (var enemy in ValidTargets.Where(e => e.Distance(ObjectManager.Player) < 900)) { var pred = Q.GetPrediction(enemy); if (pred.Hitchance >= LeagueSharp.SDK.HitChance.High && !pred.CollisionObjects.Any()) { Q.Cast(enemy); } } } #region Orbwalk On Minions if (OrbwalkOnMinions && Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo) && ValidTargets.Count(e => e.IsInAutoAttackRange(ObjectManager.Player)) == 0) { var minion = GameObjects.EnemyMinions.Where(m => m.IsInAutoAttackRange(ObjectManager.Player)).OrderBy(m => m.Health).FirstOrDefault(); if (minion != null) { EloBuddy.Player.IssueOrder(GameObjectOrder.AttackUnit, minion); } } #endregion Orbwalk On Minions }
public CSPlugin() { MainMenu = new Menu("challengerseries", ObjectManager.Player.ChampionName + " To The Challenger", true, ObjectManager.Player.ChampionName); CrossAssemblySettings = MainMenu.Add(new Menu("crossassemblysettings", "Challenger Utils: ")); DrawEnemyWaypoints = CrossAssemblySettings.Add(new MenuBool("drawenemywaypoints", "Draw Enemy Waypoints", true)); PlayUrfThemeNextGame = CrossAssemblySettings.Add(new MenuBool("playsoundatstart", "Play URF Theme Next Game", true)); DelayAction.Add(15000, () => Orbwalker.Enabled = true); Drawing.OnDraw += args => { if (DrawEnemyWaypoints) { foreach ( var e in ValidTargets.Where( en => en.Distance(ObjectManager.Player) < 5000)) { var ip = Drawing.WorldToScreen(e.Position); //start pos var wp = e.GetWaypoints(); var c = wp.Count - 1; if (wp.Count() <= 1) { break; } var w = Drawing.WorldToScreen(wp[c].ToVector3()); //endpos Drawing.DrawLine(ip.X, ip.Y, w.X, w.Y, 2, Color.Red); Drawing.DrawText(w.X, w.Y, Color.Red, e.CharData.BaseSkinName); } } }; }
private void RLogic() { if (!UseRBool || !R.IsReady() || ObjectManager.Player.IsRecalling() || Orbwalker.ActiveMode == OrbwalkingMode.None) return; if (AlwaysSaveManaForWBool && ObjectManager.Player.Mana < GetRMana() + GetWMana()) return; var myPos = ObjectManager.Player.ServerPosition; foreach ( var enemy in ValidTargets.Where(h => h.Distance(myPos) < R.Range && h.HealthPercent < 25 && h.IsValidTarget())) { var prediction = R.GetPrediction(enemy, true); if ((int)prediction.Hitchance > (int)HitChance.Medium) { R.Cast(prediction.UnitPosition); } } if (GetRStacks() >= MaxRStacksSlider.Value) return; if ((Orbwalker.ActiveMode != OrbwalkingMode.Combo && !UseRHarass)) return; foreach (var enemy in ValidTargets.Where(h => h.Distance(myPos) < R.Range && h.IsValidTarget() && h.HealthPercent < 35)) { var dist = enemy.Distance(ObjectManager.Player.ServerPosition); if (Orbwalker.CanAttack && dist < 550) continue; var prediction = R.GetPrediction(enemy, true); if ((int) prediction.Hitchance > (int) HitChance.Medium) { R.Cast(prediction.UnitPosition); } } }
public override void OnDraw(EventArgs args) { base.OnDraw(args); base.W.Range = GetAttackRangeAfterWIsApplied(); base.R.Range = GetRRange(); if (DrawWRangeBool) { Render.Circle.DrawCircle(ObjectManager.Player.Position, GetAttackRangeAfterWIsApplied(), W.IsReady() || IsWActive() ? Color.LimeGreen : Color.Red); } if (DrawRRangeBool) { Render.Circle.DrawCircle(ObjectManager.Player.Position, GetRRange() + 25, R.IsReady() ? Color.LimeGreen : Color.Red); } if (Q.IsReady() && UseQBool && Orbwalker.ActiveMode == OrbwalkingMode.Combo && ObjectManager.Player.Mana > GetQMana() + GetWMana()) { foreach ( var enemy in ValidTargets.Where(t => t.Distance(ObjectManager.Player) < 800) .OrderBy(e => e.Distance(ObjectManager.Player))) { var prediction = Q.GetPrediction(enemy); if ((int)prediction.Hitchance >= (int)HitChance.VeryHigh) { Q.Cast(prediction.UnitPosition); } } } var attackrange = GetAttackRangeAfterWIsApplied(); var target = TargetSelector.GetTarget(attackrange, DamageType.Physical); if (IsWActive() && target != null && target.Distance(ObjectManager.Player) > attackrange - 150) { E.CastIfHitchanceMinimum(target, HitChance.Medium); } #region Humanizer if (_humanizer != null) { _attacksSoFar = 0; } else if (_attacksSoFar >= HumanizerMinAttacks.Value) { _humanizer = new Humanizer(HumanizerMovementTime.Value); } if (!IsWActive()) { _humanizer = null; _attacksSoFar = 0; } if (_humanizer != null && _humanizer.ShouldDestroy) { _humanizer = null; } Orbwalker.SetMovementState(CanMove()); Orbwalker.SetAttackState(CanAttack()); #endregion Humanizer }
void QLogic(AttackableUnit target = null) { if (target != null) { if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo)) { var hero = target as AIHeroClient; if (hero != null) { if (hero.IsHPBarRendered) { var pred = Q.GetPrediction(hero); if (pred.Hitchance >= LeagueSharp.SDK.HitChance.High) { Q.Cast(hero); return; } } } else { foreach (var tar in ValidTargets.Where(t => t.Distance(ObjectManager.Player) < 900)) { if (ObjectManager.Player.ManaPercent > UseQManaSlider) { var pred = Q.GetPrediction(tar); if (pred.Hitchance >= LeagueSharp.SDK.HitChance.High) { Q.Cast(hero); return; } } } } } if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.LaneClear) || Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.JungleClear) || Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Harass)) { var minion = target as Obj_AI_Minion; if (minion != null && GetRendBuff(minion).Count >= UseQStackTransferMinStacksSlider && target.Health < Q.GetDamage(minion)) { foreach (var enemy in ValidTargets.Where(en => en.Distance(ObjectManager.Player) < 900)) { var pred = Q.GetPrediction(enemy, false); if (pred.Hitchance >= LeagueSharp.SDK.HitChance.High && pred.CollisionObjects.All(co => co is Obj_AI_Minion && co.Health < Q.GetDamage(co)) && pred.CollisionObjects.Any(m => m.NetworkId == target.NetworkId)) { Q.Cast(enemy); } } } } } }
public override void OnUpdate(EventArgs args) { base.OnUpdate(args); if (getCheckBoxItem(ComboMenu, "koggieusew")) { WLogic(); } if (getCheckBoxItem(ComboMenu, "koggieuser")) { RLogic(); } if (Q.IsReady() && getCheckBoxItem(ComboMenu, "koggieuseq") && Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo) && ObjectManager.Player.Mana > GetQMana() + GetWMana()) { foreach (var enemy in ValidTargets.Where(t => t.Distance(ObjectManager.Player) < 800).OrderBy(e => e.Distance(ObjectManager.Player))) { var prediction = Q.GetPrediction(enemy); if ((int)prediction.Hitchance >= (int)HitChance.VeryHigh) { Q.Cast(prediction.UnitPosition); } } } var attackrange = GetAttackRangeAfterWIsApplied(); var target = TargetSelector.GetTarget(attackrange, DamageType.Physical); if (IsWActive() && target != null && target.Distance(ObjectManager.Player) > attackrange - 150) { E.CastIfHitchanceMinimum(target, HitChance.Medium); } #region Humanizer if (_humanizer != null) { _attacksSoFar = 0; } else if (_attacksSoFar >= getSliderItem(HumanizerMenu, "koggieminattacks")) { _humanizer = new Humanizer(getSliderItem(HumanizerMenu, "koggiehumanizermovetime")); } if (!IsWActive()) { _humanizer = null; _attacksSoFar = 0; } if (_humanizer != null && _humanizer.ShouldDestroy) { _humanizer = null; } Orbwalker.DisableAttacking = !CanMove(); Orbwalker.DisableMovement = !CanAttack(); #endregion Humanizer }
private void RLogic() { if (!getCheckBoxItem(ComboMenu, "koggieuser") || !R.IsReady() || ObjectManager.Player.IsRecalling() || Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.None)) { return; } if (getCheckBoxItem(MainMenu, "koggiesavewmana") && ObjectManager.Player.Mana < GetRMana() + GetWMana()) { return; } var myPos = ObjectManager.Player.ServerPosition; foreach (var enemy in ValidTargets.Where(h => h.Distance(myPos) < R.Range && h.HealthPercent < 25 && h.LSIsValidTarget())) { if (getCheckBoxItem(ComboMenu, "onlyRHP")) { if (enemy.HealthPercent > getSliderItem(ComboMenu, "hpOfTarget")) { return; } } var prediction = R.GetPrediction(enemy, true); if ((int)prediction.Hitchance > (int)HitChance.Medium) { R.Cast(prediction.UnitPosition); } } if (GetRStacks() >= getSliderItem(MainMenu, "koggiermaxstacks")) { return; } if ((!Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo) && !getCheckBoxItem(HarassMenu, "koggieuserharass"))) { return; } foreach (var enemy in ValidTargets.Where(h => h.Distance(myPos) < R.Range && h.LSIsValidTarget() && h.HealthPercent < 35)) { var dist = enemy.Distance(ObjectManager.Player.ServerPosition); if (Orbwalker.CanAutoAttack && dist < 550) { break; } var prediction = R.GetPrediction(enemy, true); if ((int)prediction.Hitchance > (int)HitChance.Medium) { R.Cast(prediction.UnitPosition); } } }
public void UltLogic_OnUpdate(EventArgs args) { if (ObjectManager.Player.IsRecalling() || ObjectManager.Player.InFountain()) { return; } if (SoulboundAlly == null) { SoulboundAlly = GameObjects.AllyHeroes.FirstOrDefault(a => a.HasBuff("kalistacoopstrikeally")); return; } if (UseRAllySaverBool && AllIncomingDamageToSoulbound > SoulboundAlly.Health && SoulboundAlly.CountEnemyHeroesInRange(800) > 0) { R.Cast(); } if ((SoulboundAlly.ChampionName == "Blitzcrank" || SoulboundAlly.ChampionName == "Skarner" || SoulboundAlly.ChampionName == "TahmKench")) { foreach ( var unit in ObjectManager.Get <AIHeroClient>() .Where( h => h.IsEnemy && h.IsHPBarRendered && h.Distance(ObjectManager.Player.ServerPosition) > 700 && h.Distance(ObjectManager.Player.ServerPosition) < 1400) ) { if ((unit.HasBuff("rocketgrab2") && BalistaBool) || (unit.HasBuff("tahmkenchwdevoured") && TalistaBool) || (unit.HasBuff("skarnerimpale") && SalistaBool)) { R.Cast(); } } } if (UseREngageBool) { foreach (var enemy in ValidTargets.Where(en => en.IsValidTarget(1000) && en.LSIsFacing(ObjectManager.Player))) { var waypoints = enemy.GetWaypoints(); if (waypoints.LastOrDefault().Distance(ObjectManager.Player.ServerPosition) < 400) { R.Cast(); } } } }
public CSPlugin() { Bootstrap.Init(new string[1]); MainMenu = new Menu("challengerseries", ObjectManager.Player.ChampionName + " To The Challenger", true, ObjectManager.Player.ChampionName); CrossAssemblySettings = MainMenu.Add(new Menu("crossassemblysettings", "Challenger Utils: ")); DrawEnemyWaypoints = CrossAssemblySettings.Add(new MenuBool("drawenemywaypoints", "Draw Enemy Waypoints", true)); this.IsPerformanceChallengerEnabled = this.CrossAssemblySettings.Add( new MenuBool("performancechallengerx", "Use Performance Challenger", false)); this.TriggerOnUpdate = this.CrossAssemblySettings.Add( new MenuSlider("triggeronupdate", "Trigger OnUpdate X times a second", 26, 20, 33)); Utils.Prediction.PredictionMode = this.CrossAssemblySettings.Add(new MenuList <string>("pred", "Use Prediction: ", new[] { "SDK", "Common" })); DelayAction.Add(15000, () => Orbwalker.Enabled = true); Game.OnUpdate += this.DelayOnUpdate; Drawing.OnDraw += args => { if (DrawEnemyWaypoints) { foreach ( var e in ValidTargets.Where( en => en.Distance(ObjectManager.Player) < 5000)) { var ip = Drawing.WorldToScreen(e.Position); //start pos var wp = e.GetWaypoints(); var c = wp.Count - 1; if (wp.Count() <= 1) { break; } var w = Drawing.WorldToScreen(wp[c].ToVector3()); //endpos Drawing.DrawLine(ip.X, ip.Y, w.X, w.Y, 2, Color.Red); Drawing.DrawText(w.X, w.Y, Color.Red, e.CharData.BaseSkinName); } } }; }
void RLogic() { if (UseRCombo.Active && R.IsReady() && ObjectManager.Player.CountEnemyHeroesInRange(900) == 0) { foreach (var rTarget in ValidTargets.Where( e => SquishyTargets.Contains(e.CharData.BaseSkinName) && R.GetDamage(e) > 0.1 * e.MaxHealth || R.GetDamage(e) > e.Health)) { if (rTarget.Distance(ObjectManager.Player) > 1400) { var pred = Prediction.GetPrediction(rTarget, R); if (!pred.Item3.Any(obj => obj is Obj_AI_Hero)) { R.CastOnUnit(rTarget); } break; } R.CastOnUnit(rTarget); } } }
public void QLogic() { if (!Q.IsReady() || (ObjectManager.Player.Mana < 3 * GetWManaCost() && CanW())) { return; } var shouldntKS = EntityManager.Heroes.Allies.Any( h => h.Position.Distance(ObjectManager.Player.Position) < 600 && !h.IsDead && !h.IsMe); foreach (var hero in ValidTargets.Where(h => h.LSIsValidTarget(925))) { if (shouldntKS && Q.GetDamage(hero) > hero.Health) { continue; } var pred = Prediction.GetPrediction(hero, Q); if (((int)pred.Item1 > (int)HitChance.Medium || hero.HasBuff("SorakaEPacify")) && pred.Item2.Distance(ObjectManager.Player.ServerPosition) < Q.Range) { Q.Cast(pred.Item2); } } }
public void QLogic() { if (!Q.IsReady() || (ObjectManager.Player.Mana < 3 * GetWManaCost() && CanW())) { return; } var shouldntKS = EntityManager.Heroes.Allies.Any( h => h.Position.Distance(ObjectManager.Player.Position) < 600 && !h.IsDead && !h.IsMe); foreach (var hero in ValidTargets.Where(h => h.IsValidTarget(925))) { if (shouldntKS && Q.GetDamage(hero) > hero.Health) { break; } var pred = Q.GetPrediction(hero); if ((int)pred.Hitchance > (int)HitChance.Medium && pred.UnitPosition.Distance(ObjectManager.Player.ServerPosition) < Q.Range) { Q.Cast(hero); } } }
public override void OnDraw(EventArgs args) { if (Orbwalker.ActiveMode == OrbwalkingMode.Combo && UseSheenCombo && HasSheenBuff && ObjectManager.Player.CountEnemyHeroesInRange(550) > 0) { return; } if (_lastTurretTarget == null || !_lastTurretTarget.IsHPBarRendered) { _lastTurretTarget = null; } if (Q.IsReady()) { var targets = ValidTargets.Where(x => x.IsHPBarRendered && x.Health < Q.GetDamage(x) && x.IsValidTarget(Q.Range) && !x.IsZombie); if (targets != null && targets.Any()) { foreach (var target in targets) { if (target.Health < Q.GetDamage(target) && (!target.HasBuff("kindrednodeathbuff") && !target.HasBuff("Undying Rage") && !target.HasBuff("JudicatorIntervention"))) { var pred = Q.GetPrediction(target); if (pred.Hitchance >= HitChance.High && !pred.CollisionObjects.Any()) { Q.Cast(pred.UnitPosition); } } } } } if (Orbwalker.ActiveMode != OrbwalkingMode.None) { if (Q.IsReady()) { var qtarget = TargetSelector.GetTarget(Q); if (qtarget.IsHPBarRendered) { var pred = Q.GetPrediction(qtarget); if (Q.IsReady() && UseQ && pred.Hitchance >= HitChance.High && !pred.CollisionObjects.Any()) { Q.Cast(pred.UnitPosition); return; } } } if (W.IsReady()) { var wMode = UseWMode.SelectedValue; if (wMode == "ALWAYS" || (wMode == "COMBO" && Orbwalker.ActiveMode == OrbwalkingMode.Combo)) { var wtarget = TargetSelector.GetTarget(W); if (wMode == "COMBO" && wtarget.Distance(ObjectManager.Player) < 500) { if (wtarget.IsHPBarRendered) { var pred = W.GetPrediction(wtarget); if (pred.Hitchance >= HitChance.High) { W.Cast(pred.UnitPosition); return; } } } else { if (wtarget.IsHPBarRendered) { var pred = W.GetPrediction(wtarget); if (pred.Hitchance >= HitChance.High) { W.Cast(pred.UnitPosition); return; } } } } } } if (R.IsReady()) { var rtarget = TargetSelector.GetTarget(R); if (UseRKey.Active) { var pred = R.GetPrediction(rtarget); if (pred.Hitchance >= HitChance.High) { castedR = true; R.Cast(pred.UnitPosition); return; } } if (ObjectManager.Player.CountEnemyHeroesInRange(800) < 1) { R.CastIfWillHit(rtarget, 3); return; } } if (Orbwalker.CanMove() && QFarm && ObjectManager.Player.ManaPercent > QMana && (Orbwalker.ActiveMode == OrbwalkingMode.LaneClear || Orbwalker.ActiveMode == OrbwalkingMode.LastHit)) { var minions = GameObjects.EnemyMinions.Where( m => m.Distance(ObjectManager.Player) < 1000 && m.IsHPBarRendered && Q.GetDamage(m) > m.Health); var lowhp = minions.FirstOrDefault(m => m.Health < ObjectManager.Player.GetAutoAttackDamage(m) / 2 + 10); if (lowhp != null) { var pred = Q.GetPrediction(lowhp); if (!pred.CollisionObjects.Any()) { Q.Cast(pred.UnitPosition); return; } } var cannon = minions.FirstOrDefault(m => m.CharData.BaseSkinName.Contains("Siege")); if (cannon != null) { var pred = Q.GetPrediction(cannon); if (!pred.CollisionObjects.Any()) { Q.Cast(pred.UnitPosition); return; } } if (minions.Count() > 1) { var lowesthp = minions.OrderBy(m => m.Health).FirstOrDefault(); var pred = Q.GetPrediction(lowesthp); if (!pred.CollisionObjects.Any()) { Q.Cast(pred.UnitPosition); return; } } } }
public override void OnUpdate(EventArgs args) { base.OnUpdate(args); if (UseWBool) { WLogic(); } if (UseRBool) { RLogic(); } if (Q.IsReady() && UseQBool && Orbwalker.ActiveMode == OrbwalkingMode.Combo && ObjectManager.Player.Mana > GetQMana() + GetWMana()) { foreach ( var enemy in ValidTargets.Where(t => t.Distance(ObjectManager.Player) < 800) .OrderBy(e => e.Distance(ObjectManager.Player))) { var prediction = Q.GetPrediction(enemy); if ((int)prediction.Hitchance >= (int)HitChance.VeryHigh) { Q.Cast(prediction.UnitPosition); } } } var attackrange = GetAttackRangeAfterWIsApplied(); var target = TargetSelector.GetTarget(attackrange, DamageType.Physical); if (IsWActive() && target != null && target.Distance(ObjectManager.Player) > attackrange - 150) { E.CastIfHitchanceMinimum(target, HitChance.Medium); } #region Humanizer if (HumanizerEnabled) { if (_humanizer != null) { _attacksSoFar = 0; } else if (_attacksSoFar >= HumanizerMinAttacks.Value) { _humanizer = new Humanizer(HumanizerMovementTime.Value); } if (!IsWActive()) { _humanizer = null; _attacksSoFar = 0; } if (_humanizer != null && _humanizer.ShouldDestroy) { _humanizer = null; } Orbwalker.MovementState = CanMove(); Orbwalker.AttackState = CanAttack(); } else { _humanizer = null; Orbwalker.MovementState = true; Orbwalker.AttackState = true; } #endregion Humanizer }
public override void OnDraw(EventArgs args) { #region Logic var ultTarget = TargetSelector.GetTarget(R); if (this.SemiAutoRKey.Active && ultTarget != null && ultTarget.IsHPBarRendered) { this.pressedR = true; R.Cast(R.GetPrediction(ultTarget).UnitPosition); } if (!this.HasPassive) { var target = TargetSelector.GetTarget(Q); if (target != null && Orbwalker.ActiveMode == OrbwalkingMode.Combo && target.Distance(ObjectManager.Player) < Q.Range) { if (UseQCombo && Q.IsReady()) { Q.Cast(target); return; } } if (Q.IsReady()) { var q2tg = TargetSelector.GetTarget(Q2.Range); if (q2tg != null && q2tg.IsHPBarRendered) { if (q2tg.Distance(ObjectManager.Player) > 600) { if (Orbwalker.ActiveMode != OrbwalkingMode.None && Orbwalker.ActiveMode != OrbwalkingMode.Combo) { var menuItem = QExtendedBlacklist["qexbl" + q2tg.CharData.BaseSkinName]; if (UseQExtended && ObjectManager.Player.ManaPercent > QExManaPercent && menuItem != null && !menuItem.GetValue <MenuBool>()) { var QPred = Q2.GetPrediction(q2tg); if (QPred.Hitchance >= HitChance.Medium) { var minions = GameObjects.EnemyMinions.Where( m => m.IsHPBarRendered && m.Distance(ObjectManager.Player) < Q.Range); var objAiMinions = minions as IList <Obj_AI_Minion> ?? minions.ToList(); if (objAiMinions.Any()) { foreach (var minion in objAiMinions) { var QHit = new Utils.Geometry.Rectangle( ObjectManager.Player.Position, ObjectManager.Player.Position.Extend(minion.Position, Q2.Range), Q2.Width); if (!QPred.UnitPosition.IsOutside(QHit)) { Q.Cast(minion); return; } } } } } } } else if (Q.IsReady() && UseQCombo) { Q.Cast(q2tg); } } } #endregion if (QKS && Q.IsReady()) { var targets = ValidTargets.Where( x => x.IsHPBarRendered && x.Health < Q.GetDamage(x) && x.IsValidTarget(Q.Range) && !x.IsZombie); var objAiHeroes = targets as IList <Obj_AI_Hero> ?? targets.ToList(); if (targets != null && objAiHeroes.Any()) { foreach (var tar in objAiHeroes) { if (tar.Health < Q.GetDamage(tar) && (!tar.HasBuff("kindrednodeathbuff") && !tar.HasBuff("Undying Rage") && !tar.HasBuff("JudicatorIntervention"))) { Q.Cast(target); return; } } } } if (R.IsReady() && ForceR) { var rtarget = TargetSelector.GetTarget(900); if (rtarget != null && rtarget.IsHPBarRendered && target.Health < R.GetDamage(rtarget) * 0.8 && rtarget.Distance(ObjectManager.Player) > 300) { var pred = R.GetPrediction(rtarget); if (!pred.CollisionObjects.Any() && pred.Hitchance >= HitChance.High) { R.Cast(pred.UnitPosition); } } } } var tg = TargetSelector.GetTarget(ObjectManager.Player.AttackRange, DamageType.Physical); if (tg != null && HasPassive) { if (UsePassiveOnEnemy && tg.IsValidTarget()) { Orbwalker.ForceTarget = tg; return; } } Orbwalker.ForceTarget = null; }
//private Items.Item ZZrot = new Items.Item(3512, 400); #endregion #region Events public override void OnUpdate(EventArgs args) { base.OnUpdate(args); if (UseEBool && E.IsReady()) { foreach (var enemy in ValidTargets.Where(e => e.IsValidTarget(550))) { /*if (ZZrot.IsReady && enemy.IsValidTarget(ZZrot.Range)) * { * if (E.CastOnUnit(enemy)) * { * DelayAction.Add(100, * () => * { * this.ZZrot.Cast( * enemy.Position.ToVector2() * .Extend(ObjectManager.Player.ServerPosition.ToVector2(), -100)); * }); * return; * } * }*/ if (enemy.IsCastingInterruptableSpell()) { E.CastOnUnit(enemy); } if (IsCondemnable(enemy)) { if (EDelaySlider.Value > 0) { var thisEnemy = enemy; DelayAction.Add(EDelaySlider.Value, () => E.CastOnUnit(thisEnemy)); return; } E.CastOnUnit(enemy); } } } if (SemiAutomaticCondemnKey.Active) { foreach ( var hero in ValidTargets.Where( h => h.ServerPosition.Distance(ObjectManager.Player.ServerPosition) < 550)) { var prediction = E.GetPrediction(hero); for (var i = 40; i < 425; i += 125) { var flags = NavMesh.GetCollisionFlags( prediction.UnitPosition.ToVector2() .Extend(ObjectManager.Player.ServerPosition.ToVector2(), -i) .ToVector3()); if (flags.HasFlag(CollisionFlags.Wall) || flags.HasFlag(CollisionFlags.Building)) { if (EDelaySlider.Value > 0) { var thisEnemy = hero; DelayAction.Add(EDelaySlider.Value, () => E.CastOnUnit(thisEnemy)); return; } E.CastOnUnit(hero); return; } } } } if (UseEInterruptBool) { var possibleChannelingTarget = ValidTargets.FirstOrDefault( e => e.ServerPosition.Distance(ObjectManager.Player.ServerPosition) < 550 && e.IsCastingInterruptableSpell()); if (possibleChannelingTarget.IsValidTarget()) { if (EDelaySlider.Value > 0) { var thisEnemy = possibleChannelingTarget; DelayAction.Add(EDelaySlider.Value, () => E.CastOnUnit(thisEnemy)); return; } E.CastOnUnit(possibleChannelingTarget); } } }
public override void OnDraw(EventArgs args) { var drawRange = DrawRange.Value; if (drawRange > 0) { Render.Circle.DrawCircle(ObjectManager.Player.Position, drawRange, Color.Gold); } if (Orbwalker.ActiveMode == OrbwalkingMode.Combo) { if (UseQCombo && Q.IsReady() && ObjectManager.Player.CountEnemyHeroesInRange(800) == 0 && ObjectManager.Player.CountEnemyHeroesInRange(1100) > 0) { Q.CastIfWillHit(TargetSelector.GetTarget(1100, DamageType.Physical), 2); var goodQTarget = ValidTargets.FirstOrDefault( t => t.Distance(ObjectManager.Player) < 1150 && t.Health < Q.GetDamage(t) || SquishyTargets.Contains(t.CharData.BaseSkinName)); if (goodQTarget != null) { var pred = Q.GetPrediction(goodQTarget); if ((int)pred.Hitchance > (int)HitChance.Medium) { Q.Cast(pred.UnitPosition); } } } } if (Orbwalker.ActiveMode != OrbwalkingMode.None && Orbwalker.ActiveMode != OrbwalkingMode.Combo && ObjectManager.Player.CountEnemyHeroesInRange(850) == 0) { var qHarassMode = QHarassMode.SelectedValue; if (qHarassMode != "DISABLED") { var qTarget = TargetSelector.GetTarget(1100, DamageType.Physical); if (qTarget != null) { var pred = Q.GetPrediction(qTarget); if ((int)pred.Hitchance > (int)HitChance.Medium) { if (qHarassMode == "ALLOWMINIONS") { Q.Cast(pred.UnitPosition); } else if (pred.CollisionObjects.Count == 0) { Q.Cast(pred.UnitPosition); } } } } } #region ELogic if (!W.IsReady()) { return; } var goodTarget = ValidTargets.FirstOrDefault( e => e.IsValidTarget(820) && e.HasBuffOfType(BuffType.Knockup) || e.HasBuffOfType(BuffType.Snare) || e.HasBuffOfType(BuffType.Stun) || e.HasBuffOfType(BuffType.Suppression) || e.IsCharmed || e.IsCastingInterruptableSpell() || e.HasBuff("ChronoRevive") || e.HasBuff("ChronoShift")); if (goodTarget != null) { var pos = goodTarget.ServerPosition; if (pos.Distance(ObjectManager.Player.ServerPosition) < 820) { W.Cast(goodTarget.ServerPosition); } } foreach ( var enemyMinion in ObjectManager.Get <Obj_AI_Base>() .Where( m => m.IsEnemy && m.ServerPosition.Distance(ObjectManager.Player.ServerPosition) < W.Range && m.HasBuff("teleport_target"))) { W.Cast(enemyMinion.ServerPosition); } #endregion ELogic #region RLogic if (UseRCombo.Active && R.IsReady() && ObjectManager.Player.CountEnemyHeroesInRange(900) == 0) { foreach ( var rTarget in ValidTargets.Where( e => SquishyTargets.Contains(e.CharData.BaseSkinName) && R.GetDamage(e) > 0.1 * e.MaxHealth || R.GetDamage(e) > e.Health) ) { if (rTarget.Distance(ObjectManager.Player) > 1400) { var pred = R.GetPrediction(rTarget); if (!pred.CollisionObjects.Any(obj => obj is Obj_AI_Hero)) { R.CastOnUnit(rTarget); } break; } R.CastOnUnit(rTarget); } } #endregion RLogic }
void QLogic() { var targets = ValidTargets.Where(x => x.IsHPBarRendered && x.Health < Q.GetDamage(x) && x.IsValidTarget(Q.Range) && !x.IsZombie); if (targets != null && targets.Any()) { foreach (var target in targets) { if (target == null) { continue; } if (target.Health < Q.GetDamage(target) && (!target.HasBuff("Undying Rage") && !target.HasBuff("JudicatorIntervention"))) { var pred = Q.GetPrediction(target); if (pred.Hitchance >= HitChance.High && !pred.CollisionObjects.Any()) { Q.Cast(pred.UnitPosition); } } } } if (Orbwalker.ActiveMode != OrbwalkingMode.None) { if (Q.IsReady()) { var qtarget = TargetSelector.GetTarget(Q); if (qtarget != null && qtarget.IsHPBarRendered) { var pred = Q.GetPrediction(qtarget); if (Q.IsReady() && UseQ && pred.Hitchance >= HitChance.High && !pred.CollisionObjects.Any()) { Q.Cast(pred.UnitPosition); return; } } } } if (Orbwalker.CanMove() && QFarm && ObjectManager.Player.ManaPercent > QMana && (Orbwalker.ActiveMode == OrbwalkingMode.LaneClear || Orbwalker.ActiveMode == OrbwalkingMode.LastHit)) { var minion = GameObjects.EnemyMinions.FirstOrDefault( m => m.Position.Distance(ObjectManager.Player.Position) < 550 && m.Health < ObjectManager.Player.GetAutoAttackDamage(m) && Health.GetPrediction(m, (int)((Game.Ping / 2) + ObjectManager.Player.AttackCastDelay * 1000)) < 1 && Health.GetPrediction(m, (int)((Game.Ping / 2) + 250)) > 1); if (minion != null) { var pred = Q.GetPrediction(minion); if (!pred.CollisionObjects.Any(o => o is Obj_AI_Minion)) { Q.Cast(pred.UnitPosition); } } } }
private void OnOrbwalkerAction(object sender, OrbwalkingActionArgs orbwalkingActionArgs) { if (orbwalkingActionArgs.Target == null) { return; } if (orbwalkingActionArgs.Type == OrbwalkingType.AfterAttack) { Orbwalker.ForceTarget = null; if (UseEIfResettedByAMinionBool && ObjectManager.Player.ManaPercent > EResetByAMinionMinManaSlider.Value) { if ( ValidTargets.Any(e => e.Distance(ObjectManager.Player.ServerPosition) > 615 && GetRendBuff(e).Count >= MinEnemyStacksForEMinionResetSlider.Value) && GameObjects.EnemyMinions.Any(m => IsRendKillable(m))) { E.Cast(); } } if (Orbwalker.ActiveMode == OrbwalkingMode.Combo && Q.IsReady()) { var hero = orbwalkingActionArgs.Target as Obj_AI_Hero; if (hero != null) { if (hero.IsHPBarRendered) { var pred = Q.GetPrediction(hero); if (pred.Hitchance >= HitChance.High) { Q.Cast(pred.UnitPosition); return; } } } else { foreach (var target in ValidTargets.Where(t => t.Distance(ObjectManager.Player) < 900)) { if (ObjectManager.Player.ManaPercent > UseQManaSlider.Value) { var pred = Q.GetPrediction(target); if (pred.Hitchance >= HitChance.High) { Q.Cast(pred.UnitPosition); return; } } } } } if (UseQStackTransferBool && orbwalkingActionArgs.Target is Obj_AI_Minion) { var target = orbwalkingActionArgs.Target as Obj_AI_Minion; if (GetRendBuff(target).Count >= UseQStackTransferMinStacksSlider && target.Health < Q.GetDamage(target)) { foreach (var enemy in ValidTargets.Where(en => en.Distance(ObjectManager.Player) < 900)) { var pred = Q.GetPrediction(enemy, false); if (pred.CollisionObjects.All(co => co is Obj_AI_Minion && co.Health < Q.GetDamage(co)) && pred.CollisionObjects.Any(m => m.NetworkId == target.NetworkId)) { Q.Cast(pred.UnitPosition); } } } } } if (orbwalkingActionArgs.Type == OrbwalkingType.BeforeAttack) { if (Orbwalker.ActiveMode == OrbwalkingMode.Combo && FocusWBuffedEnemyBool) { var wMarkedEnemy = ValidTargets.FirstOrDefault( h => h.Distance(ObjectManager.Player.ServerPosition) < 600 && h.HasBuff("kalistacoopstrikemarkally")); if (wMarkedEnemy != null && wMarkedEnemy.IsValidTarget()) { Orbwalker.ForceTarget = wMarkedEnemy; } } if (Orbwalker.ActiveMode != OrbwalkingMode.Combo && FocusWBuffedEnemyInHarassBool) { var wMarkedEnemy = ValidTargets.FirstOrDefault( h => h.Distance(ObjectManager.Player.ServerPosition) < 600 && h.HasBuff("kalistacoopstrikemarkally")); if (wMarkedEnemy != null && wMarkedEnemy.IsValidTarget()) { Orbwalker.ForceTarget = wMarkedEnemy; } } if (Orbwalker.ActiveMode == OrbwalkingMode.LaneClear && orbwalkingActionArgs.Target.Type != GameObjectType.obj_AI_Hero) { if (FocusWBuffedMinions) { Orbwalker.ForceTarget = GameObjects.EnemyMinions.FirstOrDefault( m => m.Distance(ObjectManager.Player.ServerPosition) < 615 && m.HasBuff("kalistacoopstrikemarkally") && m.Health < ObjectManager.Player.GetAutoAttackDamage(m) + W.GetDamage(m)); } } } }