public override void Game_OnGameUpdate(EventArgs args) { if (ObjectManager.Player.IsDead) { xAttackLeft = 0; return; } if (Game.Time > xPassiveUsedTime + 3 && xAttackLeft == 1) { xAttackLeft = 0; } if (Config.Item("Passive" + Id).GetValue <bool>() && xAttackLeft > 0) { return; } Obj_AI_Hero t; if (Q.IsReady() && GetValue <KeyBind>("UseQTH").Active&& ToggleActive) { if (ObjectManager.Player.HasBuff("Recall")) { return; } t = TargetSelector.GetTarget(Q.Range, TargetSelector.DamageType.Physical); if (t != null) { Q.CastOnUnit(t); } } if (Q.IsReady() && GetValue <KeyBind>("UseQExtendedTH").Active&& ToggleActive) { if (ObjectManager.Player.HasBuff("Recall")) { return; } t = TargetSelector.GetTarget(Q.Range, TargetSelector.DamageType.Physical); if (t.IsValidTarget() && QMinion(t).IsValidTarget()) { if (ObjectManager.Player.Distance(t) > Q.Range) { Q.CastOnUnit(QMinion(t)); } } } if ((!ComboActive && !HarassActive)) { return; } var useQExtended = GetValue <StringList>("UseQExtendedC").SelectedIndex; if (useQExtended != 0) { switch (useQExtended) { case 1: { t = TargetSelector.GetTarget(Q2.Range, TargetSelector.DamageType.Physical); var tx = QMinion(t); if (tx.IsValidTarget()) { if (!Orbwalking.InAutoAttackRange(t)) { Q.CastOnUnit(tx); } } break; } case 2: { var enemy = HeroManager.Enemies.Find(e => e.IsValidTarget(Q2.Range) && !e.IsZombie); if (enemy != null) { var tx = QMinion(enemy); if (tx.IsValidTarget()) { Q.CastOnUnit(tx); } } break; } } } // Auto turn off Ghostblade Item if Ultimate active if (ObjectManager.Player.Spellbook.GetSpell(SpellSlot.R).Level > 0) { Config.Item("GHOSTBLADE") .SetValue(ObjectManager.Player.Spellbook.GetSpell(SpellSlot.R).Name == "LucianR"); } //if (useQExtended && Q.IsReady()) //{ // var t = TargetSelector.GetTarget(Q2.Range, TargetSelector.DamageType.Physical); // if (t.IsValidTarget() && QMinion.IsValidTarget()) // { // if (!Orbwalking.InAutoAttackRange(t)) // Q.CastOnUnit(QMinion); // } //} t = TargetSelector.GetTarget(W.Range, TargetSelector.DamageType.Physical); if (!t.IsValidTarget()) { return; } var useQ = GetValue <bool>("UseQC"); if (useQ && Q.IsReady()) { if (t.IsValidTarget(Q.Range)) { Q.CastOnUnit(t); Orbwalking.ResetAutoAttackTimer(); } } var useW = GetValue <bool>("UseWC"); if (useW && W.IsReady()) { if (t.IsValidTarget(W.Range)) { W.Cast(t); Orbwalking.ResetAutoAttackTimer(); } } var useE = GetValue <StringList>("UseEC").SelectedIndex; if (useE != 0 && E.IsReady()) { if (t.Distance(ObjectManager.Player.Position) > Orbwalking.GetRealAutoAttackRange(null) && t.IsValidTarget(Orbwalking.GetRealAutoAttackRange(null) + E.Range - 50) && E.IsPositionSafe(t.Position.To2D())) { E.Cast(t.Position); Orbwalking.ResetAutoAttackTimer(); } else if (Q.IsPositionSafe(Game.CursorPos.To2D())) { E.Cast(Game.CursorPos); Orbwalking.ResetAutoAttackTimer(); } Orbwalker.ForceTarget(t); //if (t.IsValidTarget(Q.Range)) //{ // E.Cast(Game.CursorPos); //} } }