protected override void Killsteal() { if (Q.IsReady() && RootMenu["killsteal"]["useq"]) { var bestTarget = Extensions.GetBestKillableHero(Q, DamageType.Magical, false); if (bestTarget != null && Player.GetSpellDamage(bestTarget, SpellSlot.Q) >= bestTarget.Health && bestTarget.IsValidTarget(Q.Range)) { Q.Cast(); } } if (W.IsReady() && RootMenu["killsteal"]["usew"]) { var bestTarget = Extensions.GetBestKillableHero(W, DamageType.Magical, false); if (bestTarget != null && Player.GetSpellDamage(bestTarget, SpellSlot.W) >= bestTarget.Health && bestTarget.IsValidTarget(W.Range)) { W.CastOnUnit(bestTarget); } } }
protected override void Killsteal() { if (Q.IsReady() && RootMenu["killsteal"]["ksq"]) { var bestTarget = Extensions.GetBestKillableHero(Q, DamageType.Magical); if (bestTarget != null && !bestTarget.IsValidTarget(Player.GetRealAutoAttackRange(bestTarget)) && Player.GetSpellDamage(bestTarget, SpellSlot.Q) > bestTarget.Health) { Q.Cast(bestTarget); } } if (R.IsReady() && RootMenu["killsteal"]["ksr"]) { var bestTarget = Extensions.GetBestKillableHero(R, DamageType.Magical); if (bestTarget != null && !bestTarget.IsValidTarget(Player.GetRealAutoAttackRange(bestTarget)) && Player.GetSpellDamage(bestTarget, SpellSlot.R) > bestTarget.Health) { R.Cast(); } } }
protected override void Combo() { bool useQ = RootMenu["combo"]["useq"]; bool useW = RootMenu["combo"]["usew"]; bool useE = RootMenu["combo"]["usee"]; bool useR = RootMenu["combo"]["user"]; var target = Extensions.GetBestEnemyHeroTargetInRange(R.Range); if (!target.IsValidTarget()) { return; } if (target.IsValidTarget(Q.Range) && useQ) { Q.CastOnUnit(target); DelayAction.Add(100, () => { E.Cast(); }); } if (ObjectManager.Player.HasBuffOfType(BuffType.Slow)) { E.Cast(); } if (ObjectManager.Player.MaxHealth - ObjectManager.Player.Health > 25 * ObjectManager.Player.Level) { W.Cast(); } var bestTarget = Extensions.GetBestKillableHero(Q, DamageType.Magical, false); if (bestTarget != null && Player.GetSpellDamage(bestTarget, SpellSlot.R) >= bestTarget.Health && bestTarget.IsValidTarget(R.Range) && R.IsReady()) { R.Cast(bestTarget); } if (bestTarget != null && Player.GetSpellDamage(bestTarget, SpellSlot.R) + Player.GetSpellDamage(bestTarget, SpellSlot.Q) >= bestTarget.Health && bestTarget.IsValidTarget(Q.Range) && R.IsReady()) { R.Cast(bestTarget); DelayAction.Add(100, () => { Q.Cast(); }); } }
protected override void Killsteal() { if (Q.IsReady() && RootMenu["ks"]["ksq"]) { var bestTarget = Extensions.GetBestKillableHero(Q, DamageType.Magical, false); if (bestTarget != null && Player.GetSpellDamage(bestTarget, SpellSlot.Q) >= bestTarget.Health && bestTarget.IsValidTarget(Q.Range)) { Q.Cast(bestTarget); } } if (W.IsReady() && RootMenu["ks"]["ksw"]) { var bestTarget = Extensions.GetBestKillableHero(W, DamageType.Magical, false); if (bestTarget != null && Player.GetSpellDamage(bestTarget, SpellSlot.W) >= bestTarget.Health && bestTarget.IsValidTarget(W.Range)) { W.Cast(bestTarget); } } if (E.IsReady() && RootMenu["ks"]["kse"]) { var bestTarget = Extensions.GetBestKillableHero(E, DamageType.Magical, false); if (bestTarget != null && Player.GetSpellDamage(bestTarget, SpellSlot.E) >= bestTarget.Health && bestTarget.IsValidTarget(E.Range)) { E.CastOnUnit(bestTarget); } } if (R.IsReady() && RootMenu["ks"]["ksr"]) { var bestTarget = Extensions.GetBestKillableHero(R, DamageType.Magical, false); if (bestTarget != null && Player.GetSpellDamage(bestTarget, SpellSlot.R) >= bestTarget.Health && bestTarget.IsValidTarget(R.Range)) { if (bestTarget.CountEnemyHeroesInRange(750) >= RootMenu["ks"]["bounce"].GetValue <MenuSlider>().Value) { R.CastOnUnit(bestTarget); } } } }
protected override void Killsteal() { if (Q.IsReady() && RootMenu["killsteal"]["ksq"]) { var bestTarget = Extensions.GetBestKillableHero(Q, DamageType.Magical, false); if (bestTarget != null && Player.GetSpellDamage(bestTarget, SpellSlot.Q) >= bestTarget.Health && bestTarget.IsValidTarget(Q.Range)) { foreach (var pixs in GameObjects.AllGameObjects) { if (pixs.Name == "RobotBuddy" && pixs.IsValid && pixs != null && !pixs.IsDead && pixs.Team == Player.Team) { if (pixs.Distance(bestTarget) < Player.Distance(bestTarget)) { Q.From = pixs.Position; var pred = Q.GetPrediction(bestTarget); if (pred.Hitchance >= HitChance.High) { Q.Cast(pred.CastPosition, true); } } if (pixs.Distance(bestTarget) > Player.Distance(bestTarget)) { Q.From = Player.Position; var pred = Q.GetPrediction(bestTarget); if (pred.Hitchance >= HitChance.High) { Q.Cast(pred.CastPosition, true); } } } } } } if (E.IsReady() && RootMenu["killsteal"]["kse"]) { var bestTarget = Extensions.GetBestKillableHero(E, DamageType.Magical, false); if (bestTarget != null && Player.GetSpellDamage(bestTarget, SpellSlot.E) >= bestTarget.Health && bestTarget.IsValidTarget(E.Range)) { E.CastOnUnit(bestTarget); } } if (Q.IsReady() && RootMenu["killsteal"]["kseq"]) { var bestTarget = Extensions.GetBestKillableHeroEQ(DamageType.Magical, false); if (bestTarget != null && Player.GetSpellDamage(bestTarget, SpellSlot.Q) >= bestTarget.Health && bestTarget.IsValidTarget(E.Range + Q.Range) && bestTarget.Distance(Player) > Q.Range) { foreach (var ally in GameObjects.AllyHeroes .Where(x => x.IsValidTarget(E.Range, true) && x != null && x.Distance(Player) < E.Range && x.Distance(bestTarget) < Q.Range) .OrderBy(x => x.Distance(bestTarget))) { E.CastOnUnit(ally); } foreach (var minion in GameObjects.Minions .Where(x => x.IsValidTarget(E.Range) && x != null && x.Distance(Player) < E.Range && x.Distance(bestTarget) < Q.Range) .OrderBy(x => x.Distance(bestTarget))) { E.CastOnUnit(minion); } foreach (var enemy in GameObjects.EnemyHeroes .Where(x => x.IsValidTarget(E.Range) && x != null && x.Distance(Player) < E.Range && x.Distance(bestTarget) < Q.Range) .OrderBy(x => x.Distance(bestTarget))) { E.CastOnUnit(enemy); } foreach (var pixs in GameObjects.AllGameObjects) { if (pixs.Name == "RobotBuddy" && pixs.IsValid && pixs != null && !pixs.IsDead && pixs.Team == Player.Team) { foreach (var pix in GameObjects.AllyHeroes) { if (pix.IsValidTarget(1800, true) && pix != null && pix.Distance(Player) < 1800 && pix.HasBuff("lulufaerieattackaid") && pix.Distance(bestTarget) < Q.Range) { Q.From = pix.Position; var pred = Q.GetPrediction(bestTarget); if (pred.Hitchance >= HitChance.High) { Q.Cast(pred.CastPosition, true); } } } foreach (var pix in GameObjects.EnemyHeroes) { if (pix.IsValidTarget(1800) && pix != null && pix.Distance(Player) < 1800 && pix.HasBuff("lulufaerieburn") && pix.Distance(bestTarget) < Q.Range) { Q.From = pix.Position; var pred = Q.GetPrediction(bestTarget); if (pred.Hitchance >= HitChance.High) { Q.Cast(pred.CastPosition, true); } } } foreach (var pix in GameObjects.EnemyMinions) { if (pix.IsValidTarget(1800) && pix != null && pix.Distance(Player) < 1800 && (pix.HasBuff("lulufaerieburn") || pix.HasBuff("lulufaerieattackaid") || pix.HasBuff("luluevision"))) { Q.From = pix.Position; var pred = Q.GetPrediction(bestTarget); if (pred.Hitchance >= HitChance.High) { Q.Cast(pred.CastPosition, true); } } } } } } } }