예제 #1
0
        private static void UseSpells(bool useQ, bool useW, bool useE)
        {
            Obj_AI_Hero t;

            if (Q.IsReady() && useQ)
            {
                t = SimpleTs.GetTarget(QEx.Range, SimpleTs.DamageType.Physical);
                if (t != null && t.HasBuff("urgotcorrosivedebuff", true))
                {
                    W.Cast();
                    QEx.Cast(t);
                }
                else
                {
                    t = SimpleTs.GetTarget(Q.Range, SimpleTs.DamageType.Physical);
                    if (t != null)
                    {
                        if (Q.GetPrediction(t).Hitchance >= HitChance.High)
                        {
                            W.Cast();
                        }
                        Q.Cast(t);
                    }
                }
            }

            if (W.IsReady() && useW)
            {
                t = SimpleTs.GetTarget(ObjectManager.Player.AttackRange - 30, SimpleTs.DamageType.Physical);
                if (t != null)
                {
                    W.Cast();
                }
            }

            if (E.IsReady() && useE)
            {
                t = SimpleTs.GetTarget(E.Range, SimpleTs.DamageType.Physical);
                if (t != null)
                {
                    E.Cast(t);
                }
            }
        }
예제 #2
0
        public override void Game_OnGameUpdate(EventArgs args)
        {
            if (R.Level > 0)
            {
                R.Range = 150 * R.Level + 400;
            }

            if (Program.combo["UltOp1"].Cast <KeyBind>().CurrentValue)
            {
                UltUnderTurret();
            }

            if (Program.combo["UltOp2"].Cast <KeyBind>().CurrentValue)
            {
                UltInMyTeam();
            }

            if (!ComboActive)
            {
                var t = TargetSelector.GetTarget(QEx.Range, DamageType.Physical);
                if (!t.LSIsValidTarget())
                {
                    return;
                }

                if (HarassActive && Program.harass["UseQH"].Cast <CheckBox>().CurrentValue)
                {
                    CastQ(t);
                }

                if (Program.harass["UseQTH"].Cast <KeyBind>().CurrentValue)
                {
                    CastQ(t);
                }
            }

            if (ComboActive)
            {
                var t = TargetSelector.GetTarget(QEx.Range, DamageType.Physical);

                if (E.IsReady() && Program.combo["UseEC"].Cast <CheckBox>().CurrentValue)
                {
                    if (t.LSIsValidTarget(E.Range))
                    {
                        E.CastIfHitchanceEquals(t, EloBuddy.SDK.Enumerations.HitChance.Medium);
                    }
                }

                if (Q.IsReady() && Program.combo["UseQC"].Cast <CheckBox>().CurrentValue)
                {
                    if (getInfectedEnemy != null)
                    {
                        if (W.IsReady())
                        {
                            W.Cast();
                        }
                        QEx.Cast(getInfectedEnemy);
                    }
                    else
                    {
                        if (t.LSIsValidTarget(Q.Range))
                        {
                            CastQ(t);
                        }
                    }
                }
            }

            if (LaneClearActive)
            {
                var useQ = Program.laneclear["UseQL"].Cast <CheckBox>().CurrentValue;

                if (Q.IsReady() && useQ)
                {
                    var vMinions = MinionManager.GetMinions(ObjectManager.Player.Position, Q.Range);
                    foreach (
                        var minions in
                        vMinions.Where(
                            minions => minions.Health < ObjectManager.Player.LSGetSpellDamage(minions, SpellSlot.Q)))
                    {
                        Q.Cast(minions);
                    }
                }
            }
        }
예제 #3
0
        public override void GameOnUpdate(EventArgs args)
        {
            if (R.Level > 0)
            {
                R.Range = 150 * R.Level + 400;
            }

            if (GetValue <KeyBind>("UltOp1").Active)
            {
                UltUnderTurret();
            }

            if (GetValue <KeyBind>("UltOp2").Active)
            {
                UltInMyTeam();
            }

            if (!ComboActive)
            {
                var t = TargetSelector.GetTarget(QEx.Range, TargetSelector.DamageType.Physical);
                if (!t.IsValidTarget())
                {
                    return;
                }

                if (HarassActive && GetValue <bool>("UseQH"))
                {
                    CastQ(t);
                }

                if (GetValue <KeyBind>("UseQTH").Active)
                {
                    CastQ(t);
                }
            }

            if (ComboActive)
            {
                var t = TargetSelector.GetTarget(QEx.Range, TargetSelector.DamageType.Physical);

                if (E.IsReady() && GetValue <bool>("UseEC"))
                {
                    if (t.IsValidTarget(E.Range))
                    {
                        E.CastIfHitchanceGreaterOrEqual(t);
                        //E.CastIfHitchanceEquals(t, HitChance.High);
                    }
                }

                if (Q.IsReady() && GetValue <bool>("UseQC"))
                {
                    if (getInfectedEnemy != null)
                    {
                        if (W.IsReady())
                        {
                            W.Cast();
                        }
                        QEx.Cast(getInfectedEnemy);
                    }
                    else
                    {
                        if (t.IsValidTarget(Q.Range))
                        {
                            Q.CastIfHitchanceGreaterOrEqual(t);
                        }
                        //CastQ(t);
                    }
                }
            }

            if (LaneClearActive)
            {
                var useQ = GetValue <bool>("UseQL");

                if (Q.IsReady() && useQ)
                {
                    var vMinions = MinionManager.GetMinions(ObjectManager.Player.Position, Q.Range);
                    foreach (
                        var minions in
                        vMinions.Where(
                            minions => minions.Health < ObjectManager.Player.GetSpellDamage(minions, SpellSlot.Q)))
                    {
                        Q.Cast(minions);
                    }
                }
            }
        }