private static void SolvingWaitList() { if (!Q.IsReady(1000)) { Qstate = 1; } if (waitQ == true && TTTar.IsValidTargetLS()) { //if (Utils.GameTimeTickCount - cQ >= 350 + Player.AttackCastDelay - Game.Ping / 2) if (Orbwalker.ActiveMode != Orbwalking.OrbwalkingMode.LaneClear) { if (Qmode == 0 && TTTar != null) { Q.Cast(TTTar.Position); } else { Q.Cast(Game.CursorPos); } } else { if (Qmode == 0 && TTTar != null) { Q.Cast(TTTar.Position); } else { Q.Cast(Game.CursorPos); } } if (Environment.TickCount - waitQTick >= 500 + Game.Ping / 2) { waitQ = false; } } if (waitR2 == true && TTTar.IsValidTargetLS()) { R.Cast(TTTar as Obj_AI_Base); if (Environment.TickCount - waitQTick >= 500 + Game.Ping / 2) { waitQ = false; } } if (Q.IsReady() && UseQBeforeExpiry && !Player.IsRecalling()) { if (Qstate != 1 && Utils.GameTimeTickCount - cQ <= 3800 - Game.Ping / 2 && Utils.GameTimeTickCount - cQ >= 3300 - Game.Ping / 2) { Q.Cast(Game.CursorPos); } } }
public void Orbwalker_AfterAttack(AttackableUnit unit, AttackableUnit target) { if (W.IsReady() && !Program.None && target.IsValidTargetLS()) { var t = target as AIHeroClient; if (t != null) { if (Player.GetAutoAttackDamage(t) * 3 > t.Health - OktwCommon.GetIncomingDamage(t)) { W.Cast(); } if (Program.Combo && Player.Mana > RMANA + WMANA) { W.Cast(); } else if (Config.Item("harasW", true).GetValue <bool>() && !Player.UnderTurret(true) && Player.Mana > RMANA + WMANA + QMANA && Config.Item("haras" + t.ChampionName).GetValue <bool>()) { W.Cast(); } } else { var t2 = TargetSelector.GetTarget(900, TargetSelector.DamageType.Physical); if (t2.IsValidTargetLS() && Config.Item("harasW", true).GetValue <bool>() && Config.Item("haras" + t2.ChampionName).GetValue <bool>() && !Player.UnderTurret(true) && Player.Mana > RMANA + WMANA + QMANA && t2.Distance(target.Position) < 500) { W.Cast(); } if (target is Obj_AI_Minion && Program.LaneClear && Config.Item("farmW", true).GetValue <bool>() && Player.ManaPercent > Config.Item("Mana", true).GetValue <Slider>().Value&& !Player.UnderTurret(true)) { var minions = Cache.GetMinions(target.Position, 500); if (minions.Count >= Config.Item("LCminions", true).GetValue <Slider>().Value) { W.Cast(); } } } } }
private void Orbwalking_AfterAttack(AttackableUnit unit, AttackableUnit target) { AIHeroClient t = LeagueSharp.Common.TargetSelector.GetTarget(1100, LeagueSharp.Common.TargetSelector.DamageType.Physical, true); if (!unit.IsMe || !W.IsReady() || !target.IsValidTargetLS() || !target.IsEnemy) { return; } if (orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo && target is AIHeroClient && config.Item("usew", true).GetValue <bool>() && t != null && target.NetworkId == t.NetworkId) { W.Cast(); Orbwalking.ResetAutoAttackTimer(); } if (orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.LaneClear && !(target is AIHeroClient) && config.Item("usewLC", true).GetValue <bool>() && MinionManager.GetMinions(Orbwalking.GetRealAutoAttackRange(target), MinionTypes.All, MinionTeam.NotAlly) .Count(m => m.Health > player.GetAutoAttackDamage((Obj_AI_Base)target, true)) > 0) { W.Cast(); Orbwalking.ResetAutoAttackTimer(); } }
private static bool CanUse(Spell spell, AttackableUnit target) { return(spell.IsReady() && Player.Mana >= spell.ManaCost && target.IsValidTargetLS(spell.Range)); }