private static void Obj_AI_Base_OnProcessSpellCast(Obj_AI_Base hero, GameObjectProcessSpellCastEventArgs args) { if (ShacoClone) { var clone = ObjectManager.Get <Obj_AI_Minion>().FirstOrDefault(m => m.Name == player.Name && !m.IsMe); if (args == null || clone == null) { return; } if (hero.NetworkId != clone.NetworkId) { return; } LastAATick = Core.GameTickCount; } if (args == null || hero == null) { return; } if (MiscMenu["usercc"].Cast <CheckBox>().CurrentValue&& hero is AIHeroClient && hero.IsEnemy && _player.Distance(hero) < Q.Range && isDangerousSpell( args.SData.Name, args.Target as AIHeroClient, hero, args.End, float.MaxValue)) { R2.Cast(); } if (hero.IsMe && args.SData.Name == "JackInTheBox") { lastBox = System.Environment.TickCount; } }
private static void PermaActive(EventArgs args) { if (Menu.Config.Item("ks.q").IsActive()) { foreach (var enemy in HeroManager.Enemies.Where(e => Q.CanCast(e) && Q.IsKillable(e))) { Q.Cast(enemy); return; } } if (Menu.Config.Item("ks.r").IsActive()) { var r2 = Player.HasBuff("corkimissilebarragecounterbig"); if (r2) { foreach (var enemy in HeroManager.Enemies.Where(e => R.CanCast(e) && R.IsKillable(e))) { R.Cast(enemy); return; } } else { foreach (var enemy in HeroManager.Enemies.Where(e => R2.CanCast(e) && R2.IsKillable(e))) { R2.Cast(enemy); return; } } } }
private void FlashStunRawr() { if (!Flash_Ready()) { Combo(); } var target = TargetSelector.GetTarget(1000, TargetSelector.DamageType.Magical); if (!FlashStunCondition(target)) { return; } var pred = R2.GetPrediction(target, true); if (Player.Distance(target) > 600) { Player.Spellbook.CastSpell(_flashSlot, pred.CastPosition); if (StunCount() == 3) { E.Cast(packets()); } Utility.DelayAction.Add(50, () => R2.Cast(pred.CastPosition, packets())); Utility.DelayAction.Add(100, () => W.Cast(pred.CastPosition, packets())); } }
private static void KS() { var targets = TargetSelector.GetTargets(R.IsReady() ? 750 : 500); if (targets == null) { return; } foreach (var target in targets) { if (target == null) { return; } if (target.Health <= Q.GetDamage(target) && Q.IsReady() && !Player.IsDashing() && target.IsValidTarget(500)) { Q.Cast(target); } if (target.Health <= R.GetDamage(target) && R.IsReady() && target.IsValidTarget(R.Name == "AkaliRb" ? R2.Range : R.Range)) { if (R.Name == "AkaliRb") { R2.Cast(target); } else { R2.Cast(target); } } } }
private static void ForceSkill() { if (QTarget == null || !QTarget.IsValidTarget()) { return; } if (forceR && R1.Name == IsFirstR) { Player.CastSpell(SpellSlot.R); return; } if (forceQ && QTarget != null && QTarget.IsValidTarget(E.Range + myHero.BoundingRadius + 70) && Q.IsReady()) { Player.CastSpell(SpellSlot.Q, ((Obj_AI_Base)QTarget).ServerPosition); } if (forceW) { W.Cast(); } if (forceR2 && R2.Name == IsSecondR) { var target = TargetSelector.SelectedTarget; if (target == null || !target.IsValidTarget()) { target = TargetSelector.GetTarget(450 + myHero.AttackRange + 170, DamageType.Physical); } if (target == null || !target.IsValidTarget()) { return; } R2.Cast(TargetSelector.SelectedTarget); } }
private static void KillStealLogic() { foreach (var e in EntityManager.Heroes.Enemies.Where(e => !e.IsZombie && !e.HasBuff("KindredrNoDeathBuff") && !e.HasBuff("Undying Rage") && !e.HasBuff("JudicatorIntervention") && e.IsValidTarget())) { if (Q.IsReady() && KillStealQ) { if (myHero.HasBuff("RivenFengShuiEngine")) { if (e.Distance(myHero.ServerPosition) < myHero.AttackRange + myHero.BoundingRadius + 50 && myHero.GetSpellDamage(e, SpellSlot.Q) > e.Health + e.HPRegenRate) { Q.Cast(e.Position); } } else if (!myHero.HasBuff("RivenFengShuiEngine")) { if (e.Distance(myHero.ServerPosition) < myHero.AttackRange + myHero.BoundingRadius && myHero.GetSpellDamage(e, SpellSlot.Q) > e.Health + e.HPRegenRate) { Q.Cast(e.Position); } } } if (W.IsReady() && KillStealW) { if (e.IsValidTarget(W.Range) && myHero.GetSpellDamage(e, SpellSlot.W) > e.Health + e.HPRegenRate) { W.Cast(); } } if (R1.IsReady() && KillStealR) { if (myHero.HasBuff("RivenWindScarReady")) { if (E.IsReady() && KillStealE) { if (myHero.ServerPosition.CountEnemiesInRange(R2.Range + E.Range) < 3 && myHero.HealthPercent > 50) { if (Rdame(e, e.Health) > e.Health + e.HPRegenRate && e.IsValidTarget(R2.Range + E.Range - 100)) { R1.Cast(); E.Cast(e.Position); Core.DelayAction(() => { R2.Cast(e); }, 350); } } } else { if (Rdame(e, e.Health) > e.Health + e.HPRegenRate && e.IsValidTarget(R2.Range - 50)) { R1.Cast(); R2.Cast(e); } } } } } }
private static void SemiRLogic() { var target = MyTargetSelector.GetTarget(R.Range); if (target != null && !target.HaveShiledBuff() && target.IsValidTarget(R.Range)) { R2.Cast(target); } }
public override void ExecuteJungleClear() { int jungleQValue = Program.jungleClear["Jungle.UseQ"].Cast <ComboBox>().CurrentValue; if (jungleQValue != 0 && W.IsReady()) { Obj_AI_Base jungleMobs = Utils.Utils.GetMobs(Q.Range, jungleQValue != 1 ? Utils.Utils.MobTypes.All : Utils.Utils.MobTypes.BigBoys, jungleQValue != 1 ? jungleQValue : 1); if (jungleMobs != null) { Q.Cast(jungleMobs); } } int jungleEValue = Program.jungleClear["Jungle.UseE"].Cast <ComboBox>().CurrentValue; if (W.IsReady() && jungleEValue != 0) { Obj_AI_Base jungleMobs = Utils.Utils.GetMobs(E.Range, jungleEValue != 1 ? Utils.Utils.MobTypes.All : Utils.Utils.MobTypes.BigBoys, jungleEValue != 1 ? jungleEValue : 1); if (jungleMobs != null) { E.Cast(); } } int jungleRValue = Program.jungleClear["Jungle.UseR"].Cast <ComboBox>().CurrentValue; if (jungleRValue != 0 && ObjectManager.Player.Spellbook.GetSpell(SpellSlot.R).Ammo > Program.jungleClear["Jungle.UseR.Lim"].Cast <Slider>().CurrentValue) { Obj_AI_Base jungleMobs = Utils.Utils.GetMobs(R1.Range, jungleRValue != 1 ? Utils.Utils.MobTypes.All : Utils.Utils.MobTypes.BigBoys, jungleRValue != 1 ? jungleRValue : 1); if (jungleMobs != null) { var rocketType = Program.jungleClear["Jungle.UseR.Bomb"].Cast <ComboBox>().CurrentValue; if (R1.IsReady() && (rocketType == 0 || rocketType == 1) && !HasBigRocket()) { R1.Cast(jungleMobs); } if (R2.IsReady() && (rocketType == 1 || rocketType == 2) && HasBigRocket()) { R2.Cast(jungleMobs); } } } }
public override void ExecuteJungleClear() { int jungleQValue = GetValue <StringList>("Jungle.UseQ").SelectedIndex; if (jungleQValue != 0 && W.IsReady()) { Obj_AI_Base jungleMobs = Utils.Utils.GetMobs(Q.Range, jungleQValue != 1 ? Utils.Utils.MobTypes.All : Utils.Utils.MobTypes.BigBoys, jungleQValue != 1 ? jungleQValue : 1); if (jungleMobs != null) { Q.Cast(jungleMobs); } } int jungleEValue = GetValue <StringList>("Jungle.UseE").SelectedIndex; if (W.IsReady() && jungleEValue != 0) { Obj_AI_Base jungleMobs = Utils.Utils.GetMobs(E.Range, jungleEValue != 1 ? Utils.Utils.MobTypes.All : Utils.Utils.MobTypes.BigBoys, jungleEValue != 1 ? jungleEValue : 1); if (jungleMobs != null) { E.Cast(); } } int jungleRValue = GetValue <StringList>("Jungle.UseR").SelectedIndex; if (jungleRValue != 0 && ObjectManager.Player.Spellbook.GetSpell(SpellSlot.R).Ammo > GetValue <Slider>("Jungle.UseR.Lim").Value) { Obj_AI_Base jungleMobs = Utils.Utils.GetMobs(R1.Range, jungleRValue != 1 ? Utils.Utils.MobTypes.All : Utils.Utils.MobTypes.BigBoys, jungleRValue != 1 ? jungleRValue : 1); if (jungleMobs != null) { var rocketType = GetValue <StringList>("Jungle.UseR.Bomb").SelectedIndex; if (R1.IsReady() && (rocketType == 0 || rocketType == 1) && !HasBigRocket()) { R1.Cast(jungleMobs); } if (R2.IsReady() && (rocketType == 1 || rocketType == 2) && HasBigRocket()) { R2.Cast(jungleMobs); } } } }
private static void Burst() { var target = TargetSelector.SelectedTarget; Orbwalker.ForcedTarget = target; Orbwalker.OrbwalkTo(target.ServerPosition); if (target == null || target.IsZombie || target.IsInvulnerable) { return; } if (target.IsValidTarget(800)) { if (E.IsReady()) { UseItems2(target); Player.CastSpell(SpellSlot.E, target.ServerPosition); } UseItems2(target); if (R1.IsReady() && BurstMenu["burstcombo"].Cast <KeyBind>().CurrentValue&& forceR == false) { R1.Cast(); } if (Flash.IsReady() && (myHero.Distance(target.Position) <= 680)) { Flash.Cast(target.ServerPosition); } UseItems(target); if (target.IsValidTarget(W.Range)) { if (W.IsReady()) { W.Cast(); } if (R2.IsReady()) { R2.Cast(target.ServerPosition); } } } }
public override void ExecuteLaneClear() { int laneQValue = Program.laneclear["Lane.UseQ"].Cast <ComboBox>().CurrentValue; if (laneQValue != 0 && Q.IsReady()) { Vector2 minions = Q.GetCircularFarmMinions(laneQValue); if (minions != Vector2.Zero) { Q.Cast(minions); } } int laneEValue = Program.laneclear["Lane.UseE"].Cast <ComboBox>().CurrentValue; if (laneEValue != 0 && E.IsReady()) { int minCount = E.GetMinionCountsInRange(); if (minCount >= laneEValue) { E.Cast(); } } int laneRValue = Program.laneclear["Lane.UseR"].Cast <ComboBox>().CurrentValue; if (laneRValue != 0 && ObjectManager.Player.Spellbook.GetSpell(SpellSlot.R).Ammo >= Program.laneclear["Lane.UseR.Lim"].Cast <Slider>().CurrentValue) { int rocketType = Program.laneclear["Lane.UseR.Bomb"].Cast <ComboBox>().CurrentValue; if (R1.IsReady() && (rocketType == 0 || rocketType == 2) && !HasBigRocket()) { Vector2 minions = R1.GetCircularFarmMinions(laneRValue); if (minions != Vector2.Zero) { R1.Cast(minions); } } if (R2.IsReady() && (rocketType == 1 || rocketType == 2) && HasBigRocket()) { Vector2 minions = R2.GetCircularFarmMinions(laneRValue); if (minions != Vector2.Zero) { R2.Cast(minions); } } } }
public override void ExecuteLaneClear() { int laneQValue = GetValue <StringList>("Lane.UseQ").SelectedIndex; if (laneQValue != 0 && Q.IsReady()) { Vector2 minions = Q.GetCircularFarmMinions(laneQValue); if (minions != Vector2.Zero) { Q.Cast(minions); } } int laneEValue = GetValue <StringList>("Lane.UseE").SelectedIndex; if (laneEValue != 0 && E.IsReady()) { int minCount = E.GetMinionCountsInRange(); if (minCount >= laneEValue) { E.Cast(); } } int laneRValue = GetValue <StringList>("Lane.UseR").SelectedIndex; if (laneRValue != 0 && ObjectManager.Player.Spellbook.GetSpell(SpellSlot.R).Ammo >= GetValue <Slider>("Lane.UseR.Lim").Value) { int rocketType = GetValue <StringList>("Lane.UseR.Bomb").SelectedIndex; if (R1.IsReady() && (rocketType == 0 || rocketType == 2) && !HasBigRocket()) { Vector2 minions = R1.GetCircularFarmMinions(laneRValue); if (minions != Vector2.Zero) { R1.Cast(minions); } } if (R2.IsReady() && (rocketType == 1 || rocketType == 2) && HasBigRocket()) { Vector2 minions = R2.GetCircularFarmMinions(laneRValue); if (minions != Vector2.Zero) { R2.Cast(minions); } } } }
private static void Harrass() { var useQHar = Config.Item("QHar").GetValue <bool>(); var useEHar = Config.Item("EHar").GetValue <bool>(); var useRHar = Config.Item("RHar").GetValue <bool>(); var missiles = Config.Item("AutoRMisCount").GetValue <Slider>().Value; var useQHarMana = Config.Item("QHarMana").GetValue <Slider>().Value; var useEHarMana = Config.Item("EHarMana").GetValue <Slider>().Value; var useRHarMana = Config.Item("RHarMana").GetValue <Slider>().Value; if (Q.IsReady() && useQHar && Player.ManaPercentage() >= useQHarMana) { var t = TargetSelector.GetTarget(Q.Range, TargetSelector.DamageType.Physical); if (t == null) { return; } Q.Cast(t); } if (E.IsReady() && useEHar && Player.ManaPercentage() >= useEHarMana) { var t = TargetSelector.GetTarget(E.Range, TargetSelector.DamageType.Physical); if (t == null) { return; } E.Cast(t); } var bigMiss = isBigMissle(); if (bigMiss ? R2.IsReady() : R1.IsReady() && useRHar && Player.Spellbook.GetSpell(SpellSlot.R).Ammo >= missiles && Player.ManaPercentage() >= useRHarMana) { var t = TargetSelector.GetTarget(bigMiss ? R2.Range : R1.Range, TargetSelector.DamageType.Magical); if (t == null) { return; } if (!bigMiss) { R1.Cast(t); } else { R2.Cast(t); } } }
public override void Orbwalking_AfterAttack(AttackableUnit target, EventArgs args) { var t = target as AIHeroClient; if (t == null || (!ComboActive && !HarassActive)) { return; } var useQ = ComboActive ? Program.combo["UseQC"].Cast <CheckBox>().CurrentValue : Program.harass["UseQH"].Cast <CheckBox>().CurrentValue; var useE = ComboActive ? Program.combo["UseEC"].Cast <CheckBox>().CurrentValue : Program.harass["UseEH"].Cast <CheckBox>().CurrentValue; var useR = ComboActive ? Program.combo["UseRC"].Cast <CheckBox>().CurrentValue : Program.harass["UseRH"].Cast <CheckBox>().CurrentValue; var rLim = ComboActive ? Program.combo["RlimC"].Cast <Slider>().CurrentValue : Program.harass["RlimH"].Cast <Slider>().CurrentValue; if (useQ && Q.IsReady()) { if (Q.Cast(t, false, true) == LeagueSharp.Common.Spell.CastStates.SuccessfullyCasted) { return; } } if (useE && E.IsReady()) { if (E.Cast(t, false, true) == LeagueSharp.Common.Spell.CastStates.SuccessfullyCasted) { return; } } if (useR && R1.IsReady() && ObjectManager.Player.Spellbook.GetSpell(SpellSlot.R).Ammo > rLim) { if (HasBigRocket()) { R2.Cast(t, false, true); } else { R1.Cast(t, false, true); } } }
public override void Orbwalking_AfterAttack(AttackableUnit unit, AttackableUnit target) { var t = target as Obj_AI_Hero; if (t == null || (!ComboActive && !HarassActive) || !unit.IsMe) { return; } var useQ = GetValue <bool>("UseQ" + (ComboActive ? "C" : "H")); var useE = GetValue <bool>("UseE" + (ComboActive ? "C" : "H")); var useR = GetValue <bool>("UseR" + (ComboActive ? "C" : "H")); var rLim = GetValue <Slider>("Rlim" + (ComboActive ? "C" : "H")).Value; if (useQ && Q.IsReady()) { if (Q.Cast(t, false, true) == Spell.CastStates.SuccessfullyCasted) { return; } } if (useE && E.IsReady()) { if (E.Cast(t, false, true) == Spell.CastStates.SuccessfullyCasted) { return; } } if (useR && R1.IsReady() && ObjectManager.Player.Spellbook.GetSpell(SpellSlot.R).Ammo > rLim) { if (HasBigRocket()) { R2.Cast(t, false, true); } else { R1.Cast(t, false, true); } } }
private static void RFollow() { var stormT = EntityManager.Heroes.Enemies.Where(x => x.IsValidTarget(2000, true, ViktorStormObj.Position) && !x.IsZombie && !x.IsDead).OrderBy(x => x.HealthPercent).FirstOrDefault(); if (stormT != null) { Core.DelayAction(() => R2.Cast(stormT), 100); } if (stormT == null && _AutoFollowR == 0) { var mtarget = EntityManager.MinionsAndMonsters.EnemyMinions.Where(m => m.IsValidTarget(1000)); if (mtarget.Any()) { var loc = R2.GetBestCircularCastPosition(mtarget); Core.DelayAction(() => R2.Cast(loc.CastPosition), 100); } } }
private static void checkKS() { if (!Config.Item("useKS").GetValue <bool>()) { return; } if (R1.IsReady()) { var bigMiss = isBigMissle(); List <AIHeroClient> targets = ObjectManager.Get <AIHeroClient>().Where(x => x.IsEnemy && x.IsValidTarget(bigMiss ? R2.Range : R1.Range) && !x.IsZombie && !x.HasBuffOfType(BuffType.Invulnerability) && R1.CanCast(x) && R1.GetDamage(x) * (bigMiss ? 1.5f : 1f) >= x.Health).ToList(); foreach (var target in targets) { if (bigMiss) { R2.Cast(target, false, true); } else { R1.Cast(target, false, true); } } } }
private static void afterAttack(AttackableUnit unit, AttackableUnit target) { if (_Ob.ActiveMode == Orbwalking.OrbwalkingMode.Combo) { var useQCombo = Config.Item("QuseCombo").GetValue <bool>(); var useRCombo = Config.Item("RuseCombo").GetValue <bool>(); if (Q.IsReady() && useQCombo) { var t = TargetSelector.GetTarget(Q.Range, TargetSelector.DamageType.Physical); if (t == null) { return; } Q.Cast(t); } var bigMiss = isBigMissle(); if (bigMiss ? R2.IsReady() : R1.IsReady() && useRCombo) { var t = TargetSelector.GetTarget(bigMiss ? R2.Range : R1.Range, TargetSelector.DamageType.Magical); if (t == null) { return; } if (!bigMiss) { R1.Cast(t, false, true); } else { R2.Cast(t, false, true); } } } }
private static void Combo() { var target = TargetSelector.SelectedTarget; if (target == null || !target.IsValidTarget(750)) { target = TargetSelector.GetTarget(R.IsReady() ? 750 : 600, DamageType.Magical); } if (target == null || target.InAutoAttackRange()) { target = Orbwalker.GetTarget() as AIHeroClient; } if (target != null && target is AIHeroClient) { if (Variables.TickCount - TimeCast <= AkaliMenu.QSettings.MoveQ.Value && target.IsValidTarget(570) && !Player.HavePassive() && AkaliMenu.QSettings.MoveQ.Enabled && !ObjectManager.Get <AITurretClient>() .Any(i => i.IsEnemy && !i.IsDead && (i.Distance(target.Position.Extend(Player.Position, +570)) < 850 + ObjectManager.Player.BoundingRadius)) && !target.Position.Extend(Player.Position, +570).IsWall() && !target.Position.Extend(Player.Position, +570).IsBuilding() && target.Position.Extend(Player.Position, +570).IsValid() ) { Orbwalker.AttackState = false; Orbwalker.SetOrbwalkerPosition(target.Position.Extend(Player.Position, +600)); //Player.IssueOrder(GameObjectOrder.MoveTo, target.Position.Extend(Player.Position, +600)); } else { Orbwalker.SetOrbwalkerPosition(Vector3.Zero); Orbwalker.AttackState = true; } if (Q.IsReady() && CanUseQNow == true && Q.GetPrediction(target).CastPosition.DistanceToPlayer() <= Q.Range) { if (!W.IsReady()) { if (!Player.IsDashing() && Variables.TickCount - Last_E > 700 && Variables.TickCount - Last_R > 700) { Q.Cast(Q.GetPrediction(target).CastPosition); } } else { if (Player.Mana - Q.Mana <= Q.Mana - 1.5f * 5) { if (target.IsValidTarget(Q.Range) && !Player.IsDashing() && Variables.TickCount - Last_E > 700 && Variables.TickCount - Last_R > 700) { Q.Cast(Q.GetPrediction(target).CastPosition); if (!Player.IsDashing()) { W.Cast(target.Position); } } } } } if (W.IsReady() && AkaliMenu.WSettings.TargetCount.Enabled && Player.CountEnemyHeroesInRange(AkaliMenu.WSettings.TargetCount.Value) > 1) { if (!Player.IsDashing()) { W.Cast(Player.Position); } } if (Q.IsReady() && Player.Mana > 150 && Player.HealthPercent > 80) { } else { var Epred = E.GetPrediction(target, false, -1, CollisionObjects.Minions | CollisionObjects.YasuoWall); if (W.IsReady() && E.IsReady() && Player.Mana - E.Mana <= Q.Mana) { if (E.Name == "AkaliE") { if (Player.HavePassive()) { return; } if (CanUseQNow == true) { E.Cast(Epred.CastPosition); DelayAction.Add(1, () => { W.Cast(Epred.CastPosition); }); } } if (E.Name == "AkaliEb" && GameObjects.EnemyHeroes.Any(i => i.HasBuff("AkaliEMis"))) { E.Cast(Epred.CastPosition); if (target.IsValidTarget(300)) { W.Cast(target.Position); } } } else { if (W.IsReady()) { if (Player.Mana <= AkaliMenu.WSettings.Wmana.Value && target.Position.DistanceToPlayer() < 500) { W.Cast(Player.Position); } } if (E.Name == "AkaliE") { if (E.IsReady()) { if (Player.HavePassive() && target.IsValidTarget(650)) { return; } if (CanUseQNow == true) { if (Variables.TickCount - Last_Q > 700) { E.Cast(Epred.CastPosition); } } } } if (E.Name == "AkaliEb") { if (E.IsReady()) { if (Variables.TickCount - Last_Q > 700) { E.Cast(Epred.CastPosition); } } } } } if (!Player.HavePassive() && target.IsValidTarget(R.Name == "AkaliRb" ? R2.Range : R.Range) && AkaliMenu.RSettings.Rcombo.Active) { if (target.Health <= R.GetDamage(target) + Player.GetAutoAttackDamage(target)) { if (R.Name == "AkaliRb") { R2.Cast(target); } else { R.Cast(target); } } if (R.Name == "AkaliR" && Variables.TickCount - Last_Q > 700) { R.Cast(target); } } if (R.IsReady()) { if (target.Health <= R.GetDamage(target) + (39 + 15 * Player.Level) + (Q.IsReady() ? Q.GetDamage(target) : 0)) { if (R.Name == "AkaliRb") { R2.Cast(target); } else { R.Cast(target); } } } if (Q.IsReady() && Player.IsDashing() && Q.GetPrediction(target).CastPosition.DistanceToPlayer() <= Q.Range) { if (target.Health <= Q.GetDamage(target) + (39 + 15 * Player.Level)) { Q.Cast(Q.GetPrediction(target).CastPosition); } } } }
public static void Execute() { ////////////////////////////////////////////////////////////////////////////////////////// var target = TargetSelector.GetTarget(E.Range, DamageType.Physical); float dist = (float)(Q.Range + player.MoveSpeed * 2.5); var useQ = ComboMenu.GetCheckBoxValue("qUse"); var useW = ComboMenu.GetCheckBoxValue("wUse"); var useE = ComboMenu.GetCheckBoxValue("eUse"); var useR = ComboMenu.GetCheckBoxValue("rUse"); var cmbDmg = Program.ComboDamage(target); if (target == null || target.IsInvulnerable || target.MagicImmune) { return; } ////////////////////////////////////////////////////////////////////////////////////////// if (ComboMenu.GetCheckBoxValue("itemss")) { Eclipse.Activator.Items.CastItems(target); } if (Program.ShacoClone && !Program.GhostDelay && ComboMenu["useClone"].Cast <CheckBox>().CurrentValue&& !MiscMenu["autoMoveClone"].Cast <CheckBox>().CurrentValue) { Program.moveClone(); } if (Q.IsReady() && useQ && target.IsValidTarget(Q.Range)) { Q.Cast(Prediction.Position.PredictUnitPosition(target, 500).To3D()); } else { if (!Program.CheckWalls(target) || Utils.GetPath(player, target.Position) < dist) { Q.Cast(player.Position.Extend(target.Position, Q.Range)); } } if (W.IsReady() && useW) { if (target.IsValidTarget(W.Range + 250)) { Program.HandleW(target); } } if (useE && E.IsReady() && target.IsValidTarget(E.Range)) { E.Cast(target); } if (useR && R.IsReady() && !Program.ShacoClone && target.HealthPercent < 60 && cmbDmg < target.Health && target.HealthPercent > cmbDmg && target.HealthPercent > 25) { R2.Cast(); } if (ComboMenu.GetCheckBoxValue("rLow") && R2.IsReady() && Player.Instance.HealthPercent <= ComboMenu.GetSliderValue("hpR")) { R2.Cast(); } }
public static void Execute() { ////////////////////////////////////////////////////////////////////////////////////////// var target = TargetSelector.GetTarget(E.Range, DamageType.Physical); float dist = (float)(Q.Range + player.MoveSpeed * 2.5); var useQ = ComboMenu.GetCheckBoxValue("qUse"); var useW = ComboMenu.GetCheckBoxValue("wUse"); var useE = ComboMenu.GetCheckBoxValue("eUse"); var useR = ComboMenu.GetCheckBoxValue("rUse"); var packets = ComboMenu.GetCheckBoxValue("packets"); var cmbDmg = Program.ComboDamage(target); ////////////////////////////////////////////////////////////////////////////////////////// if (Program.ShacoClone && !Program.GhostDelay && ComboMenu["useClone"].Cast <CheckBox>().CurrentValue&& !MiscMenu["autoMoveClone"].Cast <CheckBox>().CurrentValue) { Program.moveClone(); } if (Q.IsReady() && useQ && target.IsValidTarget(Q.Range)) { Q.Cast(Prediction.Position.PredictUnitPosition(target, 500).To3D()); } else { if (!Program.CheckWalls(target) || Utils.GetPath(player, target.Position) < dist) { Q.Cast(player.Position.Extend(target.Position, Q.Range)); } } if (target != null) { if (R.IsReady() && target.IsValidTarget() && player.Distance(target) < 400 && player.HasBuff("Deceive") && useR) { R.Cast(); } } if (W.IsReady() && useW) { if (!target.IsValidTarget(W.Range)) { Program.HandleW(target); } } if (useE && E.IsReady() && target.IsValidTarget(E.Range)) { E.Cast(target); } if (ComboMenu["user"].Cast <CheckBox>().CurrentValue&& R.IsReady() && !Program.ShacoClone && target.HealthPercent < 75 && cmbDmg <target.Health && target.HealthPercent> cmbDmg && target.HealthPercent > 25) { R2.Cast(); } if (Player.Instance.HealthPercent <= ComboMenu.GetSliderValue("hpR") && R.IsReady() && ComboMenu.GetCheckBoxValue("rLow")) { R.Cast(); } }
private void LogicR(Obj_AI_Base target, bool extendedR = false, bool useE = false, Orbwalker.ActiveModes activeMode = Orbwalker.ActiveModes.None) { var t = target as AIHeroClient; if (t == null) { return; } if (extendedR) { if (!R2.IsInRange(t) && useE) { var dist = Player.Instance.Distance(target) - R2.Range; if (dist > E.Range) { return; } var ePrediction = E.GetPrediction(target); if (ePrediction.CastPosition.IsInRange(target, R2.Range)) { E.Cast(ePrediction.CastPosition); } var rPrediction = R2.GetPrediction(t); if (rPrediction != null && rPrediction.HitChancePercent >= 75) { R2.Cast(rPrediction.CastPosition); } } else if (R2.IsInRange(t)) { var rPrediction = R2.GetPrediction(t); if (rPrediction != null && rPrediction.HitChancePercent >= 75) { R2.Cast(rPrediction.CastPosition); } } } else { if (!R.IsInRange(t) && useE) { var dist = Player.Instance.Distance(target) - R.Range; if (dist > E.Range) { return; } var ePrediction = E.GetPrediction(target); if (ePrediction.CastPosition.IsInRange(target, R.Range)) { E.Cast(ePrediction.CastPosition); } var rPrediction = R.GetPrediction(t); if (rPrediction != null && rPrediction.HitChancePercent >= 75) { R.Cast(rPrediction.CastPosition); } } else if (activeMode == Orbwalker.ActiveModes.Combo) { var enemiesAroundTarget = t.CountEnemiesInRange(R.Width); if (enemiesAroundTarget < ComboMenu.GetSliderValue("combo.r.aoe")) { return; } var rPrediction = R.GetPrediction(t); if (rPrediction != null && rPrediction.HitChancePercent >= 75) { R.Cast(rPrediction.CastPosition); } } else if (R.IsInRange(t)) { var rPrediction = R.GetPrediction(t); if (rPrediction != null && rPrediction.HitChancePercent >= 75) { R.Cast(rPrediction.CastPosition); } } } }
protected override void Game_OnGameUpdate(EventArgs args) { if (Player.IsDead) { return; } SmartKs(); if (Menu.Item("FarmT", true).GetValue <KeyBind>().Active) { Harass(); } if (Menu.Item("wAtk", true).GetValue <bool>()) { AutoAtk(); } switch (Orbwalker.ActiveMode) { case Orbwalking.OrbwalkingMode.Combo: Combo(); break; case Orbwalking.OrbwalkingMode.Mixed: Harass(); break; case Orbwalking.OrbwalkingMode.LaneClear: Farm(); JungleClear(); break; case Orbwalking.OrbwalkingMode.Flee: Escape(); break; case Orbwalking.OrbwalkingMode.LastHit: break; case Orbwalking.OrbwalkingMode.Freeze: break; case Orbwalking.OrbwalkingMode.CustomMode: break; case Orbwalking.OrbwalkingMode.None: if (Menu.Item("insec", true).GetValue <KeyBind>().Active) { Orbwalking.MoveTo(Game.CursorPos); _insecTarget = TargetSelector.GetSelectedTarget(); if (_insecTarget != null) { if (_insecTarget.HasBuffOfType(BuffType.Knockup) || _insecTarget.HasBuffOfType(BuffType.Knockback)) { if (Player.ServerPosition.Distance(_insecTarget.ServerPosition) < 200) { R2.Cast(InsecPosition); } } Insec(); } } else { InsecPosition = new Vector3(0, 0, 0); } if (Menu.Item("qeCombo", true).GetValue <KeyBind>().Active) { var soldierTarget = TargetSelector.GetTarget(900, TargetSelector.DamageType.Magical); Orbwalking.MoveTo(Game.CursorPos); CastQe(soldierTarget, "Null"); } break; default: throw new ArgumentOutOfRangeException(); } }
private static void laneClear() { var Qmana = Config.Item("ManaFarmQ").GetValue <Slider>().Value; var Emana = Config.Item("ManaFarmE").GetValue <Slider>().Value; var Rmana = Config.Item("ManaFarmR").GetValue <Slider>().Value; var useQ = Config.Item("QLC").GetValue <bool>(); var useE = Config.Item("ELC").GetValue <bool>(); var useR = Config.Item("RLC").GetValue <bool>(); var useR2 = Config.Item("BigRClear").GetValue <bool>(); //var miniR = Config.Item("miniClear").GetValue<bool>(); var Qcount = Config.Item("QFarmCount").GetValue <Slider>().Value; var Ecount = Config.Item("EFarmCount").GetValue <Slider>().Value; var Rcount = Config.Item("RFarmCount").GetValue <Slider>().Value; var MisCount = Config.Item("RMisCount").GetValue <Slider>().Value; var Ammo = Player.Spellbook.GetSpell(SpellSlot.R).Ammo; var BigMissile = isBigMissle(); var harrassinclear = Config.Item("HarInClear").GetValue <bool>(); var missiles = Config.Item("AutoRMisCount").GetValue <Slider>().Value; var useQHar = Config.Item("QHar").GetValue <bool>(); var useEHar = Config.Item("EHar").GetValue <bool>(); var useRHar = Config.Item("RHar").GetValue <bool>(); var useQHarMana = Config.Item("QHarMana").GetValue <Slider>().Value; var useRHarMana = Config.Item("RHarMana").GetValue <Slider>().Value; if (_Ob.ActiveMode == Orbwalking.OrbwalkingMode.LaneClear && !Orbwalking.CanAttack() && R1.IsReady() && useR && Player.ManaPercentage() > Rmana) { if (BigMissile) { return; } if (Ammo > MisCount) { List <Obj_AI_Base> killableMinions = MinionManager.GetMinions(R1.Range, MinionTypes.All).Where(x => x.Health <= Player.GetAutoAttackDamage(x)).ToList(); if (killableMinions.Count >= 2) { var farthestMinion = killableMinions.OrderBy(x => x.Distance(Player.Position)).First(); if (R1.GetDamage(farthestMinion) >= farthestMinion.Health) { R1.Cast(farthestMinion); } } } } if (Q.IsReady() && useQ && Player.ManaPercentage() > Qmana) { List <Obj_AI_Base> QMinionsRange = MinionManager.GetMinions(Player.ServerPosition, Q.Range, MinionTypes.All, MinionTeam.NotAlly); List <int> qRangeCount = new List <int>(); foreach (var minion in QMinionsRange) { List <Obj_AI_Base> qMinions = MinionManager.GetMinions(minion.Position, Q.Width, MinionTypes.All, MinionTeam.NotAlly); qRangeCount.Add(qMinions.Count()); } if (qRangeCount.Max() >= Qcount) { Q.Cast(QMinionsRange[qRangeCount.IndexOf(qRangeCount.Max())]); } } if (E.IsReady() && useE && Player.ManaPercentage() > Emana) { List <Obj_AI_Base> EMinions = MinionManager.GetMinions(Player.ServerPosition, E.Range, MinionTypes.All, MinionTeam.NotAlly); if (EMinions.Count >= Ecount) { E.Cast(EMinions[0]); } } if (BigMissile ? R2.IsReady() : R1.IsReady() && useR && (Ammo > MisCount) && Player.ManaPercentage() > Rmana) { if (BigMissile && !useR2) { return; } List <Obj_AI_Base> RMinionsRange = MinionManager.GetMinions(Player.ServerPosition, (BigMissile ? R2.Range : R1.Range), MinionTypes.All, MinionTeam.NotAlly); List <int> rRangeCount = new List <int>(); foreach (var minion in RMinionsRange) { List <Obj_AI_Base> rMinions = MinionManager.GetMinions(minion.Position, BigMissile ? 300f : 200f, MinionTypes.All, MinionTeam.NotAlly); rRangeCount.Add(rMinions.Count()); } if (rRangeCount.Max() >= Rcount) { if (BigMissile) { R2.Cast(RMinionsRange[rRangeCount.IndexOf(rRangeCount.Max())], false, true); } else { R1.Cast(RMinionsRange[rRangeCount.IndexOf(rRangeCount.Max())], false, true); } } } if (Q.IsReady() && harrassinclear && useQHar && Player.ManaPercentage() >= useQHarMana) { if (Player.ServerPosition.UnderTurret(true)) { return; } var t = TargetSelector.GetTarget(Q.Range, TargetSelector.DamageType.Physical); if (t == null) { return; } Q.CastIfHitchanceEquals(t, HitChance.VeryHigh); } if (BigMissile ? R2.IsReady() : R1.IsReady() && harrassinclear && useRHar && Player.Spellbook.GetSpell(SpellSlot.R).Ammo >= missiles && Player.ManaPercentage() >= useRHarMana) { if (Player.ServerPosition.UnderTurret(true)) { return; } var t = TargetSelector.GetTarget(BigMissile ? R2.Range : R1.Range, TargetSelector.DamageType.Magical); if (t == null) { return; } if (!BigMissile) { R1.CastIfHitchanceEquals(t, HitChance.VeryHigh); } else { R2.CastIfHitchanceEquals(t, HitChance.VeryHigh); } } }
public override void Game_OnGameUpdate(EventArgs args) { if (R1.IsReady() && GetValue <bool>("UseRM")) { bool bigRocket = HasBigRocket(); foreach ( Obj_AI_Hero hero in ObjectManager.Get <Obj_AI_Hero>() .Where( hero => hero.IsValidTarget(bigRocket ? R2.Range : R1.Range) && R1.GetDamage(hero) * (bigRocket ? 1.5f : 1f) > hero.Health)) { if (bigRocket) { R2.Cast(hero, false, true); } else { R1.Cast(hero, false, true); } } } if ((!ComboActive && !HarassActive) || !Orbwalking.CanMove(100)) { return; } var useQ = GetValue <bool>("UseQ" + (ComboActive ? "C" : "H")); var useE = GetValue <bool>("UseE" + (ComboActive ? "C" : "H")); var useR = GetValue <bool>("UseR" + (ComboActive ? "C" : "H")); var rLim = GetValue <Slider>("Rlim" + (ComboActive ? "C" : "H")).Value; if (useQ && Q.IsReady()) { var t = TargetSelector.GetTarget(Q.Range, TargetSelector.DamageType.Magical); if (t != null) { if (Q.Cast(t, false, true) == Spell.CastStates.SuccessfullyCasted) { return; } } } if (useE && E.IsReady()) { var t = TargetSelector.GetTarget(E.Range, TargetSelector.DamageType.Physical); if (t.IsValidTarget()) { if (E.Cast(t, false, true) == Spell.CastStates.SuccessfullyCasted) { return; } } } if (useR && R1.IsReady() && ObjectManager.Player.Spellbook.GetSpell(SpellSlot.R).Ammo > rLim) { bool bigRocket = HasBigRocket(); Obj_AI_Hero t = TargetSelector.GetTarget(bigRocket ? R2.Range : R1.Range, TargetSelector.DamageType.Magical); if (t.IsValidTarget()) { if (bigRocket) { R2.Cast(t, false, true); } else { R1.Cast(t, false, true); } } } }
private void Game_OnGameUpdate(EventArgs args) { //check if player is dead if (Player.IsDead) { return; } SmartKs(); if (menu.Item("escape").GetValue <MenuKeyBind>().Active) { Orbwalker.Orbwalk(null, Game.CursorPos); Escape(); } else if (menu.Item("ComboActive").GetValue <MenuKeyBind>().Active) { Combo(); } else if (menu.Item("insec").GetValue <MenuKeyBind>().Active) { Orbwalker.Orbwalk(null, Game.CursorPos); _insecTarget = TargetSelector.SelectedTarget; if (_insecTarget != null) { if (_insecTarget.HasBuffOfType(BuffType.Knockup) || _insecTarget.HasBuffOfType(BuffType.Knockback)) { if (Player.Distance(_insecTarget) < 200) { R2.Cast(_rVec); } } Insec(); } } else if (menu.Item("qeCombo").GetValue <MenuKeyBind>().Active) { var soilderTarget = TargetSelector.GetTarget(900); Orbwalker.Orbwalk(null, Game.CursorPos); CastQe(soilderTarget, "Null"); } else { if (menu.Item("LaneClearActive").GetValue <MenuKeyBind>().Active) { Farm(); } if (menu.Item("HarassActive").GetValue <MenuKeyBind>().Active) { Harass(); } if (menu.Item("HarassActiveT").GetValue <MenuKeyBind>().Active) { Harass(); } if (menu.Item("wAtk").GetValue <MenuBool>()) { AutoAtk(); } } }
private static void ComboLogic() { if (ComboW) { var t = EntityManager.Heroes.Enemies.Find(x => x.IsValidTarget(W.Range) && !x.HasBuffOfType(BuffType.SpellShield)); if (t != null) { if (W.IsReady() && !Orbwalker.CanAutoAttack) { W.Cast(); } } } if (E.IsReady()) { var t = EntityManager.Heroes.Enemies.Where(e => e.IsValidTarget(E.Range + myHero.GetAutoAttackRange())); if (t == null) { return; } var t12 = t.OrderByDescending(e => TargetSelector.GetPriority(e)).FirstOrDefault(); if (t12 != null) { if (myHero.Distance(t12) > myHero.GetAutoAttackRange() + 20) { E.Cast(t12.ServerPosition); } } if (ComboE == 0) { var t1 = t.OrderByDescending(e => TargetSelector.GetPriority(e)).FirstOrDefault(); if (t1 != null) { E.Cast(t1.ServerPosition); } } else if (ComboE == 1) { if (t != null) { E.Cast(Game.CursorPos); } } } if (ComboR) { if (R1.IsReady()) { if (useR1 && !myHero.HasBuff("RivenFengShuiEngine")) { var t = TargetSelector.GetTarget(900, DamageType.Physical); if (t == null) { return; } if (t.Distance(myHero.ServerPosition) < E.Range + myHero.AttackRange && myHero.CountEnemiesInRange(500) >= 1) { R1.Cast(); } } if (myHero.HasBuff("RivenFengShuiEngine")) { var t = TargetSelector.GetTarget(900, DamageType.Physical); if (t == null) { return; } if (t.ServerPosition.Distance(myHero.ServerPosition) < 850) { switch (R2Mode) { case 0: if (Rdame(t, t.Health) > t.Health && t.IsValidTarget(R2.Range) && t.Distance(myHero.ServerPosition) < 600) { CastR2 = true; } else { CastR2 = false; } break; case 1: if (t.HealthPercent < 25 && t.Health > Rdame(t, t.Health) + Damage.GetAutoAttackDamage(myHero, t) * 2) { CastR2 = true; } else { CastR2 = false; } break; case 2: if (t.IsValidTarget(R2.Range) && t.Distance(myHero.ServerPosition) < 600) { CastR2 = true; } else { CastR2 = false; } break; case 3: CastR2 = false; break; } } if (CastR2) { R2.Cast(t); } } } } }
private static void Game_OnTick(EventArgs args) { if (Menu.CheckBox(Menu.Principal, "Skin")) { var id = Menu.Slider(Menu.Principal, "SkinID"); if (Player.Instance.SkinId != id) { Player.Instance.SetSkinId(id); } } if (Ignite.Slot != SpellSlot.Unknown) { if (Ignite.IsReady() && Menu.CheckBox(Menu.Item, "Ignite")) { foreach (var Hero in EntityManager.Heroes.Enemies.Where(x => x.IsValidTarget(Ignite.Range)).OrderBy(x => x.Health)) { if (Hero.Health <= Player.Instance.GetSummonerSpellDamage(Hero, DamageLibrary.SummonerSpells.Ignite)) { Ignite.Cast(Hero); } } } } if (!W.IsReady()) { TTs = false; } if (TTs) { foreach (var Hero in EntityManager.Heroes.Enemies.Where(X => X.Position.Distance(Player.Instance.Position) <= Player.Instance.GetAutoAttackRange()).OrderBy(x => x.Health)) { TT = Hero; } foreach (var Minions in EntityManager.MinionsAndMonsters.EnemyMinions.Where(x => x.Position.Distance(Player.Instance.Position) <= Player.Instance.GetAutoAttackRange()).OrderBy(x => x.Health)) { TT = Minions; } foreach (var Mob in EntityManager.MinionsAndMonsters.GetJungleMonsters().Where(x => x.Position.Distance(Player.Instance.Position) <= Player.Instance.GetAutoAttackRange()).OrderBy(x => x.Health)) { TT = Mob; } if (TT != null) { Core.DelayAction(() => Player.IssueOrder(GameObjectOrder.AttackUnit, TT), 50); } } if (Jungle()) { var Monsters = EntityManager.MinionsAndMonsters.GetJungleMonsters().Where(X => X.IsValidTarget(E.Range + Player.Instance.GetAutoAttackRange())).OrderBy(x => x.MaxHealth).FirstOrDefault(); if (Monsters != null) { if (W.IsReady() && Menu.CheckBox(Menu.W, "Jungle")) { if (Monsters.IsValidTarget(RealW())) { W.Cast(); } } if (E.IsReady() && Menu.CheckBox(Menu.E, "Jungle")) { if (Monsters.IsValidTarget(E.Range)) { E.Cast(Monsters.Position); } } } } if (Lane()) { var Minions = EntityManager.MinionsAndMonsters.GetLaneMinions(EntityManager.UnitTeam.Enemy, Player.Instance.Position, RealW()); var Circle = EntityManager.MinionsAndMonsters.GetCircularFarmLocation(Minions, 200, RealW()); if (Q.IsReady() && CountQ == 2) { Q.Cast(Circle.CastPosition); } if (Menu.CheckBox(Menu.W, "Lane")) { if (Circle.HitNumber >= Menu.Slider(Menu.W, "LaneMin") && W.IsReady()) { W.Cast(); } } } if (Combo() && Target != null) { if (Menu.CheckBox(Menu.Item, "Youmuu")) { if (Target.IsValidTarget(E.Range)) { Use(); } } if (R.IsReady() && Menu.CheckBox(Menu.R, "UseR1") && R.ToggleState == 1) { if (!IsActive && CheckR1(Target)) { if (Target.IsValidTarget(RealW(), true) && W.IsReady()) { Reset(); W.Cast(); R.Cast(); } else if (Target.IsValidTarget(E.Range + Player.Instance.GetAutoAttackRange(), true) && E.IsReady()) { E.Cast(Target.Position); R.Cast(); } else if (Target.IsValidTarget(RealQ(), true) && Q.IsReady()) { Q.Cast(Target.Position); R.Cast(); } else { R.Cast(); } } } if (R2.IsReady() && R.ToggleState >= 2) { if (IsActive && CheckR2(Target)) { var Pred = R2.GetPrediction(Target); if (Pred.HitChance >= HitChance.High) { if (Target.IsValidTarget(R2.Range)) { R2.Cast(Pred.UnitPosition); } } } } if (Q.IsReady() && CountQ == 2) { if (Target.IsValidTarget(RealQ(), true) && !Target.IsValidTarget(Player.Instance.GetAutoAttackRange())) { Q.Cast(Target.Position); } if (Target.IsValidTarget(RealW(), true) && W.IsReady()) { Reset(); W.Cast(); } } if (E.IsReady()) { if (Target.IsValidTarget(E.Range + Player.Instance.GetAutoAttackRange(), true)) { if (!Target.IsValidTarget(Player.Instance.GetAutoAttackRange())) { E.Cast(Target.Position); } } if (W.IsReady() && Target.IsValidTarget(RealW())) { Reset(); W.Cast(); } } if (W.IsReady() && Target.IsValidTarget(RealW())) { Reset(); W.Cast(); } } if (Menu.Keybind(Menu.Misc, "Burst") || Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Harass)) { if (Target.IsValidTarget(E.Range + Flash.Range)) { var Pred = R2.GetPrediction(Target); E.Cast(Player.Instance.Position.Extend(Target.Position, E.Range).To3D()); if (!IsActive) { R.Cast(); } if (Flash.IsReady() && Target.Position.Distance(Player.Instance.Position) <= 650) { Flash.Cast(Player.Instance.Position.Extend(Target.Position, Flash.Range).To3D()); } if (W.IsReady() && Target.IsValidTarget(RealW())) { Reset(); W.Cast(); } if (Menu.CheckBox(Menu.Item, "Youmuu")) { if (Target.IsValidTarget(E.Range)) { Use(); } } if (Q.IsReady()) { Q.Cast(Target.Position); } if (IsActive) { R2.Cast(Target.Position); } } } if (Flee()) { if (Menu.CheckBox(Menu.Q, "Flee") && Q.IsReady()) { Q.Cast((Game.CursorPos.Distance(Player.Instance) > Q.Range ? Player.Instance.Position.Extend(Game.CursorPos, Q.Range - 1).To3D() : Game.CursorPos)); } if (Menu.CheckBox(Menu.E, "Flee") && E.IsReady()) { E.Cast((Game.CursorPos.Distance(Player.Instance) > E.Range ? Player.Instance.Position.Extend(Game.CursorPos, E.Range - 1).To3D() : Game.CursorPos)); } } }
public static void Combo() { var target = TargetSelector.GetTarget(Q.Range, TargetSelector.DamageType.Physical); if (target != null) { if (Menu.Config.Item("q.combo").IsActive()) { if (Q.CanCast(target)) { if (target.IsMoving && target.Path.ToList().Count >= 2) { //var qpred = Q.GetPrediction(target); var x = target.Position.Extend(Prediction.GetPrediction(target, Q.Delay).UnitPosition, 300); if (Q.IsInRange(x)) { Q.Cast(x); return; } } var qpred = Q.GetPrediction(target); if (qpred.Hitchance >= HitChance.Dashing) { Q.Cast(qpred.CastPosition); } } } if (Menu.Config.Item("e.combo").IsActive()) { if (E.IsReady() && Player.IsFacing(target)) { E.Cast(target); } } } if (Menu.Config.Item("r.combo").IsActive() && Menu.Config.Item("r.combo.stacks").GetValue <Slider>().Value < R.Instance.Ammo) { if (R.IsReady()) { var r2 = Player.HasBuff("corkimissilebarragecounterbig"); if (!r2) { var rtarget = TargetSelector.GetTarget(R.Range, TargetSelector.DamageType.Magical); if (rtarget == null) { return; } var pred = R.GetPrediction(rtarget); if (R.CanCast(rtarget)) { switch (pred.Hitchance) { case HitChance.High: case HitChance.VeryHigh: case HitChance.Immobile: R.Cast(pred.CastPosition); break; case HitChance.Collision: var colliding = pred.CollisionObjects.OrderBy(o => o.Distance(Player.ServerPosition)).ToList(); if (colliding[0].Distance(rtarget.ServerPosition) <= 200 + colliding[0].BoundingRadius) { R.Cast(pred.CastPosition); } break; } } } else { var rtarget = TargetSelector.GetTarget(R2.Range, TargetSelector.DamageType.Magical); if (rtarget == null) { return; } var pred = R2.GetPrediction(rtarget); if (R2.CanCast(rtarget)) { switch (pred.Hitchance) { case HitChance.High: case HitChance.VeryHigh: case HitChance.Immobile: R2.Cast(pred.CastPosition); break; case HitChance.Collision: var colliding = pred.CollisionObjects.OrderBy(o => o.Distance(Player.ServerPosition)).ToList(); if (colliding[0].Distance(rtarget.ServerPosition) <= 200 + colliding[0].BoundingRadius) { R.Cast(pred.CastPosition); } break; } } } } } }
public override void Game_OnGameUpdate(EventArgs args) { if (R1.IsReady() && Program.misc["UseRM"].Cast <CheckBox>().CurrentValue) { bool bigRocket = HasBigRocket(); foreach ( AIHeroClient hero in ObjectManager.Get <AIHeroClient>() .Where( hero => hero.LSIsValidTarget(bigRocket ? R2.Range : R1.Range) && R1.GetDamage(hero) * (bigRocket ? 1.5f : 1f) > hero.Health)) { if (bigRocket) { R2.Cast(hero, false, true); } else { R1.Cast(hero, false, true); } } } if ((!ComboActive && !HarassActive) || !Orbwalker.CanMove) { return; } var useQ = ComboActive ? Program.combo["UseQC"].Cast <CheckBox>().CurrentValue : Program.harass["UseQH"].Cast <CheckBox>().CurrentValue; var useE = ComboActive ? Program.combo["UseEC"].Cast <CheckBox>().CurrentValue : Program.harass["UseEH"].Cast <CheckBox>().CurrentValue; var useR = ComboActive ? Program.combo["UseRC"].Cast <CheckBox>().CurrentValue : Program.harass["UseRH"].Cast <CheckBox>().CurrentValue; var rLim = ComboActive ? Program.combo["RlimC"].Cast <Slider>().CurrentValue : Program.harass["RlimH"].Cast <Slider>().CurrentValue; if (useQ && Q.IsReady()) { var t = TargetSelector.GetTarget(Q.Range, DamageType.Magical); if (t != null) { if (Q.Cast(t, false, true) == LeagueSharp.Common.Spell.CastStates.SuccessfullyCasted) { return; } } } if (useE && E.IsReady()) { var t = TargetSelector.GetTarget(E.Range, DamageType.Physical); if (t.IsValidTarget()) { if (E.Cast(t, false, true) == LeagueSharp.Common.Spell.CastStates.SuccessfullyCasted) { return; } } } if (useR && R1.IsReady() && ObjectManager.Player.Spellbook.GetSpell(SpellSlot.R).Ammo > rLim) { bool bigRocket = HasBigRocket(); AIHeroClient t = TargetSelector.GetTarget(bigRocket ? R2.Range : R1.Range, DamageType.Magical); if (t.LSIsValidTarget()) { if (bigRocket) { R2.Cast(t, false, true); } else { R1.Cast(t, false, true); } } } }