/// <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 (Orianna.BallPosition == null) { return; } /// <summary> /// The W Combo Logic. /// </summary> if (Vars.W.IsReady() && GameObjects.EnemyHeroes.Any( t => t.Distance((Vector2)Orianna.BallPosition) < Vars.W.Range) && Vars.Menu["spells"]["w"]["combo"].GetValue <MenuBool>().Value) { Vars.W.Cast(); return; } /// <summary> /// The E Combo Logic. /// </summary> if (Vars.E.IsReady() && GameObjects.Player.Mana - Vars.E.Instance.ManaCost > Vars.Q.Instance.ManaCost + Vars.W.Instance.ManaCost && Vars.Menu["spells"]["e"]["combo"].GetValue <MenuBool>().Value) { foreach ( var ally in GameObjects.AllyHeroes.OrderBy(o => o.Health).Where(t => t.IsValidTarget(Vars.E.Range, false))) { var polygon = new Geometry.Rectangle( ally.ServerPosition, ally.ServerPosition.Extend( (Vector2)Orianna.BallPosition, ally.Distance((Vector2)Orianna.BallPosition)), Vars.Q.Width); var objAiHero = GameObjects.EnemyHeroes.FirstOrDefault( t => t.IsValidTarget() && !Invulnerable.Check(t, DamageType.Magical) && !polygon.IsOutside((Vector2)t.ServerPosition)); if (objAiHero != null) { Vars.E.CastOnUnit(ally); return; } } } /// <summary> /// The Combo R Logic. /// </summary> if (Vars.R.IsReady() && GameObjects.EnemyHeroes.Any( t => t.Distance((Vector2)Orianna.BallPosition) < Vars.R.Range - 25f && Vars.GetRealHealth(t) < (float)GameObjects.Player.GetSpellDamage(t, SpellSlot.R) + (float)GameObjects.Player.GetSpellDamage(t, SpellSlot.Q) * 2 && Vars.Menu["spells"]["r"]["whitelist"][t.ChampionName.ToLower()].GetValue <MenuBool>().Value) && Vars.Menu["spells"]["r"]["combo"].GetValue <MenuBool>().Value) { Vars.R.Cast(); } if (Bools.HasSheenBuff() && Targets.Target.IsValidTarget(Vars.AaRange) || !Targets.Target.IsValidTarget() || Invulnerable.Check(Targets.Target, DamageType.Magical)) { return; } /// <summary> /// The Combo Q Logic. /// </summary> if (Vars.Q.IsReady() && Targets.Target.IsValidTarget(Vars.Q.Range) && Vars.Menu["spells"]["q"]["combo"].GetValue <MenuBool>().Value) { if (Vars.E.IsReady() && Vars.Menu["spells"]["e"]["logical"].GetValue <MenuBool>().Value && ((Vector2)Orianna.BallPosition).Distance((Vector2)GameObjects.Player.ServerPosition) > Vars.AaRange && ((Vector2)Orianna.BallPosition).Distance((Vector2)Targets.Target.ServerPosition) > ((Vector2)Orianna.BallPosition).Distance((Vector2)GameObjects.Player.ServerPosition)) { Vars.E.Cast(GameObjects.Player); } Vars.Q.Cast(Vars.Q.GetPrediction(Targets.Target).CastPosition); } }
/// <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() && GameObjects.EnemyHeroes.Any( t => t.IsValidTarget() && t.Distance((Vector2)Orianna.GetBallPosition) < Vars.W.Range) && Vars.Menu["spells"]["w"]["combo"].GetValue <MenuBool>().Value) { Vars.W.Cast(); } /// <summary> /// The E Combo Logic. /// </summary> if (Vars.E.IsReady() && GameObjects.Player.Mana - Vars.E.Instance.ManaCost > Vars.Q.Instance.ManaCost + Vars.W.Instance.ManaCost && Vars.Menu["spells"]["e"]["combo"].GetValue <MenuBool>().Value) { foreach (var ally in GameObjects.AllyHeroes.OrderBy(o => o.Health).Where(t => t.IsValidTarget(Vars.E.Range, false))) { var polygon = new Geometry.Rectangle( ally.ServerPosition, ally.ServerPosition.Extend( (Vector2)Orianna.GetBallPosition, ally.Distance((Vector2)Orianna.GetBallPosition)), Vars.E.Width); if ( GameObjects.EnemyHeroes.Any( t => t.IsValidTarget() && !Invulnerable.Check(t, DamageType.Magical, false) && !polygon.IsOutside((Vector2)t.ServerPosition))) { Vars.E.CastOnUnit(ally); } } } if (Bools.HasSheenBuff() && Targets.Target.IsValidTarget(GameObjects.Player.GetRealAutoAttackRange()) || !Targets.Target.IsValidTarget() || Invulnerable.Check(Targets.Target, DamageType.Magical, false)) { return; } /// <summary> /// The Combo Q Logic. /// </summary> if (Vars.Q.IsReady() && Targets.Target.IsValidTarget(Vars.Q.Range) && Vars.Menu["spells"]["q"]["combo"].GetValue <MenuBool>().Value) { if ((Vector2)Orianna.GetBallPosition != (Vector2)GameObjects.Player.ServerPosition && ((Vector2)Orianna.GetBallPosition).Distance((Vector2)Targets.Target.ServerPosition) > ((Vector2)Orianna.GetBallPosition).Distance((Vector2)GameObjects.Player.ServerPosition)) { if (Vars.E.IsReady() && Vars.Menu["spells"]["e"]["logical"].GetValue <MenuBool>().Value) { Vars.E.Cast(GameObjects.Player); } } else { Vars.Q.Cast(Vars.Q.GetPrediction(Targets.Target).CastPosition); } } }
/// <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 (Variables.W.IsReady() && HeroManager.Enemies.Any( t => t.IsValidTarget() && t.Distance((Vector2)Orianna.GetBallPosition) < Variables.W.Range) && Variables.WMenu.Item("combo").IsActive()) { Variables.W.Cast(); } /// <summary> /// The E Combo Logic. /// </summary> if (Variables.E.IsReady() && ObjectManager.Player.Mana - Variables.E.Instance.ManaCost > Variables.Q.Instance.ManaCost + Variables.W.Instance.ManaCost && Variables.EMenu.Item("combo").IsActive()) { foreach (var ally in HeroManager.Allies.OrderBy(o => o.Health).Where(t => t.IsValidTarget(Variables.E.Range, false))) { var polygon = new Geometry.Rectangle( ally.ServerPosition, ally.ServerPosition.Extend( Orianna.GetBallPosition, ally.Distance((Vector2)Orianna.GetBallPosition)), Variables.E.Width); if ( HeroManager.Enemies.Any( t => t.IsValidTarget() && !TargetSelector.IsInvulnerable(t, TargetSelector.DamageType.Magical, false) && !polygon.IsOutside((Vector2)t.ServerPosition))) { Variables.E.CastOnUnit(ally); } } } if (Bools.HasSheenBuff() && Targets.Target.IsValidTarget(Orbwalking.GetRealAutoAttackRange(Targets.Target)) || !Targets.Target.IsValidTarget() || TargetSelector.IsInvulnerable(Targets.Target, TargetSelector.DamageType.Magical, false)) { return; } /// <summary> /// The Combo Q Logic. /// </summary> if (Variables.Q.IsReady() && Targets.Target.IsValidTarget(Variables.Q.Range) && Variables.QMenu.Item("combo").IsActive()) { if ((Vector2)Orianna.GetBallPosition != (Vector2)ObjectManager.Player.ServerPosition && ((Vector2)Orianna.GetBallPosition).Distance((Vector2)Targets.Target.ServerPosition) > ((Vector2)Orianna.GetBallPosition).Distance((Vector2)ObjectManager.Player.ServerPosition)) { if (Variables.E.IsReady() && Variables.EMenu.Item("logical").IsActive()) { Variables.E.Cast(ObjectManager.Player); } } else { Variables.Q.Cast(Variables.Q.GetPrediction(Targets.Target).CastPosition); } } }