private static void LaneClear() { if (LaneClearOption.HasEnouguMana) { if (LaneClearOption.UseQ && Q.IsReady() && AxeCount < 2 && !Orbwalker.CanAttack())// TODO !Me.Spellbook.IsAutoAttacking) { var minions = MinionManager.GetMinions(Me.Position, 600); if (minions.Any() && minions.Count >= 2) { Q.Cast(); } } if (LaneClearOption.UseE && E.IsReady()) { var minions = MinionManager.GetMinions(Me.Position, E.Range); if (minions.Any()) { var eFarm = E.GetLineFarmLocation(minions, E.Width); if (eFarm.MinionsHit >= LaneClearOption.GetSlider("LaneClearECount")) { E.Cast(eFarm.Position); } } } } }
private static void LaneClear() { if (LaneClearOption.HasEnouguMana) { var minions = MinionManager.GetMinions(Me.Position, E.Range); if (minions.Any()) { if (LaneClearOption.UseE && E.IsReady()) { var eFarm = MinionManager.GetBestCircularFarmLocation(minions.Select(x => x.Position.To2D()).ToList(), E.Width, E.Range); if (eFarm.MinionsHit >= LaneClearOption.GetSlider("LaneClearECount")) { E.Cast(eFarm.Position); } } if (LaneClearOption.UseQ && Q.IsReady() && minions.Count > 2) { Q.Cast(minions.FirstOrDefault()); } } } }
private static void LaneClear() { if (LaneClearOption.HasEnouguMana()) { if (LaneClearOption.UseQ && Q.IsReady()) { var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(Q.Range) && x.IsMinion()).ToList(); if (minions.Any()) { var qFarm = Q.GetLineFarmLocation(minions, 60); if (qFarm.MinionsHit >= LaneClearOption.GetSlider("LaneClearQCount").Value) { Q.Cast(qFarm.Position); } } } if (LaneClearOption.UseW && W.IsReady()) { var minions = GameObjects.EnemyMinions.Where( x => x.IsValidTarget(Me.AttackRange + Me.BoundingRadius + 80) && x.IsMinion()).ToList(); if (minions.Any()) { var wFarm = FarmPrediction.GetBestCircularFarmLocation(minions.Select(x => x.Position.ToVector2()).ToList(), Me.AttackRange + Me.BoundingRadius + 80, 280); if (LaneClearOption.GetBool("LaneClearWRed").Enabled&& wFarm.MinionsHit >= 3) { var min = minions.FirstOrDefault(x => x.Distance(wFarm.Position) <= 80); if (min != null) { HumanizerCardSelect.StartSelecting(HumanizerCards.Red); Orbwalker.ForceTarget = min; LastForcusTime = Variables.GameTimeTickCount; } } else if (LaneClearOption.GetBool("LaneClearWBlue").Enabled) { var min = minions.FirstOrDefault(x => x.Health < Me.GetSpellDamage(x, SpellSlot.W) + Me.GetAutoAttackDamage(x)); if (min != null && min.InAutoAttackRange()) { HumanizerCardSelect.StartSelecting(HumanizerCards.Blue); Orbwalker.ForceTarget = min; LastForcusTime = Variables.GameTimeTickCount; } } } } } }
private static void LaneClear() { if (LaneClearOption.HasEnouguMana) { if (LaneClearOption.UseQ && Q.IsReady()) { var qMinions = MinionManager.GetMinions(Me.Position, 1600f); if (qMinions.Any()) { var qFarm = MinionManager.GetBestLineFarmLocation(qMinions.Select(x => x.Position.To2D()).ToList(), Q.Width, 1600f); if (qFarm.MinionsHit >= LaneClearOption.GetSlider("LaneClearQCount")) { if (Q.IsCharging && qFarm.Position.DistanceToPlayer() <= Q.ChargedMaxRange) { Q.Cast(qFarm.Position, true); } else { if (qFarm.Position.DistanceToPlayer() <= Q.Range) { Q.Cast(qFarm.Position, true); } else { Q.StartCharging(); } } } } } if (Q.IsCharging) { return; } if (LaneClearOption.UseE && E.IsReady()) { var eMinions = MinionManager.GetMinions(Me.Position, E.Range); if (eMinions.Any()) { var eFarm = MinionManager.GetBestCircularFarmLocation(eMinions.Select(x => x.Position.To2D()).ToList(), E.Width, E.Range); if (eFarm.MinionsHit >= LaneClearOption.GetSlider("LaneClearECount")) { E.Cast(eFarm.Position); } } } } }
private static void LaneClear() { if (LaneClearOption.HasEnouguMana) { var minions = MinionManager.GetMinions(Me.Position, R.Range); if (minions.Any()) { if (LaneClearOption.UseR && R.IsReady() && LaneClearOption.GetSlider("LaneClearRLimit") >= GetRCount) { var rMinion = minions.FirstOrDefault(x => x.DistanceToPlayer() > Orbwalker.GetRealAutoAttackRange(Me)); if (rMinion != null && MinionHealthPrediction.GetHealthPrediction(rMinion, 250) > 0) { R.Cast(rMinion); } } if (LaneClearOption.UseE && 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 >= LaneClearOption.GetSlider("LaneClearECount")) { E.Cast(eFarm.Position); } } if (LaneClearOption.UseQ && Q.IsReady()) { var qMinion = MinionManager .GetMinions( Me.Position, Q.Range) .FirstOrDefault( x => x.Health < Q.GetDamage(x) && MinionHealthPrediction.GetHealthPrediction(x, 250) > 0 && x.Health > Me.GetAutoAttackDamage(x)); if (qMinion != null) { Q.Cast(qMinion); } } } } }
private static void LaneClear() { if (LaneClearOption.HasEnouguMana()) { if (LaneClearOption.UseQ && Q.IsReady()) { var qMinions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(1600f) && x.IsMinion()).ToList(); if (qMinions.Any()) { var qFarm = Q.GetLineFarmLocation(qMinions); if (qFarm.MinionsHit >= LaneClearOption.GetSlider("LaneClearQCount").Value) { if (Q.IsCharging) { if (qFarm.Position.DistanceToPlayer() <= Q.ChargedMaxRange) { Q.ShootChargedSpell(qFarm.Position); } } else { Q.StartCharging(); } } } } if (Q.IsCharging) { return; } if (LaneClearOption.UseE && E.IsReady()) { var eMinions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(E.Range) && x.IsMinion()).ToList(); if (eMinions.Any()) { var eFarm = E.GetCircularFarmLocation(eMinions); if (eFarm.MinionsHit >= LaneClearOption.GetSlider("LaneClearECount").Value) { E.Cast(eFarm.Position); } } } } }
private static void LaneClear() { if (LaneClearOption.HasEnouguMana()) { if (LaneClearOption.UseQ && Q.Ready) { var qMinions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(1600f) && x.IsMinion()).ToArray(); if (qMinions.Any()) { var qFarm = Q.GetSpellFarmPosition(qMinions); if (qFarm.HitCount >= LaneClearOption.GetSlider("LaneClearQCount").Value) { if (Q.IsCharging) { if (qFarm.CastPosition.DistanceToPlayer() <= Q.ChargedMaxRange) { Q.Cast(qFarm.CastPosition); } } else { Q.StartCharging(Game.CursorPos); } } } } if (Q.IsCharging) { return; } if (LaneClearOption.UseE && E.Ready) { var eMinions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(E.Range) && x.IsMinion()).ToArray(); if (eMinions.Any()) { var eFarm = E.GetSpellFarmPosition(eMinions); if (eFarm.HitCount >= LaneClearOption.GetSlider("LaneClearECount").Value) { E.Cast(eFarm.CastPosition); } } } } }
private static void LaneClear() { if (LaneClearOption.HasEnouguMana) { if (LaneClearOption.UseQ && Q.IsReady()) { var minions = MinionManager.GetMinions(Me.Position, Q.Range); if (minions.Any()) { var QFram = MinionManager.GetBestCircularFarmLocation(minions.Select(x => x.Position.To2D()).ToList(), Q.Width, Q.Range); if (QFram.MinionsHit >= LaneClearOption.GetSlider("LaneClearQCount")) { Q.Cast(QFram.Position, true); } } } if (LaneClearOption.UseE && E.IsReady()) { var eMinions = MinionManager.GetMinions(Me.Position, E.Range); if (eMinions.Any()) { if (eMinions.Count >= LaneClearOption.GetSlider("LaneClearECount")) { E.Cast(); } } } if (LaneClearOption.UseR && R.IsReady() && R.Instance.CurrentCharge >= LaneClearOption.GetSlider("LaneClearRLimit")) { var rMinions = MinionManager.GetMinions(Me.Position, R.Range); if (rMinions.Any()) { var RFarm = MinionManager.GetBestLineFarmLocation(rMinions.Select(x => x.Position.To2D()).ToList(), R.Width, R.Range); if (RFarm.MinionsHit >= LaneClearOption.GetSlider("LaneClearRCount")) { R.Cast(RFarm.Position, true); } } } } }
private static void LaneClear() { if (LaneClearOption.HasEnouguMana()) { var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(R.Range) && x.IsMinion()).ToArray(); if (minions.Any()) { if (LaneClearOption.UseR && R.Ready && LaneClearOption.GetSlider("LaneClearRLimit").Value >= GetRCount) { var rMinion = minions.FirstOrDefault(x => x.DistanceToPlayer() > Me.AttackRange + Me.BoundingRadius); if (rMinion != null && rMinion.IsValidTarget(R.Range)) { R.Cast(rMinion); } } if (LaneClearOption.UseE && E.Ready) { var eMinions = minions.Where(x => x.IsValidTarget(E.Range)).ToArray(); var eFarm = E.GetSpellFarmPosition(eMinions); if (eFarm.HitCount >= LaneClearOption.GetSlider("LaneClearECount").Value) { E.Cast(eFarm.CastPosition); } } if (LaneClearOption.UseQ && Q.Ready) { var qMinion = minions.Where(x => x.IsValidTarget(Q.Range)) .FirstOrDefault( x => x.Health <Me.GetSpellDamage(x, SpellSlot.Q) && x.Health> Me.GetAutoAttackDamage(x)); if (qMinion != null && qMinion.IsValidTarget(Q.Range)) { Q.Cast(qMinion); } } } } }
private static void LaneClear() { if (LaneClearOption.HasEnouguMana() && LaneClearOption.UseQ && Q.IsReady()) { var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(Q.Range) && x.IsMinion()).ToList(); if (minions.Any()) { var qFarm = Q.GetLineFarmLocation(minions); if (qFarm.MinionsHit >= LaneClearOption.GetSlider("LaneClearQCount").Value) { Q.Cast(qFarm.Position); } } } }
private static void LaneClear() { if (LaneClearOption.HasEnouguMana()) { if (LaneClearOption.UseQ && Q.IsReady()) { var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(Q.Range) && x.IsMinion()).ToList(); if (minions.Any()) { var qFarm = Q.GetCircularFarmLocation(minions); if (qFarm.MinionsHit >= LaneClearOption.GetSlider("LaneClearQCount").Value) { Q.Cast(qFarm.Position); } } } if (LaneClearOption.UseE && E.IsReady()) { var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(E.Range) && x.IsMinion()).ToList(); if (minions.Any() && minions.Count >= LaneClearOption.GetSlider("LaneClearECount").Value) { E.Cast(Me.PreviousPosition); } } if (LaneClearOption.UseR && R.IsReady() && R.Ammo >= LaneClearOption.GetSlider("LaneClearRLimit").Value) { var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(R.Range) && x.IsMinion()).ToList(); if (minions.Any()) { var rFarm = R.GetLineFarmLocation(minions); if (rFarm.MinionsHit >= LaneClearOption.GetSlider("LaneClearRCount").Value) { R.Cast(rFarm.Position); } } } } }
private static void LaneClear() { if (LaneClearOption.HasEnouguMana()) { if (LaneClearOption.UseQ && Q.Ready) { var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(Q.Range) && x.IsMinion()).ToArray(); if (minions.Any()) { var qFarm = Q.GetSpellFarmPosition(minions); if (qFarm.HitCount >= LaneClearOption.GetSlider("LaneClearQCount").Value) { Q.Cast(qFarm.CastPosition); } } } if (LaneClearOption.UseE && E.Ready) { var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(E.Range) && x.IsMinion()).ToArray(); if (minions.Any() && minions.Length >= LaneClearOption.GetSlider("LaneClearECount").Value) { E.Cast(); } } if (LaneClearOption.UseR && R.Ready && R.GetBasicSpell().Ammo >= LaneClearOption.GetSlider("LaneClearRLimit").Value) { var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(R.Range) && x.IsMinion()).ToArray(); if (minions.Any()) { var rFarm = R.GetSpellFarmPosition(minions); if (rFarm.HitCount >= LaneClearOption.GetSlider("LaneClearRCount").Value) { R.Cast(rFarm.CastPosition); } } } } }
private static void LaneClear() { if (LaneClearOption.HasEnouguMana) { if (LaneClearOption.UseQ && Q.IsReady()) { var _Minions = MinionManager.GetMinions(Me.Position, Q.Range); if (_Minions.Any()) { var _FarmPredictionQ = MinionManager.GetBestLineFarmLocation(_Minions.Select(x => x.Position.To2D()).ToList(), Q.Width, Q.Range); if (_FarmPredictionQ.MinionsHit >= LaneClearOption.GetSlider("LaneClearQCount")) { Q.Cast(_FarmPredictionQ.Position, true); } } } } }
private static void LaneClear() { if (LaneClearOption.HasEnouguMana) { if (LaneClearOption.UseQ && Q.IsReady()) { var minions = MinionManager.GetMinions(Me.Position, Q.Range); if (minions.Any()) { if (minions.Count >= LaneClearOption.GetSlider("LaneClearQCount")) { Q.Cast(Game.CursorPosition); } } } } }
private static void LaneClear() { if (LaneClearOption.HasEnouguMana()) { var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(E.Range) && x.IsMinion()).ToList(); if (minions.Any()) { if (LaneClearOption.UseE && E.IsReady()) { var eFarm = E.GetCircularFarmLocation(minions); if (eFarm.MinionsHit >= LaneClearOption.GetSlider("LaneClearECount").Value) { E.Cast(eFarm.Position); } } } } }
private static void LaneClear() { if (LaneClearOption.HasEnouguMana()) { if (LaneClearOption.UseE && E.IsReady()) { var eKillMinionsCount = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(E.Range) && x.IsMinion()) .Count( x => x.DistanceToPlayer() <= E.Range && x.Buffs.Any(b => b.Name.ToLower() == "twitchdeadlyvenom") && x.Health < GetRealEDamage(x)); if (eKillMinionsCount >= LaneClearOption.GetSlider("LaneClearECount").Value) { E.Cast(); } } } }
private static void LaneClear() { if (LaneClearOption.HasEnouguMana) { if (LaneClearOption.UseE && E.IsReady()) { var eKillMinionsCount = MinionManager.GetMinions(Me.Position, E.Range) .Count( x => x.DistanceToPlayer() <= E.Range && x.HasBuff("TwitchDeadlyVenom") && x.Health < E.GetDamage(x)); if (eKillMinionsCount >= LaneClearOption.GetSlider("LaneClearECount")) { E.Cast(); } } } }
private static void LaneClear() { if (LaneClearOption.HasEnouguMana) { if (LaneClearOption.UseW && W.IsReady()) { var minions = MinionManager.GetMinions(Me.Position, W.Range); if (minions.Any()) { var wFarm = MinionManager.GetBestCircularFarmLocation(minions.Select(x => x.Position.To2D()).ToList(), W.Width, W.Range); if (wFarm.MinionsHit >= LaneClearOption.GetSlider("LaneClearWCount")) { W.Cast(wFarm.Position, true); } } } } }
private static void LaneClear() { if (LaneClearOption.HasEnouguMana()) { if (LaneClearOption.UseW && W.Ready) { var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(W.Range) && x.IsMinion()).ToArray(); if (minions.Any()) { var wFarm = W.GetSpellFarmPosition(minions); if (wFarm.HitCount >= LaneClearOption.GetSlider("LaneClearWCount").Value) { W.Cast(wFarm.CastPosition); } } } } }
private static void LaneClear() { if (LaneClearOption.HasEnouguMana) { if (LaneClearOption.UseQ && Q.IsReady()) { var minions = MinionManager.GetMinions(Me.Position, Q.Range); if (minions.Any()) { var QFarm = MinionManager.GetBestCircularFarmLocation(minions.Select(x => x.Position.To2D()).ToList(), Q.Width, Q.Range); if (QFarm.MinionsHit >= LaneClearOption.GetSlider("LaneClearQCount")) { Q.Cast(QFarm.Position); } } } } }
private static void LaneClear() { if (LaneClearOption.HasEnouguMana) { var minions = MinionManager.GetMinions(Me.Position, Q.Range); if (minions.Any()) { if (LaneClearOption.UseE && E.IsReady()) { var eMinionsCount = MinionManager .GetMinions(Me.Position, E.Range) .Count(x => x.HasBuff("kalistaexpungemarker") && x.Health < GetRealEDamage(x)); if (eMinionsCount >= LaneClearOption.GetSlider("LaneClearECount")) { E.Cast(true); } } } } }
private static void PreAttack(object sender, PreAttackEventArgs Args) { if (Args.Target == null || Args.Target.IsDead || !Args.Target.IsValidTarget() || Args.Target.Health <= 0) { return; } switch (Args.Target.Type) { case GameObjectType.obj_AI_Hero: { var target = Args.Target as Obj_AI_Hero; if (target != null && target.IsValidTarget()) { if (Orbwalker.Mode == OrbwalkingMode.Combo) { if (ComboOption.UseQ && Q.Ready) { if (Me.HasBuff("JinxQ")) { if (target.Health < Me.GetAutoAttackDamage(target) * 3 && target.DistanceToPlayer() <= Q.Range + 60) { Q.Cast(); } else if (Me.Mana < (rCoolDown == -1 ? 100 : (rCoolDown > 10 ? 130 : 150))) { Q.Cast(); } else if (target.IsValidTarget(Q.Range)) { Q.Cast(); } } else { if (target.CountEnemyHeroesInRange(150) >= 2 && Me.Mana > R.GetBasicSpell().Cost + Q.GetBasicSpell().Cost * 2 + W.GetBasicSpell().Cost&& target.DistanceToPlayer() > Q.Range) { Q.Cast(); } } } } else if (Orbwalker.Mode == OrbwalkingMode.Mixed || Orbwalker.Mode == OrbwalkingMode.Laneclear && MyManaManager.SpellHarass) { if (HarassOption.HasEnouguMana()) { if (HarassOption.UseQ && Q.Ready) { if (Me.HasBuff("JinxQ")) { if (target.DistanceToPlayer() >= bigGunRange) { Q.Cast(); } } else { if (target.CountEnemyHeroesInRange(150) >= 2 && Me.Mana > R.GetBasicSpell().Cost + Q.GetBasicSpell().Cost * 2 + W.GetBasicSpell().Cost&& target.DistanceToPlayer() > Q.Range) { Q.Cast(); } } } } else { if (Me.HasBuff("JinxQ") && Q.Ready) { Q.Cast(); } } } } } break; case GameObjectType.obj_AI_Minion: { if (Args.Target.IsMinion()) { if (LaneClearOption.HasEnouguMana() && Q.Ready && LaneClearOption.UseQ) { var min = Args.Target as Obj_AI_Base; var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(bigGunRange) && x.IsMinion()) .ToArray(); if (minions.Any() && min != null) { foreach (var minion in minions.Where(x => x.NetworkId != min.NetworkId)) { var count = ObjectManager.Get <Obj_AI_Minion>().Count(x => x.Distance(minion) <= 150); if (minion.DistanceToPlayer() <= bigGunRange) { if (Me.HasBuff("JinxQ")) { if (LaneClearOption.GetSlider("LaneClearQCount").Value > count) { Q.Cast(); } else if (min.Health > Me.GetAutoAttackDamage(min) * 1.1f) { Q.Cast(); } } else if (!Me.HasBuff("JinxQ")) { if (LaneClearOption.GetSlider("LaneClearQCount").Value <= count) { Q.Cast(); } else if (min.Health < Me.GetAutoAttackDamage(min) * 1.1f && min.DistanceToPlayer() > Q.Range) { Q.Cast(); } } } } if (minions.Length <= 2 && Me.HasBuff("JinxQ")) { Q.Cast(); } } } else { if (Me.HasBuff("JinxQ") && Q.Ready) { Q.Cast(); } } } } break; } }
private static void OnAction(object sender, OrbwalkerActionArgs Args) { if (Args.Type != OrbwalkerType.BeforeAttack) { return; } if (Args.Target == null || Args.Target.IsDead || !Args.Target.IsValidTarget() || Args.Target.Health <= 0) { return; } switch (Args.Target.Type) { case GameObjectType.AIHeroClient: { var target = (AIHeroClient)Args.Target; if (target != null && target.IsValidTarget()) { if (Orbwalker.ActiveMode == OrbwalkerMode.Combo) { if (ComboOption.UseQ && Q.IsReady()) { if (Me.HasBuff("JinxQ")) { if (target.Health < Me.GetAutoAttackDamage(target) * 3 && target.DistanceToPlayer() <= Q.Range + 60) { Q.Cast(); } else if (Me.Mana < (rCoolDown == -1 ? 100 : (rCoolDown > 10 ? 130 : 150))) { Q.Cast(); } else if (target.IsValidTarget(Q.Range)) { Q.Cast(); } } else { if (target.CountEnemyHeroesInRange(150) >= 2 && Me.Mana > R.Mana + Q.Mana * 2 + W.Mana && target.DistanceToPlayer() > Q.Range) { Q.Cast(); } } } } else if (Orbwalker.ActiveMode == OrbwalkerMode.Harass || Orbwalker.ActiveMode == OrbwalkerMode.LaneClear && MyManaManager.SpellHarass) { if (HarassOption.HasEnouguMana()) { if (HarassOption.UseQ && Q.IsReady()) { if (Me.HasBuff("JinxQ")) { if (target.DistanceToPlayer() >= bigGunRange) { Q.Cast(); } } else { if (target.CountEnemyHeroesInRange(150) >= 2 && Me.Mana > R.Mana + Q.Mana * 2 + W.Mana && target.DistanceToPlayer() > Q.Range) { Q.Cast(); } } } } else { if (Me.HasBuff("JinxQ") && Q.IsReady()) { Q.Cast(); } } } } } break; case GameObjectType.AIMinionClient: { var minion = (AIMinionClient)Args.Target; if (minion != null && minion.IsMinion()) { if (LaneClearOption.HasEnouguMana() && Q.IsReady() && LaneClearOption.UseQ) { var min = (AIBaseClient)Args.Target; var minions = GameObjects.EnemyMinions.Where(x => x.IsValidTarget(bigGunRange) && x.IsMinion()) .ToList(); if (minions.Any() && min != null) { foreach (var m in minions.Where(x => x.NetworkId != min.NetworkId)) { var count = ObjectManager.Get <AIMinionClient>().Count(x => x.Distance(m) <= 150); if (m.DistanceToPlayer() <= bigGunRange) { if (Me.HasBuff("JinxQ")) { if (LaneClearOption.GetSlider("LaneClearQCount").Value > count) { Q.Cast(); } else if (min.Health > Me.GetAutoAttackDamage(min) * 1.1f) { Q.Cast(); } } else if (!Me.HasBuff("JinxQ")) { if (LaneClearOption.GetSlider("LaneClearQCount").Value <= count) { Q.Cast(); } else if (min.Health < Me.GetAutoAttackDamage(min) * 1.1f && min.DistanceToPlayer() > Q.Range) { Q.Cast(); } } } } if (minions.Count <= 2 && Me.HasBuff("JinxQ")) { Q.Cast(); } } } else { if (Me.HasBuff("JinxQ") && Q.IsReady()) { Q.Cast(); } } } } break; } }
private static void BeforeAttack(BeforeAttackEventArgs Args) { if (!Args.Unit.IsMe || !Q.IsReady()) { return; } if (isComboMode) { if (ComboOption.UseQ) { var target = Args.Target as AIHeroClient; if (target != null && !target.IsDead && !target.IsZombie) { if (Me.HasBuff("JinxQ")) { if (target.Health < Me.GetAutoAttackDamage(target) * 3 && target.DistanceToPlayer() <= Q.Range + 60) { Q.Cast(); } else if (Me.Mana < (rCoolDown == -1 ? 100 : (rCoolDown > 10 ? 130 : 150))) { Q.Cast(); } else if (target.IsValidTarget(Q.Range)) { Q.Cast(); } } else { if (target.CountEnemiesInRange(150) >= 2 && Me.Mana > R.ManaCost + Q.ManaCost * 2 + W.ManaCost && target.DistanceToPlayer() > Q.Range) { Q.Cast(); } } } } } else { if ((isFarmMode && MyManaManager.SpellHarass) || isHarassMode) { if (HarassOption.HasEnouguMana) { if (HarassOption.UseQ) { var target = Args.Target as AIHeroClient; if (target != null && !target.IsDead && !target.IsZombie) { if (Me.HasBuff("JinxQ")) { if (target.DistanceToPlayer() >= bigGunRange) { Q.Cast(); } } else { if (target.CountEnemiesInRange(150) >= 2 && Me.Mana > R.ManaCost + Q.ManaCost * 2 + W.ManaCost && target.DistanceToPlayer() > Q.Range) { Q.Cast(); } } } } } else { if (Me.HasBuff("JinxQ") && Q.IsReady()) { Q.Cast(); } } } if (isLaneClearMode) { if (LaneClearOption.HasEnouguMana) { if (LaneClearOption.UseQ) { var min = Args.Target as Obj_AI_Base; var minions = MinionManager.GetMinions(Me.Position, bigGunRange); if (minions.Any() && min != null) { foreach (var minion in minions.Where(x => x.NetworkId != min.NetworkId)) { var count = ObjectManager.Get <Obj_AI_Minion>().Count(x => x.Distance(minion) <= 150); if (minion.DistanceToPlayer() <= bigGunRange) { if (Me.HasBuff("JinxQ")) { if (LaneClearOption.GetSlider("LaneClearQCount") > count) { Q.Cast(); } else if (min.Health > Me.GetAutoAttackDamage(min) * 1.1f) { Q.Cast(); } } else if (!Me.HasBuff("JinxQ")) { if (LaneClearOption.GetSlider("LaneClearQCount") <= count) { Q.Cast(); } else if (min.Health < Me.GetAutoAttackDamage(min) * 1.1f && min.DistanceToPlayer() > Q.Range) { Q.Cast(); } } } } if (minions.Count <= 2 && Me.HasBuff("JinxQ")) { Q.Cast(); } } } } else { if (Me.HasBuff("JinxQ") && Q.IsReady()) { Q.Cast(); } } } } }