예제 #1
0
        private void FlashR()
        {
            Player.IssueOrder(OrderType.MoveTo, Game.CursorPos);
            var target = GetBestEnemyHeroTargetInRange(Menu["combo"]["rset"]["ranger"].As <MenuSlider>().Value + 410);

            if (R.Ready)
            {
                if (Flash.Ready && Flash != null && target.IsValidTarget())
                {
                    if (target.IsValidTarget(Menu["combo"]["rset"]["ranger"].As <MenuSlider>().Value + 410))
                    {
                        if (target.Distance(Player) > R.Range)
                        {
                            if (R.Cast(target.ServerPosition))
                            {
                                DelayAction.Queue(200 + Game.Ping, () =>
                                {
                                    Flash.Cast(target.ServerPosition);
                                });
                            }
                        }
                    }
                }
            }
        }
예제 #2
0
        private void FlashQ()
        {
            Player.IssueOrder(OrderType.MoveTo, Game.CursorPos);
            if (Q.Ready)
            {
                if (Flash.Ready && Flash != null)
                {
                    if (!Player.HasBuff("ViQ"))
                    {
                        var qtarget = TargetSelector.GetTarget(Q.ChargedMaxRange + 500);

                        if (qtarget != null)
                        {
                            Q2.StartCharging(Game.CursorPos);
                        }
                    }
                    if (Player.HasBuff("ViQ"))
                    {
                        var qtarget = TargetSelector.GetTarget(Q2.Range);
                        var pred    = Q2.GetPrediction(qtarget);
                        if (qtarget != null)
                        {
                            if (qtarget.IsValidTarget(Q2.Range))
                            {
                                if (Flash.Cast(qtarget.ServerPosition))
                                {
                                    Q2.Cast(pred.CastPosition);
                                }
                            }
                        }
                    }
                }
            }
        }
예제 #3
0
        private static void CastEFlash()
        {
            EloBuddy.Player.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPos);
            if (Flash.IsReady())
            {
                var target = TargetSelector.GetTarget(EFlash.Range + 100, DamageType.Magical);
                //var target = TargetSelector.SelectedTarget;
                if (target.IsValidTarget() && !target.IsInvulnerable)
                {
                    var pre     = EFlash.GetPrediction(target);
                    var postion = EloBuddy.Player.Instance.ServerPosition.Extend(target.ServerPosition, Flash.Range);
                    int Delay   = E.CastDelay + Game.Ping - 60;

                    if (E.IsReady() && pre.HitChance >= HitChance.High)
                    {
                        if (EFlash.Cast(pre.CastPosition))
                        {
                            Core.DelayAction(delegate()
                            {
                                Flash.Cast(postion.To3DWorld());
                            }, new Random(DateTime.Now.Millisecond * (int)(Game.CursorPos.X + Player.Position.Y)).Next(Delay, Delay + 30));
                        }
                    }
                }
            }
        }
예제 #4
0
파일: XinZhao.cs 프로젝트: denis3285/AimTec
 protected override void SemiR()
 {
     if (RootMenu["insec"].Enabled)
     {
         Player.IssueOrder(OrderType.MoveTo, Game.CursorPos);
         var target = Extensions.GetBestEnemyHeroTargetInRange(R.Range + 410);
         if (R.Ready)
         {
             if (Flash.Ready && Flash != null && target.IsValidTarget())
             {
                 if (target.IsValidTarget(380))
                 {
                     foreach (var ally in GameObjects.AllyHeroes)
                     {
                         if (ally != null && UnitExtensions.Distance(ally, Player) < 1500 && !ally.IsMe)
                         {
                             if (Flash.Cast(target.ServerPosition.Extend(ally.ServerPosition, -100)))
                             {
                                 R.Cast();
                             }
                         }
                     }
                     if (GameObjects.AllyHeroes.Where(x => UnitExtensions.Distance(x, Player) < E.Range)
                         .Count() == 1)
                     {
                         if (Flash.Cast(target.ServerPosition.Extend(Player.ServerPosition, -100)))
                         {
                             R.Cast();
                         }
                     }
                 }
             }
         }
     }
 }
예제 #5
0
 protected override void SemiR()
 {
     if (RootMenu["flee"]["flee"].Enabled)
     {
         Player.IssueOrder(OrderType.MoveTo, Game.CursorPos);
         if (Player.Mana > Player.GetSpell(SpellSlot.Q).Cost + Player.GetSpell(SpellSlot.E).Cost)
         {
             if (E.Cast(Game.CursorPos))
             {
                 Q.Cast(Game.CursorPos);
             }
         }
     }
     if (RootMenu["eqr"].Enabled)
     {
         Player.IssueOrder(OrderType.MoveTo, Game.CursorPos);
         if (Player.Mana > Player.GetSpell(SpellSlot.Q).Cost + Player.GetSpell(SpellSlot.E).Cost +
             Player.GetSpell(SpellSlot.R).Cost + 30 && R.Ready && !Player.HasBuff("JarvanIVCataclysm"))
         {
             var target = TargetSelector.Implementation.GetTarget(Q.Range + R.Range);
             if (target != null)
             {
                 var meow = E.GetPrediction(target);
                 if (E.Cast(meow.CastPosition))
                 {
                     Q.Cast(meow.CastPosition);
                 }
                 if (target.IsValidTarget(R.Range))
                 {
                     R.CastOnUnit(target);
                 }
             }
         }
     }
     if (RootMenu["eqflash"].Enabled)
     {
         Player.IssueOrder(OrderType.MoveTo, Game.CursorPos);
         if (Player.Mana > Player.GetSpell(SpellSlot.Q).Cost + Player.GetSpell(SpellSlot.E).Cost)
         {
             var target = TargetSelector.Implementation.GetTarget(Q.Range + 420);
             if (target != null)
             {
                 if (Flash != null && Flash.Ready)
                 {
                     var meow = E.GetPrediction(target);
                     if (E.Cast(meow.CastPosition))
                     {
                         Q.Cast(meow.CastPosition);
                     }
                     if (target.Distance(Player) <= 420 && Player.HasBuff("jarvanivdragonstrikeph"))
                     {
                         Flash.Cast(target.ServerPosition.Extend(Player.ServerPosition, -100));
                     }
                 }
             }
         }
     }
 }
예제 #6
0
        private void Burst()
        {
            Player.IssueOrder(OrderType.MoveTo, Game.CursorPos);
            var  target = GetBestEnemyHeroTargetInRange(R.Range + 550);
            bool usee   = Menu["burst"]["waitE"].Enabled;

            if (usee && E.Ready)
            {
                if (R.Ready && Flash.Ready && Flash != null && target.IsValidTarget())
                {
                    if (target.IsValidTarget(R.Range + 500))
                    {
                        if (target.Distance(Player) > R.Range)
                        {
                            if (R.Cast(target.Position))
                            {
                                Flash.Cast(target.Position);
                            }
                        }
                    }
                }
            }
            if (!usee)
            {
                if (R.Ready && Flash.Ready && Flash != null && target.IsValidTarget())
                {
                    if (target.IsValidTarget(R.Range + 500))
                    {
                        if (target.Distance(Player) > R.Range)
                        {
                            if (R.Cast(target.Position))
                            {
                                Flash.Cast(target.Position);
                            }
                        }
                    }
                }
            }
            if (target.IsValidTarget(W.Range) && target.IsValidTarget() && W.Ready)
            {
                if (W.Cast())
                {
                    Player.IssueOrder(OrderType.AttackUnit, target);
                }
            }
            if (target.IsValidTarget(E.Range) && target.IsValidTarget())
            {
                E.Cast(target);
            }
            if (target.IsValidTarget(Q.Range) && target.IsValidTarget())
            {
                Q.CastOnUnit(target);
            }
            if (target.IsValidTarget(R.Range) && target.IsValidTarget())
            {
                R.Cast(target);
            }
        }
예제 #7
0
        private void OnProcessSpellCast(Obj_AI_Base sender, Obj_AI_BaseMissileClientDataEventArgs args)
        {
            if (sender.IsMe)
            {
                if (args.SpellData.Name == "AhriSeduce")
                {
                    if (Menu["combo"]["flashe"].Enabled)
                    {
                        var target = GetBestEnemyHeroTargetInRange(Menu["combo"]["rangee"].As <MenuSlider>().Value);


                        if (Flash.Ready && Flash != null && target.IsValidTarget())
                        {
                            DelayAction.Queue(50, () =>
                            {
                                Flash.Cast(target.ServerPosition);
                            });
                        }
                    }

                    if (Orbwalker.Mode == OrbwalkingMode.Combo)
                    {
                        var target = GetBestEnemyHeroTargetInRange(E.Range);

                        if (Menu["combo"]["rset"]["burstr"].Enabled && Menu["combo"]["rset"]["user"].Enabled)
                        {
                            if (target != null)
                            {
                                if (target.Health <
                                    Player.GetSpellDamage(target, SpellSlot.Q) +
                                    Player.GetSpellDamage(target, SpellSlot.W) +
                                    Player.GetSpellDamage(target, SpellSlot.E) +
                                    Player.GetSpellDamage(target, SpellSlot.R) * 3)
                                {
                                    if (Menu["combo"]["rset"]["waster"].As <MenuSlider>().Value >=
                                        target.CountEnemyHeroesInRange(600))
                                    {
                                        if (!Player.HasBuff("AhriTumble"))
                                        {
                                            if (R.Ready)
                                            {
                                                DelayAction.Queue(200, () =>
                                                {
                                                    R.Cast(
                                                        target.ServerPosition.Extend(Player.ServerPosition, -200));
                                                }
                                                                  );
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
예제 #8
0
        private static void DoInsec()
        {
            EloBuddy.Player.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPos.Randomize(-100, 100));

            var target = TargetSelector.GetSelectedTarget();

            if (!target.IsValidTarget())
            {
                if (Environment.TickCount - LastInsecNotifcation >= 5000)
                {
                    Chat.Print(
                        "<font color=\"#7CFC00\"><b>Night Stalker Azir:</b></font> Please select a target by left clicking them!");
                    LastInsecNotifcation = Environment.TickCount;
                }

                return;
            }

            if (!Q.IsInRange(target))
            {
                return;
            }

            if (W.IsReady() && E.IsReady() && (Q.IsReady() || Q.Instance.State == SpellState.Surpressed) && R.IsReady() &&
                Flash.IsReady())
            {
                W.Cast(Player.ServerPosition.Extend(target.ServerPosition, W.Range));

                LeagueSharp.Common.Utility.DelayAction.Add(
                    (int)(W.Delay * 1000),
                    () =>
                {
                    E.CastOnUnit(SandSoldiers.OrderBy(x => x.Distance(Player)).FirstOrDefault());
                    Q.Cast(Player.ServerPosition.Extend(target.ServerPosition, Q.Range));

                    LeagueSharp.Common.Utility.DelayAction.Add(
                        (int)(Q.Delay * 1000 + Player.Distance(target) / 2500 * 1000),
                        () =>
                    {
                        Flash.Cast(Player.ServerPosition.Extend(target.ServerPosition, Flash.Range));

                        var nearestUnit =
                            ObjectManager.Get <Obj_AI_Base>()
                            .OrderBy(x => x.Distance(Player))
                            .FirstOrDefault(
                                x => !x.IsMe || !x.CharData.BaseSkinName.Equals("AzirSoldier"));

                        if (nearestUnit != null)
                        {
                            R.Cast(Player.ServerPosition.Extend(nearestUnit.ServerPosition, R.Range));
                        }
                    });
                });
            }
        }
예제 #9
0
        protected override void SemiR()
        {
            if (RootMenu["flashw"].Enabled)
            {
                Player.IssueOrder(OrderType.MoveTo, Game.CursorPos);
                var target = Extensions.GetBestEnemyHeroTargetInRange(W.Range + 340);
                if (W.Ready)
                {
                    if (Flash.Ready && Flash != null && target.IsValidTarget())
                    {
                        if (target.IsValidTarget(W.Range + 340))
                        {
                            if (!W.IsCharging)
                            {
                                if (W.StartCharging(Game.CursorPos))
                                {
                                    meowmeowtimes = RootMenu["timeflash"].As <MenuSlider>().Value + Game.TickCount;
                                }
                            }
                            if (meowmeowtimes < Game.TickCount)
                            {
                                if (W.IsCharging)
                                {
                                    if (Flash.Cast(target.ServerPosition))
                                    {
                                        W.ShootChargedSpell(Game.CursorPos, true);
                                    }
                                }
                            }
                        }
                    }
                }
            }

            if (Player.HasBuff("GalioW"))
            {
                Orbwalker.Implementation.AttackingEnabled = false;
            }
            else
            {
                Orbwalker.Implementation.AttackingEnabled = true;
            }
            if (Player.GetSpell(SpellSlot.R).Level == 1)
            {
                R.Range = 4000f;
            }
            if (Player.GetSpell(SpellSlot.R).Level == 2)
            {
                R.Range = 4750;
            }
            if (Player.GetSpell(SpellSlot.R).Level == 3)
            {
                R.Range = 5500;
            }
        }
예제 #10
0
        private static void DoInsec()
        {
            Player.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPosRaw);

            var target = TargetSelector.GetTarget(900);

            if (!target.IsValidTarget())
            {
                if (Environment.TickCount - LastInsecNotifcation >= 5000)
                {
                    Chat.Print(
                        "<font color=\"#7CFC00\"><b>Night Stalker Azir: PORTED BY DEATHGODX</b></font> Please select a target by left clicking them!");
                    LastInsecNotifcation = Environment.TickCount;
                }

                return;
            }

            if (!Q.IsInRange(target))
            {
                return;
            }

            if (W.IsReady() && E.IsReady() && (Q.IsReady()) && R.IsReady() &&
                Flash.IsReady())
            {
                W.Cast(Player.Position.Extend(target.Position, W.Range));

                DelayAction.Add(
                    (int)(W.Delay * 1000),
                    () =>
                {
                    E.CastOnUnit(SandSoldiers.OrderBy(x => x.Distance(Player)).FirstOrDefault());
                    Q.Cast(Player.Position.Extend(target.Position, Q.Range));

                    DelayAction.Add(
                        (int)(Q.Delay * 1000 + Player.Distance(target) / 2500 * 1000),
                        () =>
                    {
                        Flash.Cast(Player.Position.Extend(target.Position, Flash.Range));

                        var nearestUnit =
                            ObjectManager.Get <AIBaseClient>()
                            .OrderBy(x => x.Distance(Player))
                            .FirstOrDefault(
                                x => !x.IsMe || !x.CharacterData.Name.Equals("AzirSoldier"));

                        if (nearestUnit != null)
                        {
                            R.Cast(Player.Position.Extend(nearestUnit.Position, R.Range));
                        }
                    });
                });
            }
        }
예제 #11
0
        private static void EQFlashBurst(AIHeroClient target)
        {
            if (MenuInit.BurstDot && IgniteSlot != SpellSlot.Unknown && Ignite.IsReady() &&
                Ignite.Cast(target, true) == Spell.CastStates.SuccessfullyCasted)
            {
                return;
            }

            if (target.IsValidTarget(W.Range) && W.Cast(true))
            {
                return;
            }

            if (MenuInit.BurstFlash && FlashSlot != SpellSlot.Unknown && Flash.IsReady())
            {
                if (qStack < 2 && Utils.TickCount - lastQTime >= 850 && Q.Cast(Game.CursorPos, true))
                {
                    return;
                }

                if (qStack == 2 && E.IsReady() && R.IsReady() && !isRActive && W.IsReady() &&
                    target.IsValidTarget(E.Range + Flash.Range + Q.Range - 100))
                {
                    E.Cast(target.Position, true);
                    LeagueSharp.Common.Utility.DelayAction.Add(10 + Game.Ping, () => R.Cast(true));
                    LeagueSharp.Common.Utility.DelayAction.Add(50 + Game.Ping, () => Flash.Cast(target.Position, true));
                    LeagueSharp.Common.Utility.DelayAction.Add(61 + Game.Ping, () => Riven.UseItem());
                    LeagueSharp.Common.Utility.DelayAction.Add(62 + Game.Ping, () => Q.Cast(target.Position, true));
                    LeagueSharp.Common.Utility.DelayAction.Add(70 + Game.Ping, () => W.Cast(true));
                    LeagueSharp.Common.Utility.DelayAction.Add(71 + Game.Ping, () => R.Cast(target.Position, true));
                }
            }
            else if (target.IsValidTarget(E.Range + Q.Range + Q.Range + Q.Range))
            {
                if (qStack < 2 && Utils.TickCount - lastQTime >= 850 && Q.Cast(Game.CursorPos, true))
                {
                    return;
                }

                if (qStack == 2 && E.IsReady() && R.IsReady() && !isRActive && W.IsReady() &&
                    target.IsValidTarget(E.Range + Q.Range - 100))
                {
                    E.Cast(target.Position, true);
                    LeagueSharp.Common.Utility.DelayAction.Add(10 + Game.Ping, () => R.Cast(true));
                    LeagueSharp.Common.Utility.DelayAction.Add(50 + Game.Ping, () => Q.Cast(target.Position, true));
                    LeagueSharp.Common.Utility.DelayAction.Add(61 + Game.Ping, () => Riven.UseItem());
                    LeagueSharp.Common.Utility.DelayAction.Add(62 + Game.Ping, () => W.Cast(true));
                    LeagueSharp.Common.Utility.DelayAction.Add(70 + Game.Ping, () => R.Cast(target.Position, true));
                }
            }
        }
예제 #12
0
        private static void Game_OnUpdate()
        {
            if (Player.IsDead || MenuGUI.IsChatOpen())
            {
                return;
            }
            switch (Misc.Orbwalker.Mode)
            {
            case OrbwalkingMode.Combo:
                Combo();
                break;

            case OrbwalkingMode.Laneclear:
                LaneClear();
                JungleClear();
                break;
            }

            if (Main["combo"]["eF"].As <MenuKeyBind>().Enabled&& E.Ready && Flash.Ready)
            {
                var target = GetBestEnemyHeroTargetInRange(975);
                if (target != null)
                {
                    var xpos     = target.Position.Extend(target.ServerPosition, E.Range);
                    var predepos = E.GetPrediction(target).UnitPosition;
                    {
                        if (target.IsValidTarget(975) && Player.Distance(target.ServerPosition) < 975 && Player.Distance(target.ServerPosition) > 600 && Main["ehiteList2"]["eWhiteList2" + target.ChampionName.ToLower()].As <MenuSliderBool>().Enabled&& target.HealthPercent() <= Main["ehiteList2"]["eWhiteList2" + target.ChampionName.ToLower()].As <MenuSliderBool>().Value&& Player.HealthPercent() >= Main["ehiteList2"]["myHeal"].As <MenuSliderBool>().Value)
                        {
                            Flash.Cast(xpos);
                            E.Cast(predepos);
                        }
                    }
                }
            }

            if (Main["rProtect"]["autoR"].As <MenuBool>().Enabled&& Misc.Orbwalker.Mode != OrbwalkingMode.Combo)
            {
                var target = GetBestEnemyHeroTargetInRange(1200);
                if (Player.HealthPercent() >= Main["rProtect"]["autoRmyHeal"].As <MenuSlider>().Value&& (Player.CountEnemyHeroesInRange(Main["rProtect"]["autoREnemy"].As <MenuSlider>().Value) == 0 ||
                                                                                                         ObjectManager.Get <Obj_AI_Turret>().FirstOrDefault(x => x.Distance(Player.Position) < 600 && x.Distance(target) > 700 && x.IsAlly) != null))
                {
                    UltiProtec();
                }
            }

            if (Main["rProtect"]["r"].As <MenuKeyBind>().Enabled)
            {
                UltiProtec();
            }
        }
예제 #13
0
        private static void BurstEQ3ModeEvent(Obj_AI_Hero target, bool UseFlash)
        {
            try
            {
                if (UseFlash && FlashSlot != SpellSlot.Unknown && Flash.Ready)
                {
                    if (target.IsValidTarget(E.Range + 425 + Q.Range - 150) && qStack > 0 && E.Ready && R.Ready && !isRActive && W.Ready)
                    {
                        E.Cast(target.ServerPosition);
                        DelayAction.Queue(10, () => R.Cast());
                        DelayAction.Queue(50, () => Flash.Cast(target.ServerPosition));
                        DelayAction.Queue(61, () => Q.Cast(target.ServerPosition));
                        DelayAction.Queue(62, UseItem);
                        DelayAction.Queue(70, () => W.Cast());
                        DelayAction.Queue(71, () => R.Cast(target.ServerPosition));
                        return;
                    }

                    if (qStack < 2 && Game.TickCount - lastQTime >= 850)
                    {
                        Q.Cast(Game.CursorPos);
                    }
                }
                else
                {
                    if (target.IsValidTarget(E.Range + Q.Range - 150) && qStack == 2 && E.Ready && R.Ready && !isRActive && W.Ready)
                    {
                        E.Cast(target.ServerPosition);
                        DelayAction.Queue(10, () => R.Cast());
                        DelayAction.Queue(50, () => Q.Cast(target.ServerPosition));
                        DelayAction.Queue(61, UseItem);
                        DelayAction.Queue(62, () => W.Cast());
                        DelayAction.Queue(70, () => R.Cast(target.ServerPosition));
                        return;
                    }

                    if (target.IsValidTarget(E.Range + Q.Range + Q.Range + Q.Range))
                    {
                        if (qStack < 2 && Game.TickCount - lastQTime >= 850)
                        {
                            Q.Cast(Game.CursorPos);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error in MyEventManager.BurstEQ3ModeEvent." + ex);
            }
        }
예제 #14
0
파일: Riven.cs 프로젝트: kin123/EloBuddy
        private static void BurstFlash()
        {
            var target = TargetSelector.SelectedTarget;

            Orbwalker.ForcedTarget = target;
            Orbwalker.OrbwalkTo(target.ServerPosition);
            if (target == null || target.IsZombie || target.IsInvulnerable)
            {
                return;
            }
            if (target.IsValidTarget(800))

            {
                if (R2.Cast(target.ServerPosition))
                {
                    E.Cast(target.ServerPosition);
                }


                if (ComboMenu["BurstKor"].Cast <KeyBind>().CurrentValue&& forceR == false)

                {
                }

                if (Flash.IsReady() && (myHero.Distance(target.Position) <= 600))
                {
                    R2.Cast(target.ServerPosition);
                    Flash.Cast(target.ServerPosition);
                }

                ItemLogic.Hydra.Cast(target);

                if (target.IsValidTarget(Q.Range))
                {
                    if (Q.IsReady())

                    {
                        Q.Cast();
                    }

                    if (W.IsReady())

                    {
                        W.Cast(target.ServerPosition);
                    }
                }
            }
        }
예제 #15
0
파일: Riven.cs 프로젝트: kin123/EloBuddy
        private static void Burst()
        {
            var target = TargetSelector.SelectedTarget;

            Orbwalker.ForcedTarget = target;
            Orbwalker.OrbwalkTo(target.ServerPosition);
            if (target == null || target.IsZombie || target.IsInvulnerable)
            {
                return;
            }
            if (target.IsValidTarget(800))

            {
                if (E.IsReady())
                {
                    Youmu.Cast(target);
                    Player.CastSpell(SpellSlot.E, target.ServerPosition);
                }
                Youmu.Cast(target);

                if (R1.IsReady() && ComboMenu["BurstBox"].Cast <KeyBind>().CurrentValue&& forceR == false)
                {
                    R1.Cast();
                }

                if (Flash.IsReady() && (myHero.Distance(target.Position) <= 600))
                {
                    Flash.Cast(target.ServerPosition);
                }

                ItemLogic.Hydra.Cast(target);

                if (target.IsValidTarget(W.Range))
                {
                    if (W.IsReady())

                    {
                        W.Cast();
                    }

                    if (R2.IsReady())

                    {
                        R2.Cast(target.ServerPosition);
                    }
                }
            }
        }
예제 #16
0
파일: Combo.cs 프로젝트: DomcasCZ/Elobuddy
        public static void Execute20()
        {
            Player.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPos);
            var target = TargetSelector.GetTarget(SpellsManager.FlashR.Range, DamageType.Magical);

            //var target = TargetSelector.SelectedTarget;
            if (target.IsValidTarget(SpellsManager.FlashR.Range))
            {
                var Flashh = EloBuddy.Player.Instance.ServerPosition.Extend(target.ServerPosition, Flash.Range);

                if (Flash.IsReady() && target.IsValidTarget() && SpellsManager.R.IsReady())
                {
                    Flash.Cast(Flashh.To3DWorld());
                    SpellsManager.FlashR.Cast(target.Position);
                }
            }
        }
예제 #17
0
파일: Annie.cs 프로젝트: denis3285/AimTec
        protected override void SemiR()
        {
            if (RootMenu["combo"]["flashr"].Enabled)
            {
                Player.IssueOrder(OrderType.MoveTo, Game.CursorPos);
                var target = Extensions.GetBestEnemyHeroTargetInRange(R.Range + 380);

                Player.IssueOrder(OrderType.MoveTo, Game.CursorPos);

                if (RootMenu["combo"]["hitr"].As <MenuSlider>().Value <= target.CountEnemyHeroesInRange(290))
                {
                    if (R.Ready)
                    {
                        if (Flash.Ready && Flash != null && target.IsValidTarget() && target != null)
                        {
                            if (target.Distance(Player) < R.Range + 380)
                            {
                                if (!RootMenu["blacklist"][target.ChampionName.ToLower()].Enabled)
                                {
                                    var meowmeow = R.GetPrediction(target);
                                    if (R.Cast(meowmeow.CastPosition))
                                    {
                                        Flash.Cast(target.ServerPosition);
                                    }
                                }
                            }
                        }
                    }
                }
            }

            RFollow();
            if (RootMenu["stack"].Enabled)
            {
                if (!Player.HasBuff("pyromania_particle") && !Player.IsRecalling() &&
                    RootMenu["mana"].As <MenuSlider>().Value <= Player.ManaPercent())
                {
                    E.Cast();
                }
            }
        }
예제 #18
0
 protected override void SemiR()
 {
     if (RootMenu["flashr"].Enabled)
     {
         if (!Player.HasBuff("malzaharrsound"))
         {
             var target = Extensions.GetBestEnemyHeroTargetInRange(R.Range + 410);
             if (R.Ready)
             {
                 if (Flash.Ready && Flash != null)
                 {
                     Player.IssueOrder(OrderType.MoveTo, Game.CursorPos);
                     if (target.IsValidTarget())
                     {
                         if (target.Distance(Player) > R.Range)
                         {
                             if (!RootMenu["blacklist"][target.ChampionName.ToLower()].Enabled)
                             {
                                 if (R.Cast(target))
                                 {
                                     Flash.Cast(target.ServerPosition);
                                 }
                             }
                         }
                     }
                 }
             }
         }
     }
     if (Player.HasBuff("malzaharrsound"))
     {
         Orbwalker.Implementation.MovingEnabled    = false;
         Orbwalker.Implementation.AttackingEnabled = false;
     }
     if (!Player.HasBuff("malzaharrsound"))
     {
         Orbwalker.Implementation.MovingEnabled    = true;
         Orbwalker.Implementation.AttackingEnabled = true;
     }
 }
예제 #19
0
        private static void BurstShyModeEvent(Obj_AI_Hero target, bool UseFlash)
        {
            try
            {
                if (E.Ready && R.Ready && W.Ready && !isRActive)
                {
                    if (target.IsValidTarget(E.Range + Me.BoundingRadius - 30))
                    {
                        E.Cast(target.ServerPosition);
                        DelayAction.Queue(10, () => R.Cast());
                        DelayAction.Queue(60, () => W.Cast());
                        DelayAction.Queue(150, () => Q.Cast(target.ServerPosition));
                        return;
                    }

                    if (UseFlash && FlashSlot != SpellSlot.Unknown && Flash.Ready)
                    {
                        if (target.IsValidTarget(E.Range + Me.BoundingRadius + 425 - 50))
                        {
                            E.Cast(target.ServerPosition);
                            DelayAction.Queue(10, () => R.Cast());
                            DelayAction.Queue(60, () => W.Cast());
                            DelayAction.Queue(61, () => Flash.Cast(target.ServerPosition));
                            DelayAction.Queue(150, () => Q.Cast(target.ServerPosition));
                        }
                    }
                }
                else
                {
                    if (W.Ready && target.IsValidTarget(W.Range))
                    {
                        W.Cast();
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error in MyEventManager.BurstShyModeEvent." + ex);
            }
        }
예제 #20
0
        private static void ExecuteBurst()
        {
            if (!R.Ready || !Flash.Ready || LocalPlayer.Instance.HasBuff("AnnieRController"))
            {
                return;
            }

            //Flash+ Full Combo
            if (BurstMode.Value == 0 && (!W.Ready || !Q.Ready))
            {
                return;
            }

            var targ = TargetSelector.GetBestTarget(Flash.Range + W.Range);

            if (targ == null)
            {
                return;
            }

            BurstTarget = targ;

            var castPos = R.GetPrediction(BurstTarget).CastPosition;

            if (castPos.IsZero)
            {
                return;
            }

            var flashPos =
                LocalPlayer.Instance.Position.Extend(castPos, Flash.Range);

            if (BurstTarget.DistanceToPlayer() > R.Range + BurstTarget.BoundingRadius)
            {
                Flash.Cast(flashPos);
            }

            R.Cast(castPos);
        }
예제 #21
0
        private static void FlashE()
        {
            Player.IssueOrder(GameObjectOrder.MoveTo, MousePos);
            var fetarget = TargetSelector.GetTarget(E.Range + 425, DamageType.Magical);

            if (fetarget == null)
            {
                return;
            }
            var xpos     = fetarget.Position.Extend(fetarget, E.Range);
            var predepos = E.GetPrediction(fetarget);
            {
                if (E.IsReady() && Flash.IsReady())
                {
                    if (fetarget.IsValidTarget(E.Range + 425))
                    {
                        Flash.Cast((Vector3)xpos);
                        E.Cast(predepos.CastPosition);
                    }
                }
            }
        }
예제 #22
0
파일: Azir.cs 프로젝트: jitart/adc
        public static void Normal(Obj_AI_Base target, bool Combo = false)
        {
            Orbwalker.OrbwalkTo(Game.CursorPos);
            if (target == null || insectpos(target) == null || Common.Mana() > user.Mana || !R.IsReady())
            {
                return;
            }

            var insecpos = target.ServerPosition.Extend(insectpos(target), -200).To3D();
            var rpos     = user.ServerPosition.Extend(insectpos(target), R.Range).To3D();

            if (target.IsKillable(R.Range))
            {
                if (JumperMenu.checkbox("flash") && Flash != null)
                {
                    var flashrange = Flash.Range + 250;
                    var enemies    = EntityManager.Heroes.Enemies.Where(e => e.IsKillable(flashrange) && e.IsKillable());
                    var pred       = Prediction.Position.PredictCircularMissileAoe(enemies.Cast <Obj_AI_Base>().ToArray(), flashrange, R.Width + 25, R.CastDelay, R.Speed);
                    var castpos    = pred.OrderByDescending(p => p.GetCollisionObjects <AIHeroClient>().Length).FirstOrDefault(p => p.CollisionObjects.Contains(target));
                    if (castpos?.GetCollisionObjects <AIHeroClient>().Length > user.CountEnemeis(R.Range))
                    {
                        Flash.Cast(castpos.CastPosition);
                    }
                }

                R.Cast(rpos);
            }
            else
            {
                if (Q.IsInRange(target))
                {
                    Jump(insecpos);
                }
            }

            Orbwalker.OrbwalkTo(insecpos);
        }
예제 #23
0
        private static void FlashQ()
        {
            Player.IssueOrder(GameObjectOrder.MoveTo, MousePos);
            var ftarget = TargetSelector.GetTarget(850 + 425, DamageType.Magical);

            if (ftarget == null)
            {
                return;
            }
            var xpos     = ftarget.Position.Extend(ftarget, 850);
            var predqpos = Q.GetPrediction(ftarget).CastPosition;

            if (ComboMenu["flashq"].Cast <KeyBind>().CurrentValue)
            {
                if (Q.IsReady() && Flash.IsReady())
                {
                    if (ftarget.IsValidTarget(850 + 425))
                    {
                        Flash.Cast((Vector3)xpos);
                        Q.Cast(predqpos);
                    }
                }
            }
        }
예제 #24
0
        private static void EqFlash()
        {
            var manacheck = Player.Mana > Player.SpellBook.GetSpell(SpellSlot.Q).Cost + Player.SpellBook.GetSpell(SpellSlot.E).Cost;
            var target    = GetBestEnemyHeroTargetInRange(Q.Range + Flash.Range - 100);

            if (target != null && manacheck && Q.Ready && E.Ready)
            {
                if (target.IsValidTarget(Q.Range + Flash.Range) && Player.Distance(target.ServerPosition) < 1180 && Player.Distance(target.ServerPosition) > 600)
                {
                    var xpos = target.Position.Extend(target.ServerPosition, E.Range);
                    Flash.Cast(xpos);

                    E.Cast(target.ServerPosition.Extend(Player.ServerPosition, -E.Width - 100));
                    Q.Cast(target.ServerPosition);
                    if (W.Ready)
                    {
                        if (target.IsValidTarget(W.Range) && Player.CountEnemyHeroesInRange(W.Range - 100) >= 1)
                        {
                            W.Cast();
                        }
                    }
                }
            }
        }
예제 #25
0
        private static void Game_OnTick(EventArgs args)
        {
            if (Menu.CheckBox(Menu.Principal, "Skin"))
            {
                var id = Menu.Slider(Menu.Principal, "SkinID");
                if (Player.Instance.SkinId != id)
                {
                    Player.Instance.SetSkinId(id);
                }
            }

            if (Ignite.Slot != SpellSlot.Unknown)
            {
                if (Ignite.IsReady() && Menu.CheckBox(Menu.Item, "Ignite"))
                {
                    foreach (var Hero in EntityManager.Heroes.Enemies.Where(x => x.IsValidTarget(Ignite.Range)).OrderBy(x => x.Health))
                    {
                        if (Hero.Health <= Player.Instance.GetSummonerSpellDamage(Hero, DamageLibrary.SummonerSpells.Ignite))
                        {
                            Ignite.Cast(Hero);
                        }
                    }
                }
            }

            if (!W.IsReady())
            {
                TTs = false;
            }

            if (TTs)
            {
                foreach (var Hero in EntityManager.Heroes.Enemies.Where(X => X.Position.Distance(Player.Instance.Position) <= Player.Instance.GetAutoAttackRange()).OrderBy(x => x.Health))
                {
                    TT = Hero;
                }

                foreach (var Minions in EntityManager.MinionsAndMonsters.EnemyMinions.Where(x => x.Position.Distance(Player.Instance.Position) <= Player.Instance.GetAutoAttackRange()).OrderBy(x => x.Health))
                {
                    TT = Minions;
                }

                foreach (var Mob in EntityManager.MinionsAndMonsters.GetJungleMonsters().Where(x => x.Position.Distance(Player.Instance.Position) <= Player.Instance.GetAutoAttackRange()).OrderBy(x => x.Health))
                {
                    TT = Mob;
                }

                if (TT != null)
                {
                    Core.DelayAction(() => Player.IssueOrder(GameObjectOrder.AttackUnit, TT), 50);
                }
            }

            if (Jungle())
            {
                var Monsters = EntityManager.MinionsAndMonsters.GetJungleMonsters().Where(X => X.IsValidTarget(E.Range + Player.Instance.GetAutoAttackRange())).OrderBy(x => x.MaxHealth).FirstOrDefault();

                if (Monsters != null)
                {
                    if (W.IsReady() && Menu.CheckBox(Menu.W, "Jungle"))
                    {
                        if (Monsters.IsValidTarget(RealW()))
                        {
                            W.Cast();
                        }
                    }

                    if (E.IsReady() && Menu.CheckBox(Menu.E, "Jungle"))
                    {
                        if (Monsters.IsValidTarget(E.Range))
                        {
                            E.Cast(Monsters.Position);
                        }
                    }
                }
            }

            if (Lane())
            {
                var Minions = EntityManager.MinionsAndMonsters.GetLaneMinions(EntityManager.UnitTeam.Enemy, Player.Instance.Position, RealW());
                var Circle  = EntityManager.MinionsAndMonsters.GetCircularFarmLocation(Minions, 200, RealW());

                if (Q.IsReady() && CountQ == 2)
                {
                    Q.Cast(Circle.CastPosition);
                }

                if (Menu.CheckBox(Menu.W, "Lane"))
                {
                    if (Circle.HitNumber >= Menu.Slider(Menu.W, "LaneMin") && W.IsReady())
                    {
                        W.Cast();
                    }
                }
            }

            if (Combo() && Target != null)
            {
                if (Menu.CheckBox(Menu.Item, "Youmuu"))
                {
                    if (Target.IsValidTarget(E.Range))
                    {
                        Use();
                    }
                }

                if (R.IsReady() && Menu.CheckBox(Menu.R, "UseR1") && R.ToggleState == 1)
                {
                    if (!IsActive && CheckR1(Target))
                    {
                        if (Target.IsValidTarget(RealW(), true) && W.IsReady())
                        {
                            Reset();
                            W.Cast();
                            R.Cast();
                        }
                        else if (Target.IsValidTarget(E.Range + Player.Instance.GetAutoAttackRange(), true) && E.IsReady())
                        {
                            E.Cast(Target.Position);
                            R.Cast();
                        }
                        else if (Target.IsValidTarget(RealQ(), true) && Q.IsReady())
                        {
                            Q.Cast(Target.Position);
                            R.Cast();
                        }
                        else
                        {
                            R.Cast();
                        }
                    }
                }

                if (R2.IsReady() && R.ToggleState >= 2)
                {
                    if (IsActive && CheckR2(Target))
                    {
                        var Pred = R2.GetPrediction(Target);

                        if (Pred.HitChance >= HitChance.High)
                        {
                            if (Target.IsValidTarget(R2.Range))
                            {
                                R2.Cast(Pred.UnitPosition);
                            }
                        }
                    }
                }

                if (Q.IsReady() && CountQ == 2)
                {
                    if (Target.IsValidTarget(RealQ(), true) && !Target.IsValidTarget(Player.Instance.GetAutoAttackRange()))
                    {
                        Q.Cast(Target.Position);
                    }

                    if (Target.IsValidTarget(RealW(), true) && W.IsReady())
                    {
                        Reset();
                        W.Cast();
                    }
                }

                if (E.IsReady())
                {
                    if (Target.IsValidTarget(E.Range + Player.Instance.GetAutoAttackRange(), true))
                    {
                        if (!Target.IsValidTarget(Player.Instance.GetAutoAttackRange()))
                        {
                            E.Cast(Target.Position);
                        }
                    }

                    if (W.IsReady() && Target.IsValidTarget(RealW()))
                    {
                        Reset();
                        W.Cast();
                    }
                }

                if (W.IsReady() && Target.IsValidTarget(RealW()))
                {
                    Reset();
                    W.Cast();
                }
            }

            if (Menu.Keybind(Menu.Misc, "Burst") || Orbwalker.ActiveModesFlags.HasFlag(Orbwalker.ActiveModes.Harass))
            {
                if (Target.IsValidTarget(E.Range + Flash.Range))
                {
                    var Pred = R2.GetPrediction(Target);
                    E.Cast(Player.Instance.Position.Extend(Target.Position, E.Range).To3D());

                    if (!IsActive)
                    {
                        R.Cast();
                    }

                    if (Flash.IsReady() && Target.Position.Distance(Player.Instance.Position) <= 650)
                    {
                        Flash.Cast(Player.Instance.Position.Extend(Target.Position, Flash.Range).To3D());
                    }

                    if (W.IsReady() && Target.IsValidTarget(RealW()))
                    {
                        Reset();
                        W.Cast();
                    }

                    if (Menu.CheckBox(Menu.Item, "Youmuu"))
                    {
                        if (Target.IsValidTarget(E.Range))
                        {
                            Use();
                        }
                    }

                    if (Q.IsReady())
                    {
                        Q.Cast(Target.Position);
                    }

                    if (IsActive)
                    {
                        R2.Cast(Target.Position);
                    }
                }
            }

            if (Flee())
            {
                if (Menu.CheckBox(Menu.Q, "Flee") && Q.IsReady())
                {
                    Q.Cast((Game.CursorPos.Distance(Player.Instance) > Q.Range ? Player.Instance.Position.Extend(Game.CursorPos, Q.Range - 1).To3D() : Game.CursorPos));
                }

                if (Menu.CheckBox(Menu.E, "Flee") && E.IsReady())
                {
                    E.Cast((Game.CursorPos.Distance(Player.Instance) > E.Range ? Player.Instance.Position.Extend(Game.CursorPos, E.Range - 1).To3D() : Game.CursorPos));
                }
            }
        }
예제 #26
0
        private static void EQFlashEvent()
        {
            try
            {
                if (Orbwalker.Mode == OrbwalkingMode.None && FlashSlot != SpellSlot.Unknown && Flash.Ready)
                {
                    Me.IssueOrder(OrderType.MoveTo, Game.CursorPos);

                    if (!HaveQ3)
                    {
                        if (Q.Ready)
                        {
                            var minion = GameObjects.EnemyMinions.FirstOrDefault(x => x.IsValidTarget(Q.Range) && x.MaxHealth > 5);

                            if (minion != null && minion.IsValidTarget(Q.Range))
                            {
                                Q.Cast(minion);
                            }
                        }
                    }
                    else if (HaveQ3 && Q3.Ready)
                    {
                        if (IsMyDashing && FlashSlot != SpellSlot.Unknown && Flash.Ready)
                        {
                            var bestPos =
                                MyExtraManager.FlashPoints().ToArray()
                                .Where(x => GameObjects.EnemyHeroes.Count(a => a.IsValidTarget(600f, true, false, x)) > 0)
                                .OrderByDescending(x => GameObjects.EnemyHeroes.Count(i => i.Distance(x) <= 220))
                                .FirstOrDefault();

                            if (bestPos != Vector3.Zero && bestPos.CountEnemyHeroesInRange(220) > 0 && Q.Cast(Me.ServerPosition))
                            {
                                Aimtec.SDK.Util.DelayAction.Queue(10 + (Game.Ping / 2 - 5), () =>
                                {
                                    Flash.Cast(bestPos);
                                    YasuolastEQFlashTime = Game.TickCount;
                                });
                            }
                        }

                        if (E.Ready)
                        {
                            var allTargets = new List <Obj_AI_Base>();

                            allTargets.AddRange(GameObjects.EnemyMinions.Where(x => x.IsValidTarget(E.Range) && x.MaxHealth > 5));
                            allTargets.AddRange(GameObjects.EnemyHeroes.Where(x => !x.IsDead && x.IsValidTarget(E.Range)));

                            if (allTargets.Any())
                            {
                                var eTarget =
                                    allTargets.Where(x => x.IsValidTarget(E.Range) && MyExtraManager.CanCastE(x))
                                    .OrderByDescending(
                                        x =>
                                        GameObjects.EnemyHeroes.Count(
                                            t => t.IsValidTarget(600f, true, false, MyExtraManager.PosAfterE(x))))
                                    .FirstOrDefault();

                                if (eTarget != null)
                                {
                                    E.CastOnUnit(eTarget);
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error in MyEventManager.EQFlashEvent." + ex);
            }
        }
예제 #27
0
        private static void EQFlashEvent()
        {
            try
            {
                if (Orbwalker.ActiveMode == OrbwalkerMode.None && FlashSlot != SpellSlot.Unknown && Flash.IsReady())
                {
                    Me.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPosRaw);

                    if (!HaveQ3)
                    {
                        if (Q.IsReady())
                        {
                            var minion = GameObjects.EnemyMinions.FirstOrDefault(x => x.IsValidTarget(Q.Range) && x.MaxHealth > 5);

                            if (minion != null && minion.IsValidTarget(Q.Range))
                            {
                                var pred = Q.GetPrediction(minion);
                                if (pred.Hitchance >= HitChance.Medium)
                                {
                                    Q.Cast(pred.CastPosition);
                                }
                            }
                        }
                    }
                    else if (HaveQ3 && Q3.IsReady())
                    {
                        if (IsMyDashing && FlashSlot != SpellSlot.Unknown && Flash.IsReady())
                        {
                            var bestPos =
                                MyExtraManager.FlashPoints().ToArray()
                                .Where(x => GameObjects.EnemyHeroes.Count(a => a.IsValidTarget(600f, true, x)) > 0)
                                .OrderByDescending(x => GameObjects.EnemyHeroes.Count(i => i.Distance(x) <= 220))
                                .FirstOrDefault();

                            if (bestPos != Vector3.Zero && bestPos.CountEnemyHeroesInRange(220) > 0 && Q.Cast(Me.PreviousPosition))
                            {
                                DelayAction.Add(10 + (Game.Ping / 2 - 5), () =>
                                {
                                    Flash.Cast(bestPos);
                                    YasuolastEQFlashTime = Variables.GameTimeTickCount;
                                });
                            }
                        }

                        if (E.IsReady())
                        {
                            var allTargets = new List <AIBaseClient>();

                            allTargets.AddRange(GameObjects.EnemyMinions.Where(x => x.IsValidTarget(E.Range) && x.MaxHealth > 5));
                            allTargets.AddRange(GameObjects.EnemyHeroes.Where(x => !x.IsDead && x.IsValidTarget(E.Range)));

                            if (allTargets.Any())
                            {
                                var eTarget =
                                    allTargets.Where(x => x.IsValidTarget(E.Range) && MyExtraManager.CanCastE(x))
                                    .OrderByDescending(
                                        x =>
                                        GameObjects.EnemyHeroes.Count(
                                            t => t.IsValidTarget(600f, true, MyExtraManager.PosAfterE(x))))
                                    .FirstOrDefault();

                                if (eTarget != null)
                                {
                                    E.CastOnUnit(eTarget);
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error in MyEventManager.EQFlashEvent." + ex);
            }
        }
예제 #28
0
파일: Combo.cs 프로젝트: Muse30/FUELeesin
        private static void Obj_AI_Base_OnProcessSpellCast(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs args)
        {
            if (!sender.IsMe)
            {
                return;
            }

            if (SpellNames.Contains(args.SData.Name.ToLower()))
            {
                PassiveStacks = 2;
                passiveTimer  = Environment.TickCount + 3000;
                LastSpellTime = Environment.TickCount;
            }

            if (args.SData.Name.Equals("BlindMonkQOne", StringComparison.InvariantCultureIgnoreCase))
            {
                castQAgain = false;
                Core.DelayAction(delegate { castQAgain = true; }, 2900);
            }

            if (R.IsReady() && Flash.IsReady())
            {
                var target = InsecMenu.GetCheckBoxValue("insecMode")
                                 ? TargetSelector.SelectedTarget
                                 : TargetSelector.GetTarget(R.Range, DamageType.Physical);

                if (target == null)
                {
                    return;
                }
                if (args.SData.Name.Equals("BlindMonkRKick", StringComparison.InvariantCultureIgnoreCase) &&
                    InsecMenu.GetKeyBindValue("insecflash"))
                {
                    Core.DelayAction(delegate { Flash.Cast(GetInsecPos(target)); }, 80);
                }
            }

            if (args.SData.Name.Equals("summonerflash", StringComparison.InvariantCultureIgnoreCase) &&
                insecComboStep != InsecComboStepSelect.None)
            {
                var target = InsecMenu.GetCheckBoxValue("insecMode")
                                 ? TargetSelector.SelectedTarget
                                 : TargetSelector.GetTarget(Q.Range, DamageType.Physical);

                insecComboStep = InsecComboStepSelect.Pressr;

                Core.DelayAction(delegate { R.Cast(target); }, 80);
            }
            if (args.SData.Name.Equals("BlindMonkQTwo", StringComparison.InvariantCultureIgnoreCase))
            {
                waitingForQ2 = true;
                Core.DelayAction(delegate { waitingForQ2 = false; }, 3000);
            }
            if (args.SData.Name.Equals("BlindMonkRKick", StringComparison.InvariantCultureIgnoreCase))
            {
                insecComboStep = InsecComboStepSelect.None;
            }

            switch (args.SData.Name.ToLower())
            {
            case "blindmonkqone":
                LastQ         = Environment.TickCount;
                LastSpell     = Environment.TickCount;
                PassiveStacks = 2;
                break;

            case "blindmonkwone":
                LastW         = Environment.TickCount;
                LastSpell     = Environment.TickCount;
                PassiveStacks = 2;
                break;

            case "blindmonkeone":
                LastE         = Environment.TickCount;
                LastSpell     = Environment.TickCount;
                PassiveStacks = 2;
                break;

            case "blindmonkqtwo":
                LastQ2        = Environment.TickCount;
                LastSpell     = Environment.TickCount;
                PassiveStacks = 2;
                CheckQ        = false;
                break;

            case "blindmonkwtwo":
                LastW2        = Environment.TickCount;
                LastSpell     = Environment.TickCount;
                PassiveStacks = 2;
                break;

            case "blindmonketwo":
                LastQ         = Environment.TickCount;
                LastSpell     = Environment.TickCount;
                PassiveStacks = 2;
                break;

            case "blindmonkrkick":
                LastR         = Environment.TickCount;
                LastSpell     = Environment.TickCount;
                PassiveStacks = 2;
                break;
            }
        }
예제 #29
0
        private static void ComboEQFlashEvent(AIHeroClient target)
        {
            try
            {
                if (FlashSlot == SpellSlot.Unknown || !Flash.IsReady() || !R.IsReady())
                {
                    return;
                }

                if (ComboMenu["FlowersYasuo.ComboMenu.EQFlashKS"].GetValue <MenuBool>().Enabled&&
                    GameObjects.EnemyHeroes.Count(x => x.IsValidTarget(1200) && x.NetworkId != target.NetworkId) <= 2 &&
                    GameObjects.AllyHeroes.Count(x => x.IsValidTarget(1200, false) && x.NetworkId != Me.NetworkId) <= 1)
                {
                    if (target.Health + target.HPRegenRate * 2 <
                        Me.GetSpellDamage(target, SpellSlot.Q) +
                        (MyExtraManager.CanCastE(target) ? Me.GetSpellDamage(target, SpellSlot.E) : 0) +
                        Me.GetAutoAttackDamage(target) * 2 + Me.GetSpellDamage(target, SpellSlot.R))
                    {
                        var bestPos = MyExtraManager.FlashPoints().ToArray().FirstOrDefault(x => target.Distance(x) <= 220);

                        if (bestPos != Vector3.Zero && bestPos.CountEnemyHeroesInRange(220) > 0 && Q.Cast(Me.PreviousPosition))
                        {
                            DelayAction.Add(10 + (Game.Ping / 2 - 5),
                                            () =>
                            {
                                Flash.Cast(bestPos);
                                YasuolastEQFlashTime = Variables.GameTimeTickCount;
                            });
                        }
                    }
                }

                if (ComboMenu["FlowersYasuo.ComboMenu.EQFlashCount"].GetValue <MenuSliderButton>().Enabled&&
                    GameObjects.EnemyHeroes.Count(x => x.IsValidTarget(1200)) >=
                    ComboMenu["FlowersYasuo.ComboMenu.EQFlashCount"].GetValue <MenuSliderButton>().Value&&
                    GameObjects.AllyHeroes.Count(x => x.IsValidTarget(1200, false) && x.NetworkId != Me.NetworkId) >=
                    ComboMenu["FlowersYasuo.ComboMenu.EQFlashCount"].GetValue <MenuSliderButton>().Value - 1)
                {
                    var bestPos =
                        MyExtraManager.FlashPoints().ToArray()
                        .Where(
                            x =>
                            GameObjects.EnemyHeroes.Count(a => a.IsValidTarget(600f, true, x)) >=
                            ComboMenu["FlowersYasuo.ComboMenu.EQFlashCount"].GetValue <MenuSliderButton>().Value)
                        .OrderByDescending(x => GameObjects.EnemyHeroes.Count(i => i.Distance(x) <= 220))
                        .FirstOrDefault();

                    if (bestPos != Vector3.Zero &&
                        bestPos.CountEnemyHeroesInRange(220) >=
                        ComboMenu["FlowersYasuo.ComboMenu.EQFlashCount"].GetValue <MenuSliderButton>().Value&& Q.Cast(Me.PreviousPosition))
                    {
                        DelayAction.Add(10 + (Game.Ping / 2 - 5),
                                        () =>
                        {
                            Flash.Cast(bestPos);
                            YasuolastEQFlashTime = Variables.GameTimeTickCount;
                        });
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error in MyEventManager.ComboEQFlashEvent." + ex);
            }
        }
예제 #30
0
파일: Insec.cs 프로젝트: Muse30/FUELeesin
        /// <summary>
        /// Put in here what you want to do when the mode is running
        /// </summary>
        public static void InsecCombo(AIHeroClient target)
        {
            if (target != null && target.IsVisible)
            {
                if (myHero.Distance(GetInsecPos(target)) < 200)
                {
                    insecComboStep = InsecComboStepSelect.Pressr;
                }
                else if (insecComboStep == InsecComboStepSelect.None &&
                         GetInsecPos(target).Distance(myHero.Position) < 600)
                {
                    insecComboStep = InsecComboStepSelect.Wgapclose;
                }
                else if (insecComboStep == InsecComboStepSelect.None &&
                         target.Distance(myHero) < Q.Range)
                {
                    insecComboStep = InsecComboStepSelect.Qgapclose;
                }

                switch (insecComboStep)
                {
                case InsecComboStepSelect.Qgapclose:

                    var prediction = Q.GetPrediction(target);
                    if (prediction.CollisionObjects.Count(h => h.IsEnemy && !h.IsDead && h is Obj_AI_Minion) >= 1 && InsecMenu.GetCheckBoxValue("inseccheck") && Q.IsReady())
                    {
                        foreach (var unit in ObjectManager.Get <Obj_AI_Base>().Where(obj => (((obj is Obj_AI_Minion) && myHero.GetSpellDamage(target, SpellSlot.Q) < obj.Health + 10) || (obj is AIHeroClient)) && obj.IsValidTarget(Q.Range) && obj.Distance(GetInsecPos(target)) < 500))
                        {
                            var pred = Q.GetPrediction(unit);
                            if (pred.HitChance >= HitChance.High)
                            {
                                Q.Cast(pred.CastPosition);
                            }
                            break;
                        }
                    }

                    if (!(target.HasQBuff()) && QState)
                    {
                        CastQ(target, MiscMenu.GetCheckBoxValue("smiteq"));
                    }
                    else if (target.HasQBuff())
                    {
                        Q2.Cast();
                        insecComboStep = InsecComboStepSelect.Wgapclose;
                    }
                    else
                    {
                        if (Q.Name == "blindmonkqtwo" && ReturnQBuff().Distance(target) <= 600 && target.HasQBuff())
                        {
                            Q2.Cast();
                        }
                    }
                    break;

                case InsecComboStepSelect.Wgapclose:

                    if (myHero.Distance(target) < WardRange)
                    {
                        WardJumper.WardJump(GetInsecPos(target), false, true, true);


                        if (FindBestWardItem() == null && R.IsReady() &&
                            InsecMenu.GetCheckBoxValue("insecnoward") &&
                            Flash.IsReady())
                        {
                            if ((GetInsecPos(target).Distance(myHero.Position) < FlashRange &&
                                 LastWard + 1000 < Environment.TickCount) || !W.IsReady())
                            {
                                Flash.Cast(GetInsecPos(target));
                            }
                        }
                    }
                    else if (myHero.Distance(target) < WardFlashRange)
                    {
                        WardJumper.WardJump(target.Position);

                        if (R.IsReady() && InsecMenu.GetCheckBoxValue("insecnoward") &&
                            Flash.IsReady())
                        {
                            if (myHero.Distance(target) < FlashRange - 25)
                            {
                                if (FindBestWardItem() == null || LastWard + 1000 < Environment.TickCount)
                                {
                                    Flash.Cast(GetInsecPos(target));
                                }
                            }
                        }
                    }
                    break;

                case InsecComboStepSelect.Pressr:
                    R.Cast(target);
                    break;
                }
            }
        }