Exemple #1
0
        private static void OnGameUpdate(EventArgs args)
        {
            Killsteal.CastQ();
            Killsteal.CastR();
            if (R.IsReady())
            {
                if (mainMenu["Automatic"].GetValue <MenuSliderButton>("safe").Enabled)
                {
                    if (GameObjects.Player.CountEnemyHeroesInRange(
                            mainMenu["Automatic"].GetValue <MenuSliderButton>("safe").Value) == 0)
                    {
                        Automatic.OnImmobile();
                    }
                }
                else
                {
                    Automatic.OnImmobile();
                }

                Combo.SemiR();
            }

            if (Q.IsReady())
            {
                Automatic.CastQ();
            }
            switch (Orbwalker.ActiveMode)
            {
            case OrbwalkerMode.Combo:
                if (mainMenu["Combo"].GetValue <MenuSliderButton>("priority").Enabled&&
                    GameObjects.Player.ManaPercent <=
                    mainMenu["Combo"].GetValue <MenuSliderButton>("priority").Value)
                {
                    Combo.CastW();
                    Combo.CastQ();
                }
                else
                {
                    Combo.CastW();
                    Combo.CastQ();
                }
                break;

            case OrbwalkerMode.Harass:
                Harass.CastW();
                Harass.CastQ();
                break;

            case OrbwalkerMode.LaneClear:
                LaneClear.CastQ();
                JungleClear.CastW();
                JungleClear.CastQ();
                Structureclear.CastW();
                break;

            case OrbwalkerMode.LastHit:
                Lasthit.CastQ();
                break;
            }
        }
Exemple #2
0
        private static void OnAfterAttack(object sender, AfterAttackEventArgs args)
        {
            switch (Orbwalker.ActiveMode)
            {
            case OrbwalkerMode.Combo:
                Extra.CastW(args);
                break;

            case OrbwalkerMode.LaneClear:
                var target = args.Target as AIMinionClient;
                if (E.IsReady())
                {
                    Jungleclear.CastE();
                    Structureclear.CastE(args);
                }
                if (W.IsReady())
                {
                    if (target.IsJungle())
                    {
                        Jungleclear.CastW(args);
                    }
                }
                break;
            }
        }
Exemple #3
0
        private static void OnAfterAttack(object sender, AfterAttackEventArgs args)
        {
            switch (Orbwalker.ActiveMode)
            {
            case OrbwalkerMode.Combo:
                if (Q.IsReady())
                {
                    Extra.CastQ(args);
                }
                break;

            case OrbwalkerMode.Harass:
                if (Q.IsReady())
                {
                    Harass.CastQ(args);
                }
                break;

            case OrbwalkerMode.LaneClear:
                var target = args.Target as AIMinionClient;
                if (Q.IsReady())
                {
                    Structureclear.CastQ(args);
                    if (target.IsJungle())
                    {
                        Jungleclear.CastQ(args);
                    }

                    if (target.IsMinion())
                    {
                        Laneclear.CastQ(args);
                        return;
                    }
                }

                if (E.IsReady())
                {
                    if (target.IsJungle())
                    {
                        Jungleclear.CastE(args);
                    }
                }
                break;

            case OrbwalkerMode.LastHit:
                if (Q.IsReady())
                {
                    Lasthit.CastQ(args);
                }
                break;
            }
        }
Exemple #4
0
        private static void OnBeforeAttack(object sender, BeforeAttackEventArgs args)
        {
            var forceTarget =
                GameObjects.EnemyHeroes.FirstOrDefault(x => x.IsCharged() &&
                                                       x.IsValidTarget(Player.GetRealAutoAttackRange(x)));

            if (forceTarget != null &&
                Orbwalker.ActiveMode == OrbwalkerMode.Combo &&
                Orbwalker.GetTarget() != forceTarget)
            {
                Orbwalker.ForceTarget = forceTarget;
            }

            switch (Orbwalker.ActiveMode)
            {
            case OrbwalkerMode.Combo:
                if (Q.IsReady())
                {
                    Combo.CastQ(args);
                }

                if (E.IsReady())
                {
                    Combo.CastE(args);
                }
                break;

            case OrbwalkerMode.Harass:
                if (Q.IsReady())
                {
                    Harass.CastQ(args);
                }

                if (E.IsReady())
                {
                    Harass.CastE(args);
                }
                break;

            case OrbwalkerMode.LaneClear:
                if (Q.IsReady() || E.IsReady())
                {
                    Structureclear.Cast(args);
                }

                var target = args.Target as AIMinionClient;
                if (target == null)
                {
                    return;
                }

                if (target.IsMinion())
                {
                    if (Q.IsReady())
                    {
                        Laneclear.CastQ();
                    }

                    if (E.IsReady())
                    {
                        Laneclear.CastE(args);
                    }

                    if (Extension.HasEBuff(target))
                    {
                        Orbwalker.ForceTarget = target;
                    }
                }

                if (target.IsJungle() && target.Health > Player.GetAutoAttackDamage(target) * 3)
                {
                    if (Q.IsReady())
                    {
                        Jungleclear.CastQ();
                    }
                }

                if ((target.GetJungleType() & JungleType.Legendary) != 0 && target.Health >
                    Player.GetAutoAttackDamage(target) * 3)
                {
                    if (E.IsReady())
                    {
                        Jungleclear.CastE(args);
                    }
                }
                break;
            }
        }
Exemple #5
0
        private static void OnBeforeAttack(object sender, BeforeAttackEventArgs args)
        {
            switch (Orbwalker.ActiveMode)
            {
            case OrbwalkerMode.Combo:
                if (W.IsReady())
                {
                    Combo.CastW();
                }

                if (Q.IsReady())
                {
                    Combo.CastQ();
                }
                break;

            case OrbwalkerMode.Harass:
                if (W.IsReady())
                {
                    Harass.CastW();
                }

                if (Q.IsReady())
                {
                    Harass.CastQ();
                }
                break;

            case OrbwalkerMode.LaneClear:
                var target = args.Target as AIMinionClient;
                if (W.IsReady())
                {
                    Structureclear.CastW();
                    if (target.IsMinion())
                    {
                        Laneclear.CastW();
                    }
                    else if ((target.GetJungleType() & JungleType.Large) != 0)
                    {
                        Jungleclear.CastW();
                    }
                }

                if (Q.IsReady())
                {
                    if (target.IsMinion())
                    {
                        Laneclear.CastQ();
                    }
                    else if ((target.GetJungleType() & JungleType.Large) != 0)
                    {
                        Jungleclear.CastQ();
                    }
                }

                break;
            }
            if (MiscellaneousMenu.WaitAxeBool.Enabled && !Extension.HasAxeInHand() && Extension.CanCatchAxe())
            {
                args.Process = false;
            }
        }
Exemple #6
0
        private static void OnAfterAttack(object sender, AfterAttackEventArgs args)
        {
            switch (Orbwalker.ActiveMode)
            {
            case OrbwalkerMode.Combo:
                switch (ComboMenu.ComboList.Index)
                {
                case 0:
                    if (Q.IsReady())
                    {
                        if (Extra.CastQ(args))
                        {
                            return;
                        }
                    }

                    if (E.IsReady() && Extension.CanCastE(args.Target) &&
                        ComboMenu.EBool.Enabled)
                    {
                        if (Extra.CastE())
                        {
                            return;
                        }
                    }
                    break;

                case 1:
                    if (E.IsReady() &&
                        Extension.CanCastE(args.Target) &&
                        ComboMenu.EBool.Enabled)
                    {
                        if (Extra.CastE())
                        {
                            return;
                        }
                    }

                    if (Q.IsReady())
                    {
                        if (Extra.CastQ(args))
                        {
                            return;
                        }
                    }
                    break;
                }

                if (W.IsReady())
                {
                    Extra.CastW(args);
                }
                break;

            case OrbwalkerMode.LaneClear:
                var target = args.Target as AIMinionClient;
                if (E.IsReady())
                {
                    Jungleclear.CastE();
                    Structureclear.CastE(args);
                    return;
                }

                if (Q.IsReady())
                {
                    Jungleclear.CastQ(args);
                }

                if (W.IsReady())
                {
                    Jungleclear.CastW(args);
                    Structureclear.CastW(args);
                }
                break;
            }
        }
Exemple #7
0
        public static void OnPostAttack(OnPostAttackEventArgs args)
        {
            switch (Orbwalker.Mode)
            {
            case OrbwalkingMode.Combo:
                if (E.Ready)
                {
                    Weaving.E(args);
                    return;
                }

                if (Q.Ready)
                {
                    Weaving.Q(args);
                    return;
                }

                if (W.Ready)
                {
                    Weaving.W(args);
                }
                break;

            case OrbwalkingMode.LaneClear:
                if (E.Ready)
                {
                    if (args.Target.IsStructure())
                    {
                        Structureclear.E(args);
                        return;
                    }

                    if (ObjectCache.JungleMinions.Contains(args.Target))
                    {
                        Jungleclear.E(args);
                        return;
                    }
                }

                if (Q.Ready)
                {
                    if (ObjectCache.JungleMinions.Contains(args.Target))
                    {
                        Jungleclear.Q(args);
                        return;
                    }
                }

                if (W.Ready)
                {
                    if (ObjectCache.JungleMinions.Contains(args.Target))
                    {
                        Jungleclear.W(args);
                        return;
                    }

                    if (args.Target.IsStructure())
                    {
                        Structureclear.W(args);
                    }
                }
                break;
            }
        }