예제 #1
0
        public static void New()
        {
            target = TargetSelector.SelectedTarget;
            if (target != null)
            {
                if (target.IsValidTarget(925))
                {
                    if (Q.IsReady())
                    {
                        if (R.IsReady())
                        {
                            switch (FleeMenu.GetComboBoxValue("qpos"))
                            {
                            case 0:
                            {
                                qpos = Game.CursorPos;
                            }
                            break;

                            case 1:
                            {
                                qpos = Azir.ServerPosition;
                            }
                            break;

                            case 2:
                            {
                                qpos = tower?.ServerPosition ?? Game.CursorPos;
                            }
                            break;

                            case 3:
                            {
                                qpos = ally?.ServerPosition ?? Game.CursorPos;
                            }
                            break;
                            }

                            switch (FleeMenu.GetComboBoxValue("rpos"))
                            {
                            case 0:
                            {
                                rpos = Game.CursorPos;
                            }
                            break;

                            case 1:
                            {
                                rpos = Azir.ServerPosition;
                            }
                            break;

                            case 2:
                            {
                                rpos = tower?.ServerPosition ?? Game.CursorPos;
                            }
                            break;

                            case 3:
                            {
                                rpos = ally?.ServerPosition ?? Game.CursorPos;
                            }
                            break;
                            }

                            var allready = Q.IsReady() && E.IsReady() && W.IsReady();

                            if (Orbwalker.AzirSoldiers.Count(s => s.IsAlly) > 0 && allready && ManaCheck(Azir) < Azir.Mana && target.Distance(Azir) > 420)
                            {
                                soldposition = Orbwalker.AzirSoldiers.OrderBy(s => s.Distance(target)).FirstOrDefault(s => s != null).ServerPosition;
                                if (soldposition.IsInRange(target.ServerPosition, R.Width) && !Ehit(target))
                                {
                                    if (E.Cast(Azir.Position.Extend(target, E.Range).To3D()))
                                    {
                                        var time = ((Azir.ServerPosition.Distance(soldposition) / E.Speed) * 900) - FleeMenu.GetSliderValue("delay");
                                        Core.DelayAction(() => {
                                            if (Q.Cast(Azir.Position.Extend(qpos, Q.Range - FleeMenu.GetSliderValue("dis")).To3D()))
                                            {
                                                LastQTime = Game.Time;
                                            }
                                        }, (int)time);
                                    }
                                }
                                else
                                {
                                    Player.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPos);
                                }
                            }
                            else
                            {
                                Player.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPos);
                            }
                        }
                        else
                        {
                            Player.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPos);
                        }
                    }
                    else
                    {
                        Player.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPos);
                    }
                }
                else
                {
                    Player.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPos);
                }
            }
            else
            {
                Player.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPos);
            }
        }