private static void Combo() { Orbwalker.SetAttacks(true); var target = SimpleTs.GetTarget(E.Range, SimpleTs.DamageType.Magical); if (target == null) { return; } if (DamageLib.IsKillable(target, new[] { DamageLib.SpellType.Q, DamageLib.SpellType.W, DamageLib.SpellType.E, DamageLib.SpellType.R, DamageLib.SpellType.DFG })) { if (ObjectManager.Player.Distance(target) < E.Range && DFG.IsReady()) { DFG.Cast(target); } if (ObjectManager.Player.Distance(target) < Q.Range && Q.IsReady()) { Q.CastOnUnit(target, Config.Item("QNFE").GetValue <bool>()); } if (ObjectManager.Player.Distance(target) < E.Range && E.IsReady() && !Q.IsReady()) { E.CastOnUnit(target); } if (ObjectManager.Player.Distance(target) < W.Range && W.IsReady() && !Q.IsReady()) { W.Cast(); } if (ObjectManager.Player.Distance(target) < R.Range && R.IsReady() && !Q.IsReady()) { R.Cast(); } } else { if (ObjectManager.Player.Distance(target) < Q.Range && Q.IsReady()) { Q.CastOnUnit(target, true); } if (Config.Item("ComboActive").GetValue <KeyBind>().Active&& ObjectManager.Player.Distance(target) < E.Range && E.IsReady()) { E.CastOnUnit(target); } if (ObjectManager.Player.Distance(target) < W.Range && W.IsReady()) { W.Cast(); } } }
private static void LaneClear() { if (!Q.IsReady() || !Player.CanCast) { return; } var unit = ObjectManager.Get <Obj_AI_Minion>() .First( minion => minion.IsValid && minion.IsVisible && !minion.IsDead && minion.IsValidTarget(Q.Range, true, Player.ServerPosition) && DamageLib.IsKillable(minion, new[] { DamageLib.SpellType.Q })); CastQ(unit, "LaneClear"); }
private static void ExecuteCombo() { var target = SimpleTs.GetTarget(_q.Range, SimpleTs.DamageType.Magical); if (target == null) { return; } if (_q.IsReady(2000) && _e.IsReady(2000) && _r.IsReady() && DamageLib.IsKillable( target, new[] { DamageLib.SpellType.Q, DamageLib.SpellType.W, DamageLib.SpellType.E, DamageLib.SpellType.E, DamageLib.SpellType.R, DamageLib.SpellType.R, DamageLib.SpellType.IGNITE })) { if (_igniteSlot != SpellSlot.Unknown && ObjectManager.Player.SummonerSpellbook.CanUseSpell(_igniteSlot) == SpellState.Ready) { ObjectManager.Player.SummonerSpellbook.CastSpell(_igniteSlot, target); } if (ObjectManager.Player.Distance(target) <= _r.Range + _r.Width) { _r.Cast(target, true, true); } if (ObjectManager.Player.Distance(target) <= _w.Range + _w.Width) { _w.Cast(target, true, true); } if (ObjectManager.Player.Distance(target) <= _q.Range + _q.Width) { _q.Cast(target, true, true); } if (ObjectManager.Player.Distance(target) <= _e.Range + target.BoundingRadius && IsPoisoned(target) || DamageLib.IsKillable(target, new[] { DamageLib.SpellType.E })) { _e.CastOnUnit(target, true); } } else { if (_w.IsReady() && ObjectManager.Player.Distance(target) <= _w.Range + _w.Width) { _w.Cast(target, true, true); } if (_q.IsReady() && ObjectManager.Player.Distance(target) <= _q.Range + _q.Width) { _q.Cast(target, true, true); } if (_e.IsReady() && ObjectManager.Player.Distance(target) <= _e.Range + target.BoundingRadius && IsPoisoned(target) || DamageLib.IsKillable(target, new[] { DamageLib.SpellType.E })) { _e.CastOnUnit(target, true); } } }
private static void Combo() { Orbwalker.SetAttacks(true); var qTarget = SimpleTs.GetTarget(Q.Range, SimpleTs.DamageType.Magical); var eTarget = SimpleTs.GetTarget(E.Range, SimpleTs.DamageType.Magical); var rTarget = SimpleTs.GetTarget(R.Range, SimpleTs.DamageType.Magical); bool useQ = Config.Item("UseQCombo").GetValue <bool>(); bool useW = Config.Item("UseWCombo").GetValue <bool>(); bool useE = Config.Item("UseECombo").GetValue <bool>(); bool useR = Config.Item("UseRCombo").GetValue <bool>(); if (Config.Item("UseItems").GetValue <bool>()) { BKR.Cast(qTarget); YOU.Cast(); BWC.Cast(qTarget); if (Player.Distance(qTarget) <= HDR.Range) { HDR.Cast(qTarget); } if (Player.Distance(qTarget) <= TMT.Range) { TMT.Cast(qTarget); } } if (Q.IsReady() && E.IsReady() && R.IsReady() && DamageLib.IsKillable( qTarget, new[] { DamageLib.SpellType.Q, DamageLib.SpellType.E, DamageLib.SpellType.R, DamageLib.SpellType.AD, DamageLib.SpellType.AD })) { if (qTarget != null && useQ && Q.IsReady()) { if ((Config.Item("NoQNear").GetValue <bool>() && Player.Distance(qTarget) < Player.AttackRange + 50) || (Config.Item("EbeforeQ").GetValue <bool>() && E.IsReady())) { return; } } Q.Cast(qTarget, true, true); if (rTarget != null && useR && R.IsReady()) { R.Cast(rTarget, true); } if (useW && W.IsReady()) { if (Player.Health < (Player.MaxHealth * (Config.Item("SwitchLife").GetValue <Slider>().Value) * 0.01) && !WHealing) { W.Cast(); } else if (Player.Health > (Player.MaxHealth * (Config.Item("SwitchPower").GetValue <Slider>().Value) * 0.01) && WHealing) { W.Cast(); } } if (eTarget != null && useE && E.IsReady()) { E.Cast(eTarget, true); } } else { if (qTarget != null && useQ && Q.IsReady()) { if ((Config.Item("NoQNear").GetValue <bool>() && Player.Distance(qTarget) < Player.AttackRange + 50) || (Config.Item("EbeforeQ").GetValue <bool>() && E.IsReady())) { return; } } Q.Cast(qTarget, true, true); if (useW && W.IsReady()) { if (Player.Health < (Player.MaxHealth * 0.4) && !WHealing) { W.Cast(); } else if (Player.Health > (Player.MaxHealth * 0.55) && WHealing) { W.Cast(); } } if (eTarget != null && useE && E.IsReady()) { E.Cast(eTarget, true); } } }
private static void ExecuteKillsteal() { var target = SimpleTs.GetTarget(E.Range, SimpleTs.DamageType.Magical); if (target == null) { return; } if (E.IsReady() && DamageLib.IsKillable(target, new[] { DamageLib.SpellType.E }) && ObjectManager.Player.Distance(target) < E.Range + target.BoundingRadius) { E.CastOnUnit(target, true); } if (Q.IsReady() && DamageLib.IsKillable(target, new[] { Tuple.Create(DamageLib.SpellType.Q, DamageLib.StageType.FirstDamage) }) && ObjectManager.Player.Distance(target) < Q.Range + target.BoundingRadius) { Q.CastOnUnit(target, true); } if (W.IsReady() && DamageLib.IsKillable(target, new[] { DamageLib.SpellType.W }) && ObjectManager.Player.Distance(target) < W.Range) { W.Cast(); } if (Q.IsReady() && E.IsReady() && DamageLib.IsKillable(target, new[] { Tuple.Create(DamageLib.SpellType.Q, DamageLib.StageType.FirstDamage), Tuple.Create(DamageLib.SpellType.E, DamageLib.StageType.Default) }) && ObjectManager.Player.Distance(target) < Q.Range + target.BoundingRadius) { Q.CastOnUnit(target, true); E.CastOnUnit(target, true); } if (Q.IsReady() && E.IsReady() && W.IsReady() && DamageLib.IsKillable(target, new[] { DamageLib.SpellType.Q, DamageLib.SpellType.W, DamageLib.SpellType.E }) && ObjectManager.Player.Distance(target) < Q.Range + target.BoundingRadius) { Q.Cast(target); E.Cast(target); if (ObjectManager.Player.Distance(target) < W.Range) { W.Cast(); } } if (IgniteSlot != SpellSlot.Unknown && ObjectManager.Player.SummonerSpellbook.CanUseSpell(IgniteSlot) == SpellState.Ready && ObjectManager.Player.Distance(target) < 600 && DamageLib.IsKillable(target, new[] { DamageLib.SpellType.IGNITE })) { ObjectManager.Player.SummonerSpellbook.CastSpell(IgniteSlot, target); } }
private static void ExecuteCombo() { var target = SimpleTs.GetTarget(Q.Range, SimpleTs.DamageType.Magical); if (target == null) { return; } if (Q.IsReady(2000) && E.IsReady(2000) && R.IsReady() && DamageLib.IsKillable(target, new[] { DamageLib.SpellType.Q, DamageLib.SpellType.W, DamageLib.SpellType.E, DamageLib.SpellType.E, DamageLib.SpellType.R, DamageLib.SpellType.R, DamageLib.SpellType.IGNITE })) { if (IgniteSlot != SpellSlot.Unknown && ObjectManager.Player.SummonerSpellbook.CanUseSpell(IgniteSlot) == SpellState.Ready) { ObjectManager.Player.SummonerSpellbook.CastSpell(IgniteSlot, target); } if (ObjectManager.Player.Distance(target) <= R.Range + R.Width) { R.Cast(target, true, true); } if (ObjectManager.Player.Distance(target) <= W.Range + W.Width) { W.Cast(target, true, true); } if (ObjectManager.Player.Distance(target) <= Q.Range + Q.Width) { Q.Cast(target, true, true); } if (ObjectManager.Player.Distance(target) <= E.Range + target.BoundingRadius && IsPoisoned(target) || DamageLib.IsKillable(target, new[] { DamageLib.SpellType.E })) { E.CastOnUnit(target, true); } } else { if (W.IsReady() && ObjectManager.Player.Distance(target) <= W.Range + W.Width) { W.Cast(target, true, true); } if (Q.IsReady() && ObjectManager.Player.Distance(target) <= Q.Range + Q.Width) { Q.Cast(target, true, true); } if (E.IsReady() && ObjectManager.Player.Distance(target) <= E.Range + target.BoundingRadius && IsPoisoned(target) || DamageLib.IsKillable(target, new[] { DamageLib.SpellType.E })) { E.CastOnUnit(target, true); } } }