コード例 #1
0
ファイル: Draven.cs プロジェクト: aleks9829/AimTec-9
        private static void OnUpdate()
        {
            foreach (var sender in AxeList.Where(x => x.Key.IsDead || !x.Key.IsValid).Select(x => x.Key))
            {
                AxeList.Remove(sender);
            }

            if (Me.IsDead || Me.IsRecalling())
            {
                return;
            }

            R.Range = MiscOption.GetSlider("R", "GlobalRMax").Value;

            CatchAxeEvent();
            KillStealEvent();
            AutoUseEvent();

            if (Orbwalker.Mode == OrbwalkingMode.Combo)
            {
                ComboEvent();
            }

            if (Orbwalker.Mode == OrbwalkingMode.Mixed)
            {
                HarassEvent();
            }

            if (Orbwalker.Mode == OrbwalkingMode.Laneclear)
            {
                ClearEvent();
            }
        }
コード例 #2
0
ファイル: MyEventManager.cs プロジェクト: 2444949768/AimTec
        private static void OnRender()
        {
            try
            {
                if (Me.IsDead || MenuGUI.IsChatOpen() || MenuGUI.IsShopOpen())
                {
                    return;
                }

                if (DrawMenu["FlowersDraven.DrawMenu.E"].Enabled && E.Ready)
                {
                    Render.Circle(Me.Position, E.Range, 23, Color.FromArgb(0, 136, 255));
                }

                if (DrawMenu["FlowersDraven.DrawMenu.R"].Enabled && R.Ready)
                {
                    Render.Circle(Me.Position, R.Range, 23, Color.FromArgb(251, 0, 133));
                }

                if (DrawMenu["FlowersDraven.DrawMenu.AxeRange"].Enabled)
                {
                    Render.Circle(Game.CursorPos, AxeMenu["FlowersDraven.AxeMenu.CatchRange"].Value, 23,
                                  Color.FromArgb(0, 255, 161));
                }

                if (DrawMenu["FlowersDraven.DrawMenu.AxePosition"].Enabled)
                {
                    foreach (var axe in AxeList.Where(x => !x.Key.IsDead && x.Key.IsValid).Select(x => x.Key))
                    {
                        if (axe != null && axe.IsValid)
                        {
                            Render.Circle(axe.Position, 130, 23, Color.FromArgb(86, 0, 255));
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error in MyEventManager.OnRender." + ex);
            }
        }
コード例 #3
0
        private static void OnUpdate(EventArgs args)
        {
            foreach (var sender in AxeList.Where(x => x.Key.IsDead || !x.Key.IsValid).Select(x => x.Key))
            {
                AxeList.Remove(sender);
            }

            if (Me.IsDead || Me.IsRecalling())
            {
                return;
            }

            if (Me.IsWindingUp)
            {
                return;
            }

            R.Range = MiscOption.GetSlider("R", "GlobalRMax").Value;

            CatchAxeEvent();
            KillStealEvent();
            AutoUseEvent();

            switch (Orbwalker.ActiveMode)
            {
            case OrbwalkerMode.Combo:
                ComboEvent();
                break;

            case OrbwalkerMode.Harass:
                HarassEvent();
                break;

            case OrbwalkerMode.LaneClear:
                ClearEvent();
                break;
            }
        }
コード例 #4
0
ファイル: MyEventManager.cs プロジェクト: 2444949768/AimTec
        private static void OnUpdate()
        {
            try
            {
                foreach (var sender in AxeList.Where(x => x.Key.IsDead || !x.Key.IsValid).Select(x => x.Key))
                {
                    AxeList.Remove(sender);
                }

                if (Me.IsDead || Me.IsRecalling())
                {
                    return;
                }

                CatchAxeEvent();
                KillStealEvent();
                AutoUseEvent();

                switch (Orbwalker.Mode)
                {
                case OrbwalkingMode.Combo:
                    ComboEvent();
                    break;

                case OrbwalkingMode.Mixed:
                    HarassEvent();
                    break;

                case OrbwalkingMode.Laneclear:
                    ClearEvent();
                    break;
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error in MyEventManager.OnUpdate." + ex);
            }
        }
コード例 #5
0
        private static void OnRender(EventArgs args)
        {
            if (Me.IsDead || MenuGUI.IsChatOpen || MenuGUI.IsShopOpen)
            {
                return;
            }

            if (DrawOption.GetBool("AxeRange").Enabled)
            {
                Render.Circle.DrawCircle(Game.CursorPos, AxeOption.GetSlider("CatchRange").Value, Color.FromArgb(0, 255, 161), 1);
            }

            if (DrawOption.GetBool("AxePosition").Enabled)
            {
                foreach (var axe in AxeList.Where(x => !x.Key.IsDead && x.Key.IsValid).Select(x => x.Key))
                {
                    if (axe != null && axe.IsValid)
                    {
                        Render.Circle.DrawCircle(axe.Position, 130, Color.FromArgb(86, 0, 255), 1);
                    }
                }
            }
        }
コード例 #6
0
        private static void CatchAxeEvent()
        {
            if (AxeList.Count == 0)
            {
                Orbwalker.SetOrbwalkerPosition(Vector3.Zero);
                return;
            }

            if (AxeOption.GetList("CatchMode").Index == 2 ||
                AxeOption.GetList("CatchMode").Index == 1 && Orbwalker.ActiveMode != OrbwalkerMode.Combo)
            {
                Orbwalker.SetOrbwalkerPosition(Vector3.Zero);
                return;
            }

            var catchRange = AxeOption.GetSlider("CatchRange").Value;

            var bestAxe =
                AxeList.Where(x => !x.Key.IsDead && x.Key.IsValid && x.Key.Position.DistanceToCursor() <= catchRange)
                .OrderBy(x => x.Value)
                .ThenBy(x => x.Key.Position.DistanceToPlayer())
                .ThenBy(x => x.Key.Position.DistanceToCursor())
                .FirstOrDefault();

            if (bestAxe.Key != null)
            {
                if (AxeOption.GetBool("NotCatchTurret").Enabled&&
                    (Me.IsUnderEnemyTurret() && bestAxe.Key.Position.IsUnderEnemyTurret() ||
                     bestAxe.Key.Position.IsUnderEnemyTurret() && !Me.IsUnderEnemyTurret()))
                {
                    return;
                }

                if (AxeOption.GetSliderBool("NotCatchMoreEnemy").Enabled&&
                    (bestAxe.Key.Position.CountEnemyHeroesInRange(350) >=
                     AxeOption.GetSliderBool("NotCatchMoreEnemy").Value ||
                     GameObjects.EnemyHeroes.Count(x => x.Distance(bestAxe.Key.Position) < 350 && x.IsMelee) >=
                     AxeOption.GetSliderBool("NotCatchMoreEnemy").Value - 1))
                {
                    return;
                }

                if (AxeOption.GetBool("NotCatchKS").Enabled&& Orbwalker.ActiveMode == OrbwalkerMode.Combo)
                {
                    var target = MyTargetSelector.GetTarget(800);

                    if (target != null && target.IsValidTarget(800) &&
                        target.DistanceToPlayer() > target.BoundingRadius + Me.BoundingRadius + 200 &&
                        target.Health < Me.GetAutoAttackDamage(target) * 2.5 - 80)
                    {
                        Orbwalker.SetOrbwalkerPosition(Vector3.Zero);
                        return;
                    }
                }

                if (AxeOption.GetBool("CatchWSpeed").Enabled&& W.IsReady() &&
                    bestAxe.Key.Position.DistanceToPlayer() / Me.MoveSpeed * 1000 >= bestAxe.Value - Variables.GameTimeTickCount)
                {
                    W.Cast();
                }

                if (bestAxe.Key.Position.DistanceToPlayer() > 100)
                {
                    if (Variables.GameTimeTickCount - lastCatchTime > 1800)
                    {
                        if (Orbwalker.ActiveMode != OrbwalkerMode.None)
                        {
                            Orbwalker.SetOrbwalkerPosition(bestAxe.Key.Position);
                        }
                        else
                        {
                            Me.IssueOrder(GameObjectOrder.MoveTo, bestAxe.Key.Position);
                        }
                    }
                    else
                    {
                        if (Orbwalker.ActiveMode != OrbwalkerMode.None)
                        {
                            Orbwalker.SetOrbwalkerPosition(Vector3.Zero);
                        }
                    }
                }
                else
                {
                    if (Orbwalker.ActiveMode != OrbwalkerMode.None)
                    {
                        Orbwalker.SetOrbwalkerPosition(Vector3.Zero);
                    }
                }
            }
            else
            {
                if (Orbwalker.ActiveMode != OrbwalkerMode.None)
                {
                    Orbwalker.SetOrbwalkerPosition(Vector3.Zero);
                }
            }
        }
コード例 #7
0
ファイル: MyEventManager.cs プロジェクト: 2444949768/AimTec
        private static void CatchAxeEvent()
        {
            try
            {
                if (AxeList.Count == 0)
                {
                    OrbwalkerPoint = Game.CursorPos;
                    return;
                }

                if (AxeMenu["FlowersDraven.AxeMenu.CatchMode"].Value == 2 ||
                    AxeMenu["FlowersDraven.AxeMenu.CatchMode"].Value == 1 && Orbwalker.Mode != OrbwalkingMode.Combo)
                {
                    OrbwalkerPoint = Game.CursorPos;
                    return;
                }

                var catchRange = AxeMenu["FlowersDraven.AxeMenu.CatchRange"].Value;

                var bestAxe =
                    AxeList.Where(x => !x.Key.IsDead && x.Key.IsValid && x.Key.Position.DistanceToMouse() <= catchRange)
                    .OrderBy(x => x.Value)
                    .ThenBy(x => x.Key.Position.DistanceToPlayer())
                    .ThenBy(x => x.Key.Position.DistanceToMouse())
                    .FirstOrDefault();

                if (bestAxe.Key != null)
                {
                    if (AxeMenu["FlowersDraven.AxeMenu.NotCatchTurret"].Enabled &&
                        (Me.IsUnderEnemyTurret() && bestAxe.Key.Position.PointUnderEnemyTurret() ||
                         bestAxe.Key.Position.PointUnderEnemyTurret() && !Me.IsUnderEnemyTurret()))
                    {
                        return;
                    }

                    if (AxeMenu["FlowersDraven.AxeMenu.NotCatchMoreEnemy"].As <MenuSliderBool>().Enabled&&
                        (bestAxe.Key.Position.CountEnemyHeroesInRange(350) >=
                         AxeMenu["FlowersDraven.AxeMenu.NotCatchMoreEnemy"].As <MenuSliderBool>().Value ||
                         GameObjects.EnemyHeroes.Count(x => x.Distance(bestAxe.Key.Position) < 350 && x.IsMelee) >=
                         AxeMenu["FlowersDraven.AxeMenu.NotCatchMoreEnemy"].As <MenuSliderBool>().Value - 1))
                    {
                        return;
                    }

                    if (AxeMenu["FlowersDraven.AxeMenu.NotCatchKS"].Enabled && Orbwalker.Mode == OrbwalkingMode.Combo)
                    {
                        var target = TargetSelector.GetTarget(800, true);

                        if (target != null && target.IsValidTarget(800) &&
                            target.DistanceToPlayer() > target.BoundingRadius + Me.BoundingRadius + 200 &&
                            target.Health < Me.GetAutoAttackDamage(target) * 2.5 - 80)
                        {
                            OrbwalkerPoint = Game.CursorPos;
                            return;
                        }
                    }

                    if (AxeMenu["FlowersDraven.AxeMenu.CatchWSpeed"].Enabled && W.Ready &&
                        bestAxe.Key.Position.DistanceToPlayer() / Me.MoveSpeed * 1000 >= bestAxe.Value - Game.TickCount)
                    {
                        W.Cast();
                    }

                    if (bestAxe.Key.Position.DistanceToPlayer() > 100)
                    {
                        if (Game.TickCount - lastCatchTime > 1800)
                        {
                            if (Orbwalker.Mode != OrbwalkingMode.None)
                            {
                                OrbwalkerPoint = bestAxe.Key.Position;
                            }
                            else
                            {
                                Me.IssueOrder(OrderType.MoveTo, bestAxe.Key.Position);
                            }
                        }
                        else
                        {
                            if (Orbwalker.Mode != OrbwalkingMode.None)
                            {
                                OrbwalkerPoint = Game.CursorPos;
                            }
                        }
                    }
                    else
                    {
                        if (Orbwalker.Mode != OrbwalkingMode.None)
                        {
                            OrbwalkerPoint = Game.CursorPos;
                        }
                    }
                }
                else
                {
                    if (Orbwalker.Mode != OrbwalkingMode.None)
                    {
                        OrbwalkerPoint = Game.CursorPos;
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error in MyEventManager.CatchAxeEvent." + ex);
            }
        }