Example #1
0
        private void LogicQ()
        {
            var t = TargetSelector.GetTarget(Q.Range, TargetSelector.DamageType.Physical);

            if (t.IsValidTarget())
            {
                OktwCommon.WayPointAnalysis(t, Q);
                var qDmg = Q.GetDamage(t) * 1.9;
                if (Orbwalking.InAutoAttackRange(t))
                {
                    qDmg = qDmg + Player.GetAutoAttackDamage(t) * 3;
                }
                if (qDmg > t.Health)
                {
                    Q.Cast(t, true);
                }
                else if (Program.Combo && Player.Mana > RMANA + QMANA)
                {
                    Program.CastSpell(Q, t);
                }
                else if (Program.Farm && Config.Item("haras" + t.ChampionName).GetValue <bool>())
                {
                    if (Player.Mana > Player.MaxMana * 0.9)
                    {
                        Program.CastSpell(Q, t);
                    }
                    else if (ObjectManager.Player.Mana > RMANA + WMANA + QMANA + QMANA)
                    {
                        Program.CastSpell(Qc, t);
                    }
                    else if (Player.Mana > RMANA + WMANA + QMANA + QMANA)
                    {
                        Q.CastIfWillHit(t, 2, true);
                    }
                }
                if (Player.Mana > RMANA + QMANA + WMANA && Q.IsReady())
                {
                    foreach (var enemy in Program.Enemies.Where(enemy => enemy.IsValidTarget(Q.Range) && !OktwCommon.CanMove(enemy)))
                    {
                        Q.Cast(enemy, true);
                    }
                }
            }
            else if (Program.LaneClear && Player.ManaPercentage() > Config.Item("Mana").GetValue <Slider>().Value&& Config.Item("farmQ").GetValue <bool>() && ObjectManager.Player.Mana > RMANA + QMANA + WMANA)
            {
                var allMinionsQ = MinionManager.GetMinions(Player.ServerPosition, Q.Range, MinionTypes.All);
                var Qfarm       = Q.GetLineFarmLocation(allMinionsQ, 100);
                if (Qfarm.MinionsHit > 5 && Q.IsReady())
                {
                    Q.Cast(Qfarm.Position);
                }
            }
        }