/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void Automatic(EventArgs args) { if (GameObjects.Player.IsRecalling() || Vars.R.Instance.Name.Equals("JhinRShot")) { return; } /// <summary> /// The Automatic Q LastHit Logic. /// </summary> if (Vars.Q.IsReady() && GameObjects.Player.HasBuff("JhinPassiveReload") && Variables.Orbwalker.ActiveMode != OrbwalkingMode.Combo && GameObjects.Player.ManaPercent > ManaManager.GetNeededMana(Vars.Q.Slot, Vars.Menu["spells"]["q"]["lasthit"]) && Vars.Menu["spells"]["q"]["lasthit"].GetValue <MenuSliderButton>().BValue) { foreach (var minion in Targets.Minions.Where( m => m.IsValidTarget(Vars.Q.Range) && Vars.GetRealHealth(m) < (float)GameObjects.Player.GetSpellDamage(m, SpellSlot.Q))) { Vars.Q.CastOnUnit(minion); } } /// <summary> /// The Automatic E Logic. /// </summary> if (Vars.E.IsReady() && Vars.Menu["spells"]["e"]["logical"].GetValue <MenuBool>().Value) { foreach (var target in GameObjects.EnemyHeroes.Where( t => Bools.IsImmobile(t) && !Invulnerable.Check(t) && t.IsValidTarget(Vars.E.Range))) { Vars.E.Cast( GameObjects.Player.ServerPosition.Extend( target.ServerPosition, GameObjects.Player.Distance(target) + target.BoundingRadius * 2)); } } /// <summary> /// The Automatic W Logic. /// </summary> if (Vars.W.IsReady() && !GameObjects.Player.IsUnderEnemyTurret() && Vars.Menu["spells"]["w"]["logical"].GetValue <MenuBool>().Value) { foreach (var target in GameObjects.EnemyHeroes.Where( t => Bools.IsImmobile(t) && !Invulnerable.Check(t) && t.HasBuff("jhinespotteddebuff") && t.IsValidTarget(Vars.W.Range - 150f) && Vars.Menu["spells"]["w"]["whitelist"][t.ChampionName.ToLower()].GetValue <MenuBool>().Value)) { Vars.W.Cast(target.ServerPosition); } } }
/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs"/> instance containing the event data.</param> public static void ExecuteAuto(EventArgs args) { /// <summary> /// The Q KillSteal Logic, /// The Q Immobile Harass Logic. /// </summary> if (Variables.Q.IsReady() && Targets.Target.IsValidTarget(Variables.Q.Range) && ((Targets.Target.Health < Variables.Q.GetDamage(Targets.Target) && Variables.Menu.Item($"{Variables.MainMenuName}.qspell.ks").IsActive()) || (Bools.IsImmobile(Targets.Target) && Variables.Menu.Item($"{Variables.MainMenuName}.qspell.immobile").IsActive()))) { Variables.Q.SPredictionCast(Targets.Target, HitChance.High); } /// <summary> /// The W Combo Logic. /// </summary> if (Variables.W.IsReady() && Targets.Target.IsValidTarget(Variables.W.Range) && Variables.Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo && Variables.Menu.Item($"{Variables.MainMenuName}.wspell.combo").IsActive()) { Variables.W.Cast(); } /// <summary> /// The E KillSteal Logic, /// The E Immobile Harass Logic. /// </summary> if (Variables.E.IsReady() && Targets.Target.IsValidTarget(Variables.E.Range) && ((Targets.Target.Health < Variables.E.GetDamage(Targets.Target) && Variables.Menu.Item($"{Variables.MainMenuName}.espell.ks").IsActive()) || (Bools.IsImmobile(Targets.Target) && Variables.Menu.Item($"{Variables.MainMenuName}.espell.immobile").IsActive()))) { Variables.E.SPredictionCast(Targets.Target, HitChance.High); } /// <summary> /// The R Combo Logic. /// </summary> if (Variables.R.IsReady() && Targets.Target.HealthPercent < 50 && !Targets.Target.IsValidTarget(Variables.W.Range) && Variables.Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo && Variables.Menu.Item($"{Variables.MainMenuName}.rspell.stacks").GetValue <Slider>().Value > ObjectManager.Player.GetBuffCount("kogmawlivingartillerycost") && Variables.Menu.Item($"{Variables.MainMenuName}.rspell.combo").IsActive()) { Variables.R.SPredictionCast(Targets.Target, HitChance.High); } }
/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs"/> instance containing the event data.</param> public static void ExecuteAuto(EventArgs args) { /// <summary> /// The W Immobile Harass Logic, /// The W KillSteal Logic. /// </summary> if (Variables.W.IsReady() && Targets.Target.IsValidTarget(Variables.W.Range) && ((Bools.IsImmobile(Targets.Target) && Variables.Menu.Item($"{Variables.MainMenuName}.wspell.immobile").IsActive()) || (Targets.Target.Health < Variables.W.GetDamage(Targets.Target) && Variables.Menu.Item($"{Variables.MainMenuName}.wspell.ks").IsActive()))) { Variables.W.SPredictionCast(Targets.Target, HitChance.High); } /// <summary> /// The E Logic. /// </summary> if (Variables.E.IsReady() && !ObjectManager.Player.IsWindingUp && !ObjectManager.Player.IsRecalling() && ObjectManager.Player.CountEnemiesInRange(1500) == 0 && ObjectManager.Player.ManaPercent > ManaManager.NeededEMana && Variables.Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.None && Variables.Menu.Item($"{Variables.MainMenuName}.espell.auto").IsActive()) { Variables.E.Cast( Variables.Locations .OrderBy(d => ObjectManager.Player.Distance(d)) .FirstOrDefault() ); } /// <summary> /// The R Doublelift Mechanic Logic, /// The R Normal Combo Logic. /// </summary> if (Variables.R.IsReady() && Targets.Target.IsValidTarget(Variables.R.Range) && Variables.Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo && Variables.Menu.Item($"{Variables.MainMenuName}.rspell.combo").IsActive() && Variables.Menu.Item($"{Variables.MainMenuName}.rspell.whitelist.{Targets.Target.ChampionName.ToLower()}").IsActive()) { if (Variables.E.IsReady() && Targets.Target.Health > Variables.R.GetDamage(Targets.Target) && !Targets.Target.IsValidTarget(ObjectManager.Player.AttackRange) && Variables.Menu.Item($"{Variables.MainMenuName}.espell.auto").IsActive()) { Variables.E.SPredictionCast(Targets.Target, HitChance.High); Variables.R.SPredictionCast(Targets.Target, HitChance.High); return; } Variables.R.SPredictionCast(Targets.Target, HitChance.High); } }
/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void Combo(EventArgs args) { /// <summary> /// The R Combo Logic. /// </summary> if (Vars.R.IsReady() && Vars.R.Instance.Name.Equals("JhinRShot") && Vars.getCheckBoxItem(Vars.RMenu, "combo")) { if (GameObjects.EnemyHeroes.Any( t => t.LSIsValidTarget(Vars.R.Range) && !Vars.Cone.IsOutside((Vector2)t.ServerPosition))) { foreach (var target in GameObjects.EnemyHeroes.Where( t => t.LSIsValidTarget(Vars.R.Range) && !Vars.Cone.IsOutside((Vector2)t.ServerPosition))) { if (Vars.getCheckBoxItem(Vars.RMenu, "nearmouse")) { Vars.R.Cast(Vars.R.GetPrediction(GameObjects.EnemyHeroes.Where( t => !Vars.Cone.IsOutside((Vector2)t.ServerPosition) && t.LSIsValidTarget(Vars.R.Range)).OrderBy( o => o.Distance(Game.CursorPos)).FirstOrDefault()).UnitPosition); } else { Vars.R.Cast(Vars.R.GetPrediction(target).UnitPosition); } } } else { Vars.R.Cast(Game.CursorPos); } } if (Bools.HasSheenBuff() || !Targets.Target.LSIsValidTarget() || Invulnerable.Check(Targets.Target) || Vars.R.Instance.Name.Equals("JhinRShot")) { return; } /// <summary> /// The Q Combo Logic. /// </summary> if (Vars.Q.IsReady() && Targets.Target.LSIsValidTarget(Vars.Q.Range) && GameObjects.Player.HasBuff("JhinPassiveReload") && Vars.getCheckBoxItem(Vars.QMenu, "combo")) { Vars.Q.CastOnUnit(Targets.Target); } }
/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void Automatic(EventArgs args) { if (GameObjects.Player.LSIsRecalling()) { return; } /// <summary> /// The Tear Stacking Logic. /// </summary> if (Vars.Q.IsReady() && Bools.HasTear(GameObjects.Player) && !GameObjects.Player.LSIsRecalling() && Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.None) && GameObjects.Player.CountEnemyHeroesInRange(1500) == 0 && GameObjects.Player.ManaPercent > ManaManager.GetNeededMana(Vars.Q.Slot, Vars.getSliderItem(Vars.MiscMenu, "tear")) && Vars.getSliderItem(Vars.MiscMenu, "tear") != 101) { Vars.Q.Cast(GameObjects.Player.ServerPosition.LSExtend(Game.CursorPos, Vars.Q.Range - 5f)); } /// <summary> /// The Automatic Q Logic. /// </summary> if (Vars.Q.IsReady() && Vars.getCheckBoxItem(Vars.QMenu, "logical")) { foreach (var target in GameObjects.EnemyHeroes.Where( t => Bools.IsImmobile(t) && !Invulnerable.Check(t) && t.LSIsValidTarget(Vars.Q.Range))) { Vars.Q.Cast(target.ServerPosition); return; } } /// <summary> /// The Automatic W Logic. /// </summary> DelayAction.Add(1000, () => { if (Vars.W.IsReady() && !Vars.Q.IsReady() && Vars.getCheckBoxItem(Vars.WMenu, "logical")) { foreach (var target in GameObjects.EnemyHeroes.Where( t => Bools.IsImmobile(t) && !Invulnerable.Check(t) && t.LSIsValidTarget(Vars.W.Range))) { Vars.W.Cast(target.ServerPosition); } } }); }
/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void Combo(EventArgs args) { if (Bools.HasSheenBuff() || !Targets.Target.LSIsValidTarget()) { return; } /// <summary> /// The Q Combo Logic. /// </summary> if (Vars.Q.IsReady() && Targets.Target.LSIsValidTarget(Vars.AARange) && GameObjects.Player.HasBuff("asheqcastready") && Vars.getCheckBoxItem(Vars.QMenu, "combo")) { Vars.Q.Cast(); } if (Targets.Target.LSIsValidTarget(Vars.AARange + 20)) { return; } /// <summary> /// The W Combo Logic. /// </summary> if (Vars.W.IsReady() && !Invulnerable.Check(Targets.Target) && Targets.Target.LSIsValidTarget(Vars.W.Range) && Vars.getCheckBoxItem(Vars.WMenu, "combo")) { if (!Vars.W.GetPrediction(Targets.Target).CollisionObjects.Any()) { Vars.W.Cast(Vars.W.GetPrediction(Targets.Target).UnitPosition); } } /// <summary> /// The E -> R Combo Logics. /// </summary> if (Vars.R.IsReady() && !Invulnerable.Check(Targets.Target, DamageType.Magical, false) && Vars.getCheckBoxItem(Vars.RMenu, "combo") && Vars.getCheckBoxItem(Vars.WhiteListMenu, Targets.Target.ChampionName.ToLower())) { if (!Vars.R.GetPrediction(Targets.Target).CollisionObjects.Any()) { if (Vars.E.IsReady() && Vars.getCheckBoxItem(Vars.EMenu, "logical")) { Vars.E.Cast(Vars.E.GetPrediction(Targets.Target).UnitPosition); } Vars.R.Cast(Vars.R.GetPrediction(Targets.Target).UnitPosition); } } }
/// <summary> /// Called on do-cast. /// </summary> /// <param name="sender">The sender.</param> /// <param name="args">The args.</param> public static void Weaving(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs args) { if (!args.Target.IsValid <AIHeroClient>() || Bools.IsSpellShielded(args.Target as AIHeroClient)) { return; } }
/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs"/> instance containing the event data.</param> public static void Harass(EventArgs args) { if (!Targets.Target.LSIsValidTarget() || Bools.IsSpellShielded(Targets.Target)) { return; } }
/// <summary> /// Fired when the game is updated. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void Clear(EventArgs args) { if (Bools.HasSheenBuff()) { return; } /// <summary> /// The Clear Q Logics. /// </summary> if (Variables.Q.IsReady() && ObjectManager.Player.ManaPercent > ManaManager.NeededQMana && Menus.getCheckBoxItem(Variables.QMenu, "qspell.farm")) { /// <summary> /// The JungleClear Q Logic. /// </summary> if (Targets.JungleMinions.Any()) { Variables.Q.Cast(Targets.JungleMinions[0].Position); } /// <summary> /// The LaneClear Q Logics. /// </summary> else { /// <summary> /// The Aggressive LaneClear Q Logic. /// </summary> if (HeroManager.Enemies.Any( t => !Bools.IsSpellShielded(t) && t.LSIsValidTarget(Variables.Q2.Range))) { if (Variables.Q2.GetLineFarmLocation(Targets.Minions, Variables.Q2.Width).MinionsHit >= 3 && new Geometry.Polygon.Rectangle( ObjectManager.Player.ServerPosition, ObjectManager.Player.ServerPosition.LSExtend( Targets.Minions[0].ServerPosition, Variables.Q2.Range), Variables.Q2.Width).IsInside(Variables.Q2.GetPrediction(HeroManager.Enemies.FirstOrDefault(t => !Bools.IsSpellShielded(t) && t.LSIsValidTarget(Variables.Q2.Range))).CastPosition)) { Variables.Q.Cast(Variables.Q2.GetLineFarmLocation(Targets.Minions, Variables.Q2.Width).Position); } } /// <summary> /// The LaneClear Q Logic. /// </summary> else if (!HeroManager.Enemies.Any(t => !Bools.IsSpellShielded(t) && t.LSIsValidTarget(Variables.Q2.Range + 100f))) { if (Variables.Q2.GetLineFarmLocation(Targets.Minions, Variables.Q2.Width).MinionsHit >= 3) { Variables.Q.Cast(Variables.Q2.GetLineFarmLocation(Targets.Minions, Variables.Q2.Width).Position); } } } } }
/// <summary> /// Fired when the game is updated. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void Clear(EventArgs args) { if (Bools.HasSheenBuff()) { return; } /// <summary> /// The Q LaneClear Logic. /// </summary> if (Vars.Q.IsReady() && Targets.Minions.Any() && Vars.Menu["spells"]["q"]["laneclear"].GetValue <MenuSliderButton>().BValue) { if (GameObjects.Player.ManaPercent < ManaManager.GetNeededMana(Vars.Q.Slot, Vars.Menu["spells"]["q"]["laneclear"]) && !GameObjects.Player.Buffs.Any(b => b.Name.Equals("visionary"))) { return; } Vars.Q.CastOnUnit( Targets.Minions.FirstOrDefault( m => Vars.GetRealHealth(m) < (float)GameObjects.Player.GetSpellDamage(m, SpellSlot.Q))); } /// <summary> /// The E Clear Logics. /// </summary> if (Vars.E.IsReady() && Vars.Menu["spells"]["e"]["clear"].GetValue <MenuSliderButton>().BValue) { if (GameObjects.Player.ManaPercent < ManaManager.GetNeededMana(Vars.E.Slot, Vars.Menu["spells"]["e"]["clear"]) && !GameObjects.Player.Buffs.Any(b => b.Name.Equals("visionary"))) { return; } /// <summary> /// The E LaneClear Logic. /// </summary> foreach (var minion in Targets.Minions.Where( m => m.IsValidTarget(Vars.E.Range) && Vars.GetRealHealth(m) < (float)GameObjects.Player.GetSpellDamage(m, SpellSlot.E))) { Vars.E.CastOnUnit(minion); } /// <summary> /// The E JungleClear Logic. /// </summary> if (Targets.JungleMinions.Any()) { Vars.E.CastOnUnit(Targets.JungleMinions[0]); } } }
/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void Combo(EventArgs args) { if (Bools.HasSheenBuff() && Targets.Target.IsValidTarget(GameObjects.Player.GetRealAutoAttackRange()) || Invulnerable.Check(Targets.Target)) { return; } /// <summary> /// The W Combo Logic. /// </summary> if (Vars.W.IsReady() && GameObjects.Player.Spellbook.IsAutoAttacking && Vars.Menu["spells"]["w"]["combo"].GetValue <MenuBool>().Value) { if (!Vars.Menu["miscellaneous"]["keeprmana"] || GameObjects.Player.Mana > Vars.W.Instance.SData.Mana + Vars.R.Instance.SData.Mana) { Vars.W.Cast(); } } if (GameObjects.Player.Spellbook.IsAutoAttacking) { return; } /// <summary> /// The Q Combo Logic. /// </summary> if (Vars.Q.IsReady() && Targets.Target.IsValidTarget(Vars.Q.Range) && Vars.Menu["spells"]["q"]["combo"].GetValue <MenuSliderButton>().BValue && Vars.Menu["spells"]["q"]["combo"].GetValue <MenuSliderButton>().SValue > GameObjects.Player.HealthPercent) { if (!Vars.Menu["miscellaneous"]["keeprmana"] || GameObjects.Player.Mana > Vars.Q.Instance.SData.Mana + Vars.R.Instance.SData.Mana) { Vars.Q.CastOnUnit(Targets.Target); } } /// <summary> /// The R Combo Logic. /// </summary> if (Vars.R.IsReady()) { foreach (var target in GameObjects.EnemyHeroes.Where( t => !t.IsUnderEnemyTurret() && t.IsValidTarget(Vars.R.Range) && !t.IsValidTarget(GameObjects.Player.GetRealAutoAttackRange()) && Vars.Menu["spells"]["r"]["combo"].GetValue <MenuBool>().Value && Vars.Menu["spells"]["r"]["whitelist"][t.ChampionName.ToLower()].GetValue <MenuBool>().Value)) { Vars.R.CastOnUnit(target); } } }
/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void Combo(EventArgs args) { if (Bools.HasSheenBuff() || !Targets.Target.LSIsValidTarget()) { return; } /// <summary> /// The E Combo Logic. /// </summary> if (Vars.E.IsReady() && !Targets.Target.LSIsValidTarget(Vars.W.Range) && Targets.Target.LSIsValidTarget(Vars.W.Range + 200f) && !Invulnerable.Check(Targets.Target, DamageType.Magical, false) && Vars.getCheckBoxItem(Vars.EMenu, "engager")) { Vars.E.CastOnUnit(GameObjects.Player); } /// <summary> /// The W Combo Logic. /// </summary> if (Vars.W.IsReady() && Targets.Target.LSIsValidTarget(Vars.W.Range) && !Invulnerable.Check(Targets.Target, DamageType.Magical, false) && Vars.getCheckBoxItem(Vars.WMenu, "combo")) { if (Vars.R.IsReady() && Vars.getSliderItem(Vars.WMenu, "lifesaver") > GameObjects.Player.HealthPercent) { Vars.R.Cast(); } Vars.W.CastOnUnit(Targets.Target); } /// <summary> /// The Q Combo Logic. /// </summary> if (Vars.Q.IsReady() && Targets.Target.LSIsValidTarget(Vars.Q.Range - 100f) && !Invulnerable.Check(Targets.Target, DamageType.Magical) && Vars.getCheckBoxItem(Vars.QMenu, "combo")) { if (!Vars.Q.GetPrediction(Targets.Target).CollisionObjects.Any(c => Targets.Minions.Contains(c))) { if (Vars.R.IsReady() && Vars.getCheckBoxItem(Vars.RMenu, "empq")) { Vars.R.Cast(); } Vars.Q.Cast(Vars.Q.GetPrediction(Targets.Target).UnitPosition); } } }
/// <summary> /// Fired when the game is updated. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void Clear(EventArgs args) { if (Bools.HasSheenBuff()) { return; } /// <summary> /// The Q Clear Logic. /// </summary> if (Vars.Q.IsReady() && GameObjects.Player.ManaPercent > ManaManager.GetNeededMana(Vars.Q.Slot, Vars.Menu["spells"]["q"]["clear"]) && Vars.Menu["spells"]["q"]["clear"].GetValue <MenuSliderButton>().BValue) { /// <summary> /// The Q JungleClear Logic. /// </summary> if (Targets.JungleMinions.Any()) { if (Vars.R.IsReady() && Vars.Menu["spells"]["r"]["empq"].GetValue <MenuBool>().Value) { Vars.R.Cast(); } Vars.Q.Cast(Targets.JungleMinions[0].ServerPosition); } /// <summary> /// The LaneClear Q Logic. /// </summary> else if (Vars.Q.GetCircularFarmLocation(Targets.Minions, 125f).MinionsHit >= 3) { if (Vars.R.IsReady() && Vars.Menu["spells"]["r"]["empq"].GetValue <MenuBool>().Value) { Vars.R.Cast(); } Vars.Q.Cast(Vars.Q.GetCircularFarmLocation(Targets.Minions, 125f).Position); } } /// <summary> /// The W JungleClear Logic. /// </summary> if (Vars.W.IsReady() && Targets.JungleMinions.Any() && GameObjects.Player.ManaPercent > ManaManager.GetNeededMana(Vars.W.Slot, Vars.Menu["spells"]["w"]["jungleclear"]) && Vars.Menu["spells"]["w"]["jungleclear"].GetValue <MenuSliderButton>().BValue) { if (Vars.R.IsReady() && Vars.Menu["spells"]["w"]["lifesaver"].GetValue <MenuSliderButton>().BValue && Vars.Menu["spells"]["w"]["lifesaver"].GetValue <MenuSliderButton>().SValue > GameObjects.Player.HealthPercent) { Vars.R.Cast(); } Vars.W.CastOnUnit(Targets.JungleMinions[0]); } }
/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void Automatic(EventArgs args) { if (GameObjects.Player.IsRecalling()) { return; } /// <summary> /// The Tear Stacking Logic. /// </summary> if (Vars.Q.IsReady() && Bools.HasTear(GameObjects.Player) && Variables.Orbwalker.ActiveMode == OrbwalkingMode.None && GameObjects.Player.CountEnemyHeroesInRange(1500) == 0 && GameObjects.Player.ManaPercent > ManaManager.GetNeededMana(Vars.Q.Slot, Vars.Menu["miscellaneous"]["tear"]) && Vars.Menu["miscellaneous"]["tear"].GetValue <MenuSliderButton>().BValue) { Vars.Q.Cast(GameObjects.Player.ServerPosition.Extend(Game.CursorPos, Vars.Q.Range - 5f)); } /// <summary> /// The Automatic Logics. /// </summary> foreach (var target in GameObjects.EnemyHeroes.Where( t => Bools.IsImmobile(t) && !Invulnerable.Check(t, DamageType.Magical, false))) { /// <summary> /// The Automatic W Logic. /// </summary> if (Vars.W.IsReady() && target.IsValidTarget(Vars.W.Range) && !target.IsValidTarget(500f) && Vars.Menu["spells"]["w"]["logical"].GetValue <MenuBool>().Value) { Vars.W.Cast(target.ServerPosition); } } /// <summary> /// The Semi-Automatic R Logic. /// </summary> if (Vars.R.IsReady() && Vars.Menu["spells"]["r"]["bool"].GetValue <MenuBool>().Value && Vars.Menu["spells"]["r"]["key"].GetValue <MenuKeyBind>().Active) { var target = GameObjects.EnemyHeroes.Where( t => t.IsValidTarget(Vars.R.Range - 100f) && t.IsFacing(GameObjects.Player) && !Invulnerable.Check(t, DamageType.Magical, false) && Vars.Menu["spells"]["r"]["whitelist"][t.ChampionName.ToLower()].GetValue <MenuBool>().Value) .OrderBy(o => o.Health) .FirstOrDefault(); if (target != null) { Vars.R.Cast(target.ServerPosition); } } }
/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void Automatic(EventArgs args) { if (Bools.HasSheenBuff()) { return; } /// <summary> /// The Automatic Q Logic. /// </summary> if (Vars.Q.IsReady() && Vars.getCheckBoxItem(Vars.QMenu, "logical")) { foreach (var target in GameObjects.EnemyHeroes.Where( t => Bools.IsImmobile(t) && !Invulnerable.Check(t) && t.LSIsValidTarget(Vars.Q.Range))) { Vars.Q.Cast(target.ServerPosition); } } /// <summary> /// Block Special AoE. /// </summary> foreach (var target in GameObjects.EnemyHeroes) { switch (target.ChampionName) { case "Jax": if (target.HasBuff("jaxcounterstrike") && target.LSIsValidTarget(355 + GameObjects.Player.BoundingRadius) && target.GetBuff("jaxcounterstrike").EndTime - Game.Time > target.GetBuff("jaxcounterstrike").EndTime - target.GetBuff("jaxcounterstrike").StartTime - (1000 - Game.Ping) / 1000 && Vars.getCheckBoxItem(Vars.WhiteListMenu, $"{target.ChampionName.ToLower()}.jaxcounterstrike")) { Vars.E.Cast(); } break; case "KogMaw": if (target.HasBuff("kogmawicathiansurprise") && target.LSIsValidTarget(355 + GameObjects.Player.BoundingRadius) && target.GetBuff("kogmawicathiansurprise").EndTime - Game.Time > target.GetBuff("kogmawicathiansurprise").EndTime - target.GetBuff("kogmawicathiansurprise").StartTime - (4000 - Game.Ping) / 1000 && Vars.getCheckBoxItem(Vars.WhiteListMenu, $"{target.ChampionName.ToLower()}.kogmawicathiansurprise")) { Vars.E.Cast(); } break; default: break; } } }
[Show, Category(Single)] void ClearSingles() { Ints.Clear(); Strings.Clear(); Floats.Clear(); Bools.Clear(); Vector3s.Clear(); Colors.Clear(); }
public void LazyOnlineToShadow() { One.Shadow = One.LastValue; Two.Shadow = Two.LastValue; Another.Shadow = Another.LastValue; ThisOne.Shadow = ThisOne.LastValue; ANumberWouldBeCool.Shadow = ANumberWouldBeCool.LastValue; Bools.LazyOnlineToShadow(); }
/// <summary> /// Fired when the game is updated. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void Clear(EventArgs args) { if (Bools.HasSheenBuff()) { return; } /// <summary> /// The Q Clear Logics. /// </summary> if (Vars.Q.IsReady() && GameObjects.Player.ManaPercent > ManaManager.GetNeededMana(Vars.Q.Slot, Vars.getSliderItem(Vars.QMenu, "clear")) && Vars.getSliderItem(Vars.QMenu, "clear") != 101) { /// <summary> /// The Q LaneClear Logic. /// </summary> if (Vars.Q.GetLineFarmLocation(Targets.Minions.Where( m => m.Health < (float)GameObjects.Player.LSGetSpellDamage(m, SpellSlot.Q)).ToList(), Vars.Q.Width).MinionsHit >= 3) { Vars.Q.Cast(Vars.Q.GetLineFarmLocation(Targets.Minions.Where( m => m.Health < (float)GameObjects.Player.LSGetSpellDamage(m, SpellSlot.Q)).ToList(), Vars.Q.Width).Position); } /// <summary> /// The Q JungleClear Logic. /// </summary> else if (Targets.JungleMinions.Any()) { Vars.Q.Cast(Targets.JungleMinions[0].ServerPosition); } } /// <summary> /// The E LaneClear Logics. /// </summary> if (Vars.E.IsReady() && GameObjects.Player.ManaPercent > ManaManager.GetNeededMana(Vars.E.Slot, Vars.getSliderItem(Vars.EMenu, "laneclear")) && Vars.getSliderItem(Vars.EMenu, "laneclear") != 101) { if (Targets.Minions.Count( m => Bools.IsPerfectRendTarget(m) && Vars.GetRealHealth(m) < (float)GameObjects.Player.LSGetSpellDamage(m, SpellSlot.E) + (float)GameObjects.Player.LSGetSpellDamage(m, SpellSlot.E, DamageStage.Buff)) >= 2) { Vars.E.Cast(); } } }
public string Save() { return(JsonUtility.ToJson(new SaveData { strings = Strings.Save(), bools = Bools.Save(), ints = Ints.Save(), floats = Floats.Save(), })); }
public void LazyShadowToOnline() { One.Cyclic = One.Shadow; Two.Cyclic = Two.Shadow; Another.Cyclic = Another.Shadow; ThisOne.Cyclic = ThisOne.Shadow; ANumberWouldBeCool.Cyclic = ANumberWouldBeCool.Shadow; Bools.LazyShadowToOnline(); }
/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void Combo(EventArgs args) { if (Bools.HasSheenBuff() && GameObjects.EnemyHeroes.Any(t => t.IsValidTarget(GameObjects.Player.GetRealAutoAttackRange()))) { return; } /// <summary> /// The W Combo Logic. /// </summary> if (Vars.W.IsReady() && GameObjects.EnemyHeroes.Any(t => t.IsValidTarget(Vars.W.Range)) && Vars.Menu["spells"]["w"]["combo"].GetValue <MenuBool>().Value) { Vars.W.Cast(); } if (!Targets.Target.IsValidTarget() || Invulnerable.Check(Targets.Target)) { return; } /// <summary> /// The Q Combo Logic. /// </summary> if (Vars.Q.IsReady() && Targets.Target.IsValidTarget(Vars.Q.Range) && GameObjects.Player.Mana > Vars.Q.Instance.ManaCost + Vars.W.Instance.ManaCost && Vars.Menu["spells"]["q"]["combo"].GetValue <MenuBool>().Value) { if (!Vars.Q.GetPrediction(Targets.Target).CollisionObjects.Any()) { Vars.Q.Cast(Vars.Q.GetPrediction(Targets.Target).UnitPosition); } } /// <summary> /// The E Combo Logic. /// </summary> if (Vars.E.IsReady() && Targets.Target.IsValidTarget(Vars.E.Range - 100f) && GameObjects.Player.Mana > Vars.E.Instance.ManaCost + Vars.W.Instance.ManaCost && Vars.Menu["spells"]["e"]["combo"].GetValue <MenuBool>().Value) { Vars.E.Cast(Vars.E.GetPrediction(Targets.Target).UnitPosition); } /// <summary> /// The R Combo Logic. /// </summary> if (Vars.R.IsReady() && Targets.Target.HealthPercent < 50 && Targets.Target.IsValidTarget(Vars.R.Range) && GameObjects.Player.Mana > Vars.W.Instance.ManaCost + 50 * (GameObjects.Player.GetBuffCount("kogmawlivingartillerycost") + 1) && Vars.Menu["spells"]["r"]["combo"].GetValue <MenuSliderButton>().BValue && Vars.Menu["spells"]["r"]["combo"].GetValue <MenuSliderButton>().SValue > GameObjects.Player.GetBuffCount("kogmawlivingartillerycost")) { Vars.R.Cast(Vars.R.GetPrediction(Targets.Target).CastPosition); } }
public void Load(string save) { var data = JsonUtility.FromJson <SaveData>(save); Strings.Load(data.strings); Bools.Load(data.bools); Ints.Load(data.ints); Floats.Load(data.floats); }
public static bool GetBool(string key) { if (Bools == null) { Bools = new Dictionary <string, bool>(); } return((Bools.ContainsKey(key)) ? Bools[key] : false); }
/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void Automatic(EventArgs args) { if (GameObjects.Player.LSIsRecalling()) { return; } /// <summary> /// The E Missile Manager. /// </summary> if (Vars.E.IsReady() && Lux.EMissile != null && GameObjects.Player.Spellbook.GetSpell(SpellSlot.E).ToggleState != 1) { if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Combo)) { foreach (var target in GameObjects.EnemyHeroes.Where( t => !Bools.IsImmobile(t) && !t.HasBuff("luxilluminatingfraulein") && t.Distance(Lux.EMissile.Position) < Vars.E.Width - 10f)) { Vars.E.Cast(); break; } } if (Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.LaneClear) || Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.JungleClear)) { if (Targets.EMinions.Any() && Targets.EMinions.Count() >= 3) { Vars.E.Cast(); } } } /// <summary> /// The Automatic Q Logic. /// </summary> if (Vars.Q.IsReady() && Vars.getCheckBoxItem(Vars.QMenu, "logical")) { foreach (var target in GameObjects.EnemyHeroes.Where( t => Bools.IsImmobile(t) && !Invulnerable.Check(t) && t.LSIsValidTarget(Vars.Q.Range))) { if (!Vars.Q.GetPrediction(target).CollisionObjects.Any()) { Vars.Q.Cast(target.ServerPosition); } } } }
/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void Automatic(EventArgs args) { if (GameObjects.Player.IsRecalling()) { return; } /// <summary> /// The Automatic Q Logic. /// </summary> if (Vars.Q.IsReady() && Vars.Menu["spells"]["q"]["logical"].GetValue <MenuBool>().Value) { foreach (var target in GameObjects.EnemyHeroes.Where( t => Bools.IsImmobile(t) && !Invulnerable.Check(t) && t.IsValidTarget(Vars.Q.Range))) { if (!Vars.Q.GetPrediction(Targets.Target).CollisionObjects.Any(c => Targets.Minions.Contains(c))) { Vars.Q.Cast(target.ServerPosition); } } } /// <summary> /// The Automatic E Logic. /// </summary> if (Vars.E.IsReady() && Vars.Menu["spells"]["e"]["logical"].GetValue <MenuBool>().Value) { foreach (var target in GameObjects.EnemyHeroes.Where( t => Bools.IsImmobile(t) && !Invulnerable.Check(t) && t.IsValidTarget(Vars.E.Range))) { Vars.E.Cast(target.ServerPosition); } } /// <summary> /// The Automatic R Logic. /// </summary> if (Vars.R.IsReady() && GameObjects.Player.ManaPercent > ManaManager.GetNeededMana(Vars.R.Slot, Vars.Menu["spells"]["r"]["logical"]) && Vars.Menu["spells"]["r"]["logical"].GetValue <MenuSliderButton>().BValue && Vars.Menu["spells"]["r"]["logical"].GetValue <MenuSliderButton>().SValue > GameObjects.Player.GetBuffCount("kogmawlivingartillerycost")) { foreach (var target in GameObjects.EnemyHeroes.Where( t => Bools.IsImmobile(t) && t.HealthPercent < 50 && !Invulnerable.Check(t) && t.IsValidTarget(Vars.R.Range))) { Vars.R.Cast(target.ServerPosition); } } }
/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void Combo(EventArgs args) { if (!Bools.HasSheenBuff() && Targets.Target.LSIsValidTarget() && !Invulnerable.Check(Targets.Target)) { /// <summary> /// The E AoE Logic. /// </summary> if (Vars.E.IsReady() && Targets.Target.LSIsValidTarget(Vars.E.Range) && Targets.Target.CountEnemyHeroesInRange(Vars.E.Width) >= Vars.getSliderItem(Vars.RMenu, "aoe") && Vars.getSliderItem(Vars.EMenu, "aoe") != 6) { Vars.E.Cast(GameObjects.Player.ServerPosition.LSExtend( Targets.Target.ServerPosition, GameObjects.Player.Distance(Targets.Target) + Targets.Target.BoundingRadius * 2)); } if (GameObjects.EnemyHeroes.Any(t => t.LSIsValidTarget(Vars.PowPow.Range))) { return; } /// <summary> /// The W Combo Logic. /// </summary> if (Vars.W.IsReady() && !GameObjects.Player.IsUnderEnemyTurret() && Targets.Target.LSIsValidTarget(Vars.W.Range) && GameObjects.Player.CountEnemyHeroesInRange(Vars.Q.Range) < 3 && Vars.getCheckBoxItem(Vars.WMenu, "combo")) { if (!Vars.W.GetPrediction(Targets.Target).CollisionObjects.Any()) { Vars.W.Cast(Vars.W.GetPrediction(Targets.Target).UnitPosition); } } } /// <summary> /// The R AoE Logic. /// </summary> if (Vars.R.IsReady() && Vars.getSliderItem(Vars.RMenu, "aoe") != 6) { foreach (var target in GameObjects.EnemyHeroes.Where( t => t.LSIsValidTarget(Vars.W.Range) && t.CountEnemyHeroesInRange(225f) >= Vars.getSliderItem(Vars.RMenu, "aoe"))) { Vars.R.Cast(target.ServerPosition); } } }
/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void Automatic(EventArgs args) { if (GameObjects.Player.IsRecalling()) { return; } /// <summary> /// The Automatic Q Logic. /// </summary> if (Vars.Q.IsReady() && Vars.Menu["spells"]["q"]["logical"].GetValue <MenuBool>().Value) { foreach (var target in GameObjects.EnemyHeroes.Where( t => Bools.IsImmobile(t) && !Invulnerable.Check(t) && t.IsValidTarget(Vars.Q.Range) && !Vars.AnyWall(GameObjects.Player.ServerPosition, t.ServerPosition))) { Vars.Q.Cast(target.ServerPosition); return; } } /// <summary> /// The Automatic W Logic. /// </summary> if (Vars.W.IsReady() && Vars.Menu["spells"]["w"]["logical"].GetValue <MenuBool>().Value) { foreach (var target in GameObjects.EnemyHeroes.Where( t => Bools.IsImmobile(t) && t.IsValidTarget(Vars.W.Range) && !Invulnerable.Check(t, DamageType.Magical, false))) { Vars.W.Cast(target.ServerPosition); } } /// <summary> /// The Semi-Automatic R Management. /// </summary> if (Vars.R.IsReady() && Vars.Menu["spells"]["r"]["bool"].GetValue <MenuBool>().Value && Vars.Menu["spells"]["r"]["key"].GetValue <MenuKeyBind>().Active) { var target = GameObjects.EnemyHeroes.Where( t => !Invulnerable.Check(t) && t.IsValidTarget(Vars.R.Range) && Vars.Menu["spells"]["r"]["whitelist"][Targets.Target.ChampionName.ToLower()] .GetValue <MenuBool>().Value).OrderBy(o => o.Health).FirstOrDefault(); if (target != null) { Vars.R.Cast(Vars.R.GetPrediction(target).UnitPosition); } } }
/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void Killsteal(EventArgs args) { /// <summary> /// The KillSteal E Logic. /// </summary> if (Vars.E.IsReady() && GameObjects.Player.Spellbook.GetSpell(SpellSlot.E).ToggleState == 1 && Vars.Menu["spells"]["e"]["killsteal"].GetValue <MenuBool>().Value) { foreach (var target in GameObjects.EnemyHeroes.Where( t => t.IsValidTarget(Vars.E.Range) && !Invulnerable.Check(t, DamageType.Magical) && Vars.GetRealHealth(t) < (float)GameObjects.Player.GetSpellDamage(t, SpellSlot.E))) { Vars.E.Cast(Vars.E.GetPrediction(target).CastPosition); return; } } /// <summary> /// The KillSteal Q Logic. /// </summary> if (Vars.Q.IsReady() && Vars.Menu["spells"]["q"]["killsteal"].GetValue <MenuBool>().Value) { foreach (var target in GameObjects.EnemyHeroes.Where( t => t.IsValidTarget(Vars.Q.Range) && !Invulnerable.Check(t, DamageType.Magical) && Vars.GetRealHealth(t) < (float)GameObjects.Player.GetSpellDamage(t, SpellSlot.Q))) { if (!Vars.Q.GetPrediction(target).CollisionObjects.Any()) { Vars.Q.Cast(Vars.Q.GetPrediction(target).UnitPosition); return; } } } /// <summary> /// The KillSteal R Logic. /// </summary> if (Vars.R.IsReady() && Vars.Menu["spells"]["r"]["killsteal"].GetValue <MenuBool>().Value) { foreach (var target in GameObjects.EnemyHeroes.Where( t => t.IsValidTarget(Vars.R.Range) && !Invulnerable.Check(t, DamageType.Magical) && Vars.GetRealHealth(t) < (float)GameObjects.Player.GetSpellDamage(t, SpellSlot.R))) { if (Bools.IsImmobile(target) || !target.IsValidTarget(GameObjects.Player.GetRealAutoAttackRange())) { Vars.R.Cast(Vars.R.GetPrediction(target).UnitPosition); } } } }
/// <summary> /// Called when the game updates itself. /// </summary> /// <param name="args">The <see cref="EventArgs" /> instance containing the event data.</param> public static void Combo(EventArgs args) { /// <summary> /// The W Combo Logic. /// </summary> if (Vars.W.IsReady() && Targets.Target.IsValidTarget(Vars.W.Range) && Vars.Menu["spells"]["w"]["combo"].GetValue <MenuBool>().Value) { if (Vars.R.IsReady() && GameObjects.Player.HealthPercent <= Vars.Menu["spells"]["w"]["lifesaver"].GetValue <MenuSliderButton>().SValue && Vars.Menu["spells"]["w"]["lifesaver"].GetValue <MenuSliderButton>().BValue) { Vars.R.Cast(); } Vars.W.CastOnUnit(Targets.Target); } if (GameObjects.Player.HasBuff("KarmaMantra") && GameObjects.Player.HealthPercent <= Vars.Menu["spells"]["w"]["lifesaver"].GetValue <MenuSliderButton>().SValue && Vars.Menu["spells"]["w"]["lifesaver"].GetValue <MenuSliderButton>().BValue) { return; } /// <summary> /// The E Combo Logic. /// </summary> if (Vars.E.IsReady() && GameObjects.EnemyHeroes.Any(t => t.IsValidTarget(GameObjects.Player.GetRealAutoAttackRange())) && !GameObjects.EnemyHeroes.Any(t => t.IsValidTarget(GameObjects.Player.GetRealAutoAttackRange())) && Vars.Menu["spells"]["e"]["engager"].GetValue <MenuBool>().Value) { Vars.E.CastOnUnit(GameObjects.Player); } if ((Bools.HasSheenBuff() && Targets.Target.IsValidTarget(GameObjects.Player.GetRealAutoAttackRange())) || !Targets.Target.IsValidTarget() || Invulnerable.Check(Targets.Target, DamageType.Magical, false)) { return; } /// <summary> /// The Q Combo Logic. /// </summary> if (Vars.Q.IsReady() && Targets.Target.IsValidTarget(Vars.Q.Range - 100f) && Vars.Menu["spells"]["q"]["combo"].GetValue <MenuBool>().Value) { if (!Vars.Q.GetPrediction(Targets.Target).CollisionObjects.Any(c => Targets.Minions.Contains(c))) { if (Vars.R.IsReady() && Vars.Menu["spells"]["r"]["empq"].GetValue <MenuBool>().Value) { Vars.R.Cast(); } Vars.Q.Cast(Vars.Q.GetPrediction(Targets.Target).UnitPosition); } } }
/// <summary> /// Called on gapclosing spell. /// </summary> /// <param name="gapcloser">The <see cref="ActiveGapcloser"/> instance containing the event data.</param> public static void OnEnemyGapcloser(ActiveGapcloser gapcloser) { if (Variables.E.IsReady() && !Bools.IsSpellShielded(gapcloser.Sender) && ObjectManager.Player.Distance(gapcloser.End) < Variables.E.Range && Variables.Menu.Item($"{Variables.MainMenuName}.espell.gp").IsActive()) { Variables.E.Cast(gapcloser.End); } }