private void AllStarCombo(AIHeroClient target) { actionQueue.EnqueueAction( comboQueue, () => r.IsReady() && r.Instance.ToggleState == 0 && player.IsVisible, () => { zedComboSelector.AllStarAnimation(); r.Cast(target); }, () => r.IsReady() && r.Instance.ToggleState != 0 && player.IsVisible); actionQueue.EnqueueAction( comboQueue, () => true, () => zedItems.UseItems(target), () => true); actionQueue.EnqueueAction( comboQueue, () => w.UseOnCombo && shadows.CanCast && player.Mana > w.ManaCost, () => shadows.Cast(target.ServerPosition), () => target.IsDead || target.IsZombie || w.Instance.ToggleState != 0 || !w.UseOnCombo || player.Mana <= w.ManaCost); actionQueue.EnqueueAction( comboQueue, () => q.UseOnCombo && q.IsReady(), () => ObjectManager.Player.Spellbook.CastSpell(SpellSlot.Q, q.GetPrediction(target).CastPosition), () => target.IsDead || target.IsZombie || !q.IsReady() || !q.UseOnCombo); actionQueue.EnqueueAction( comboQueue, () => w.Instance.ToggleState != 0 && e.UseOnCombo && e.IsReady() && e.CanCast(target), () => e.Cast(), () => target.IsDead || target.IsZombie || w.Instance.ToggleState == 0 || !e.IsReady() || !e.UseOnCombo || !e.CanCast(target)); }
public void Combo() { List <Obj_AI_Base> shadows = GetShadows(); if (!shadows.Any() || (!q.UseOnCombo && !e.UseOnCombo) || (!q.IsReady() && !e.IsReady())) { return; } foreach (Obj_AI_Base objAiBase in shadows) { if (((q.UseOnCombo && !q.IsReady()) || !q.UseOnCombo) && ((e.UseOnCombo && !e.IsReady()) || !e.UseOnCombo)) { break; } if (q.UseOnCombo && q.IsReady()) { AIHeroClient target = TargetSelector.GetTarget( q.Range, q.DamageType, true, null, objAiBase.Position); if (target != null) { PredictionInput predictionInput = new PredictionInput(); predictionInput.Range = q.Range; predictionInput.RangeCheckFrom = objAiBase.Position; predictionInput.From = objAiBase.Position; predictionInput.Delay = q.Delay; predictionInput.Speed = q.Speed; predictionInput.Unit = target; predictionInput.Type = SkillshotType.SkillshotLine; predictionInput.Collision = false; PredictionOutput predictionOutput = Prediction.GetPrediction(predictionInput); if (predictionOutput.Hitchance >= HitChance.Medium) { q.Cast(predictionOutput.CastPosition); } } } if (e.UseOnCombo && e.IsReady()) { AIHeroClient target = TargetSelector.GetTarget(e.Range, e.DamageType, true, null, objAiBase.Position); if (target != null) { e.Cast(); } } } }
private void AllStarCombo(Obj_AI_Hero target) { actionQueue.EnqueueAction( comboQueue, () => r.IsReady() && r.Instance.ToggleState == 0 && player.IsVisible, () => { zedComboSelector.AllStarAnimation(); r.Cast(target); }, () => r.IsReady() && r.Instance.ToggleState != 0 && player.IsVisible); actionQueue.EnqueueAction( comboQueue, () => true, () => zedItems.UseItems(target), () => true); actionQueue.EnqueueAction( comboQueue, () => w.UseOnCombo && shadows.CanCast && player.Mana > w.ManaCost, () => shadows.Cast(target.ServerPosition), () => target.IsDead || target.IsZombie || w.Instance.ToggleState != 0 || !w.UseOnCombo || player.Mana <= w.ManaCost); actionQueue.EnqueueAction( comboQueue, () => w.Instance.ToggleState != 0 && q.UseOnCombo && q.IsReady(), () => q.Cast(q.GetPrediction(target).CastPosition), () => target.IsDead || target.IsZombie || !q.IsReady() || !q.UseOnCombo || player.Mana <= q.ManaCost); actionQueue.EnqueueAction( comboQueue, () => w.Instance.ToggleState != 0 && e.UseOnCombo && e.IsReady() && e.CanCast(target), () => e.Cast(), () => target.IsDead || target.IsZombie || w.Instance.ToggleState == 0 || !e.IsReady() || !e.UseOnCombo || !e.CanCast(target)); //Console.WriteLine("star combo2"); }
public void Cast(Vector3 position) { if (CanCast) { w.Cast(position); lastTimeCast = Game.Time; } }
public void Cast(Vector3 position) { if (CanCast) { w.Cast(position); //Console.WriteLine("public if CanCast W cast"); lastTimeCast = Game.Time; } }
private void AntiGapcloser_OnEnemyGapcloser(ActiveGapcloser gapcloser) { if (ObjectManager.Player.Distance(gapcloser.Sender.ServerPosition) < e.Range) { if (zedMenu.GetParamBool("koreanzed.miscmenu.useeantigc") && e.IsReady()) { e.Cast(); } if (zedMenu.GetParamBool("koreanzed.miscmenu.usewantigc") && w.IsReady()) { w.Cast(Vector3.Negate(gapcloser.Sender.Position)); w.Cast(); } } }
private void Game_OnUpdate(EventArgs args) { if (!e.IsReady() || ObjectManager.Player.Mana < e.ManaCost || !zedMenu.GetParamBool("koreanzed.miscmenu.autoe")) { return; } List <Obj_AI_Base> shadows = GetShadows2(); if ( HeroManager.Enemies.Any( enemy => !enemy.IsDead && !enemy.IsZombie && enemy.Distance(ObjectManager.Player) < e.Range && enemy.IsValidTarget()) || GetShadows2() .Any( shadow => HeroManager.Enemies.Any( enemy => !enemy.IsDead && !enemy.IsZombie && enemy.Distance(shadow) < e.Range && enemy.IsValidTarget()))) { e.Cast(); //Console.WriteLine("auto e1"); } }
private void Game_OnUpdate(EventArgs args) { if (q.IsReady() && player.Mana > q.ManaCost) { foreach (Obj_AI_Hero objAiHero in player.GetEnemiesInRange(q.Range).Where(hero => !hero.IsDead && !hero.IsZombie && q.IsKillable(hero))) { PredictionOutput predictionOutput = q.GetPrediction(objAiHero); if ((predictionOutput.Hitchance >= HitChance.High) && ((!q.GetCollision(player.Position.To2D(), new List <Vector2> { predictionOutput.CastPosition.To2D() }).Any()) || q.GetDamage(objAiHero) / 2 > objAiHero.Health)) { q.Cast(predictionOutput.CastPosition); //Console.WriteLine("ks q"); } } } if (e.IsReady() && player.Mana > e.ManaCost) { if (player.GetEnemiesInRange(e.Range).Any(hero => !hero.IsDead && !hero.IsZombie && e.IsKillable(hero))) { e.Cast(); //Console.WriteLine("ks e"); } } if (zedOrbwalker.ActiveMode != Orbwalking.OrbwalkingMode.Combo || !zedShadows.CanCast) { return; } List <Obj_AI_Hero> heroList = ObjectManager.Player.GetEnemiesInRange(2000F); if (heroList.Count() == 1) { Obj_AI_Hero target = heroList.FirstOrDefault(); if (target != null && zedShadows.CanCast && player.Distance(target) > Orbwalking.GetRealAutoAttackRange(target) && player.Distance(target) < w.Range + Orbwalking.GetRealAutoAttackRange(target) && player.GetAutoAttackDamage(target) > target.Health && player.Mana > w.ManaCost) { zedShadows.Cast(target.Position); //Console.WriteLine("ks w 1"); zedShadows.Switch(); //Console.WriteLine("ks w 2"); } } }
private void Game_OnUpdate(EventArgs args) { if (!e.IsReady() || ObjectManager.Player.Mana < e.ManaCost || !zedMenu.GetParamBool("koreanzed.miscmenu.autoe")) { return; } if (HeroManager.Enemies.Any(enemy => enemy.Distance(ObjectManager.Player) < e.Range) || zedShadows.GetShadows() .Any(shadow => HeroManager.Enemies.Any(enemy => enemy.Distance(shadow) < e.Range))) { e.Cast(); } }
private void Game_OnUpdate(System.EventArgs args) { if (targetUnderTurret != null && targetUnderTurret.IsDead) { targetUnderTurret = null; turrent = null; } if (zedOrbwalker.ActiveMode != Orbwalking.OrbwalkingMode.Combo && zedOrbwalker.ActiveMode != Orbwalking.OrbwalkingMode.None && turrent != null && targetUnderTurret != null && !targetUnderTurret.IsDead && targetUnderTurret.IsValid) { if (targetUnderTurret.IsValid) { if (ObjectManager.Player.Distance(targetUnderTurret) < Orbwalking.GetRealAutoAttackRange(targetUnderTurret) + 20F && (targetUnderTurret.Health < (ObjectManager.Player.GetAutoAttackDamage(targetUnderTurret) * 2) + turrent.GetAutoAttackDamage(targetUnderTurret) && targetUnderTurret.Health > turrent.GetAutoAttackDamage(targetUnderTurret) + ObjectManager.Player.GetAutoAttackDamage(targetUnderTurret))) { ObjectManager.Player.IssueOrder(GameObjectOrder.AttackUnit, targetUnderTurret); } if (q.IsReady() && q.CanCast(targetUnderTurret) && ObjectManager.Player.Distance(targetUnderTurret) < Orbwalking.GetRealAutoAttackRange(targetUnderTurret) + 20F && targetUnderTurret.Health < q.GetDamage(targetUnderTurret) + ObjectManager.Player.GetAutoAttackDamage(targetUnderTurret, true)) { q.Cast(targetUnderTurret); return; } if (e.IsReady() && e.CanCast(targetUnderTurret) && !q.IsReady() && ObjectManager.Player.Distance(targetUnderTurret) < Orbwalking.GetRealAutoAttackRange(targetUnderTurret) + 20F && targetUnderTurret.Health < e.GetDamage(targetUnderTurret) + ObjectManager.Player.GetAutoAttackDamage(targetUnderTurret, true)) { e.Cast(targetUnderTurret); } } } }
public void Cast(Obj_AI_Hero target) { if (target == null) { return; } int currentShadows = GetShadows().Count(); if (CanCast && w.IsReady() && w.Instance.ToggleState == 0 && !ObjectManager.Player.HasBuff("zedwhandler") && ((ObjectManager.Player.HasBuff("zedr2") && currentShadows == 1) || currentShadows == 0)) { w.Cast(target.Position); lastTimeCast = Game.Time; } }
private void AntiGapcloser_OnEnemyGapcloser(ActiveGapcloser gapcloser) { if (ObjectManager.Player.Distance(gapcloser.Sender.Position) > e.Range) { return; } if (zedMenu.GetParamBool("koreanzed.miscmenu.useeantigc") && e.IsReady()) { e.Cast(); //Console.WriteLine("antig1"); } if (zedMenu.GetParamBool("koreanzed.miscmenu.usewantigc") && w.IsReady() && antiGapCloserList.Count == 0) { if (shadows.CanCast) { actionQueue.EnqueueAction( antiGapCloserList, () => player.Mana > w.ManaCost && player.HealthPercent - 10 < gapcloser.Sender.HealthPercent, () => shadows.Cast(Vector3.Negate(gapcloser.Sender.Position)), () => true); actionQueue.EnqueueAction( antiGapCloserList, () => w.Instance.ToggleState != 0, () => shadows.Switch(), () => !w.IsReady()); Game.OnUpdate += Game_OnUpdate; return; } else if (!shadows.CanCast && shadows.CanSwitch) { int champCount = HeroManager.Enemies.Count(enemy => enemy.Distance(shadows.Instance.Position) < 1500F); if ((player.HealthPercent > 80 && champCount <= 3) || (player.HealthPercent > 40 && champCount <= 2) ) { shadows.Switch(); //Console.WriteLine("antig2"); } } } }
private void Obj_AI_Base_OnProcessSpellCast(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs args) { if (sender == null || args == null || !r.IsReady() || r.Instance.ToggleState != 0 || !player.GetEnemiesInRange(r.Range).Any() || args.Slot != SpellSlot.R || !sender.IsChampion() || !sender.IsEnemy || !zedMenu.GetParamBool("koreanzed.miscmenu.rdodge.user") || !zedMenu.CheckMenuItem("koreanzed.miscmenu.rdodge." + args.SData.Name.ToLowerInvariant())) { return; } if (((args.Target != null && args.Target.IsMe) || player.Distance(args.End) < Math.Max(args.SData.BounceRadius, args.SData.LineWidth)) && zedMenu.GetParamBool("koreanzed.miscmenu.rdodge." + args.SData.Name.ToLowerInvariant())) { int delay = (int)Math.Truncate((double)(player.Distance(sender) / args.SData.MissileSpeed)) - 1; Utility.DelayAction.Add(delay, () => { r.Cast(TargetSelector.GetTarget(r.Range, r.DamageType)); }); } }
private void Combo() { if (actionQueue.ExecuteNextAction(comboQueue)) { return; } if (w.UseOnCombo && w.IsReady() && player.HasBuff("zedr2") && shadows.CanCast) { Obj_AI_Hero target = TargetSelector.GetTarget(w.Range + e.Range, TargetSelector.DamageType.Physical); if (target != null) { actionQueue.EnqueueAction(comboQueue, () => true, () => shadows.Cast(target), () => true); return; } } float maxRange = float.MaxValue; if (r.UseOnCombo && r.IsReady() && r.Instance.ToggleState == 0) { Obj_AI_Hero target = null; maxRange = Math.Min(maxRange, r.Range); if (zedMenu.GetParamBool("koreanzed.combo.ronselected")) { if (TargetSelector.SelectedTarget != null && TargetSelector.SelectedTarget.IsValidTarget(maxRange)) { target = TargetSelector.SelectedTarget; } } else { List <Obj_AI_Hero> ignoredChamps = zedMenu.GetBlockList(BlockListType.Ultimate); target = TargetSelector.GetTarget(maxRange, r.DamageType, true, ignoredChamps); } if (target != null) { actionQueue.EnqueueAction( comboQueue, () => r.IsReady() && r.Instance.ToggleState == 0, () => r.Cast(target), () => r.Instance.ToggleState != 0); actionQueue.EnqueueAction(comboQueue, () => true, () => zedItems.UseItems(target), () => true); return; } } if (q.UseOnCombo) { maxRange = Math.Min(maxRange, q.Range); Obj_AI_Hero target = TargetSelector.GetTarget(maxRange, q.DamageType); PredictionOutput predictionOutput = q.GetPrediction(target); if (predictionOutput.Hitchance >= HitChance.VeryHigh) { q.Cast(predictionOutput.CastPosition); } } if (e.UseOnCombo) { maxRange = Math.Min(maxRange, e.Range); Obj_AI_Hero target = TargetSelector.GetTarget(maxRange, e.DamageType); if (target != null) { actionQueue.EnqueueAction(comboQueue, () => true, () => zedItems.UseItems(target), () => true); actionQueue.EnqueueAction(comboQueue, () => e.IsReady(), () => e.Cast(), () => true); } } if (w.UseOnCombo && w.IsReady() && w.Instance.ToggleState != 0) { List <Obj_AI_Base> shadowList = shadows.GetShadows(); foreach (Obj_AI_Base objAiBase in shadowList) { Obj_AI_Hero target = TargetSelector.GetTarget(2000F, TargetSelector.DamageType.Physical); if (target != null && player.Distance(target) > Orbwalking.GetRealAutoAttackRange(target) + 50F && objAiBase.Distance(target) < player.Distance(target)) { w.Cast(); } } } }
private void Combo() { if (actionQueue.ExecuteNextAction(comboQueue)) { return; } AIHeroClient itemsTarget = TargetSelector.GetTarget(player.AttackRange, TargetSelector.DamageType.Physical); if (itemsTarget != null) { zedItems.UseItems(itemsTarget); } shadows.Combo(); if (w.UseOnCombo && shadows.CanCast && player.HasBuff("ZedR2")) { AIHeroClient target = TargetSelector.GetTarget(w.Range + e.Range, TargetSelector.DamageType.Physical); if (target != null) { actionQueue.EnqueueAction(comboQueue, () => true, () => shadows.Cast(w.GetPrediction(target).CastPosition), () => true); return; } } float maxRange = float.MaxValue; if (r.UseOnCombo && r.IsReady() && r.Instance.ToggleState == 0) { AIHeroClient target = null; maxRange = Math.Min(maxRange, r.Range); if (zedMenu.GetParamBool("koreanzed.combo.ronselected")) { if (TargetSelector.SelectedTarget != null && TargetSelector.SelectedTarget.IsValidTarget(maxRange)) { target = TargetSelector.SelectedTarget; } } else { List <AIHeroClient> ignoredChamps = zedMenu.GetBlockList(BlockListType.Ultimate); target = TargetSelector.GetTarget(maxRange, r.DamageType, true, ignoredChamps); } if (target != null) { switch (zedMenu.GetCombo()) { case ComboType.AllStar: AllStarCombo(target); break; case ComboType.TheLine: TheLineCombo(target); break; } return; } } else if (w.UseOnCombo && shadows.CanCast && (!r.UseOnCombo || (r.UseOnCombo && !r.IsReady())) && (player.Mana > w.ManaCost + (q.UseOnCombo && q.IsReady() ? q.ManaCost : 0F) + (e.UseOnCombo && e.IsReady() ? e.ManaCost : 0F))) { maxRange = Math.Min(maxRange, w.Range + e.Range); AIHeroClient target = TargetSelector.GetTarget(maxRange, TargetSelector.DamageType.Physical); if (target != null) { actionQueue.EnqueueAction( comboQueue, () => shadows.CanCast, () => shadows.Cast(w.GetPrediction(target).CastPosition), () => !shadows.CanCast); actionQueue.EnqueueAction( comboQueue, () => w.Instance.ToggleState != 0, () => shadows.Combo(), () => true); actionQueue.EnqueueAction( comboQueue, () => shadows.CanSwitch && target.Distance(shadows.Instance.Position) <= player.AttackRange, () => shadows.Switch(), () => !shadows.CanSwitch || target.Distance(shadows.Instance.Position) > player.AttackRange || !w.IsReady()); actionQueue.EnqueueAction( comboQueue, () => player.Distance(target) <= Orbwalking.GetRealAutoAttackRange(target), () => EloBuddy.Player.IssueOrder(GameObjectOrder.AttackUnit, target), () => target.IsDead || target.IsZombie || player.Distance(target) > Orbwalking.GetRealAutoAttackRange(target) || checkAutoAttack.Status); return; } } if (q.UseOnCombo && q.IsReady() && player.Mana > q.ManaCost) { maxRange = Math.Min(maxRange, q.Range); AIHeroClient target = TargetSelector.GetTarget(maxRange, q.DamageType); PredictionOutput predictionOutput = q.GetPrediction(target); if (predictionOutput.Hitchance >= HitChance.Medium) { q.Cast(predictionOutput.CastPosition); } } if (e.UseOnCombo && e.IsReady() && player.Mana > e.ManaCost) { maxRange = Math.Min(maxRange, e.Range); AIHeroClient target = TargetSelector.GetTarget(maxRange, e.DamageType); if (target != null) { actionQueue.EnqueueAction(comboQueue, () => e.IsReady(), () => e.Cast(), () => true); return; } } if (w.UseOnCombo && w.IsReady() && shadows.CanSwitch) { List <Obj_AI_Base> shadowList = shadows.GetShadows(); foreach (Obj_AI_Base objAiBase in shadowList) { AIHeroClient target = TargetSelector.GetTarget(2000F, TargetSelector.DamageType.Physical); if (target != null && player.Distance(target) > Orbwalking.GetRealAutoAttackRange(target) + 50F && objAiBase.Distance(target) < player.Distance(target)) { shadows.Switch(); } } } }
public void Harass() { List <Obj_AI_Base> shadows = GetShadows(); if (!shadows.Any() || (!q.UseOnHarass && !e.UseOnHarass) || (!q.IsReady() && !e.IsReady())) { return; } List <Obj_AI_Hero> blackList = zedMainMenu.GetBlockList(BlockListType.Harass); foreach (Obj_AI_Base objAiBase in shadows) { if (((q.UseOnHarass && !q.IsReady()) || !q.UseOnHarass) && ((e.UseOnHarass && !e.IsReady()) || !e.UseOnHarass)) { break; } if (q.UseOnHarass && q.IsReady()) { Obj_AI_Hero target = TargetSelector.GetTarget( q.Range, q.DamageType, true, blackList, objAiBase.Position); if (target != null) { PredictionInput predictionInput = new PredictionInput(); predictionInput.Range = q.Range; predictionInput.RangeCheckFrom = objAiBase.Position; predictionInput.From = objAiBase.Position; predictionInput.Delay = q.Delay; predictionInput.Speed = q.Speed; predictionInput.Unit = target; predictionInput.Type = SkillshotType.SkillshotLine; predictionInput.Collision = false; PredictionOutput predictionOutput = Prediction.GetPrediction(predictionInput); if (predictionOutput.Hitchance >= HitChance.High) { q.Cast(predictionOutput.CastPosition); } } } if (e.UseOnHarass && e.UseOnHarass) { Obj_AI_Hero target = TargetSelector.GetTarget(e.Range, e.DamageType, true, blackList, objAiBase.Position); if (target != null) { e.Cast(); } } } }