Ejemplo n.º 1
0
        private static void AutoUseEvent()
        {
            if (MiscOption.GetKey("R", "SemiRKey").Active)
            {
                Me.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPos);

                if (Me.Spellbook.GetSpell(SpellSlot.R).Level > 0 && R.IsReady())
                {
                    var target = MyTargetSelector.GetTarget(R.Range);
                    if (target.IsValidTarget(R.Range) && !target.IsValidTarget(MiscOption.GetSlider("R", "GlobalRMin").Value))
                    {
                        var rPred = R.GetPrediction(target);

                        if (rPred.Hitchance >= HitChance.High)
                        {
                            R.Cast(rPred.CastPosition);
                        }
                    }
                }
            }

            if (MiscOption.GetBool("W", "WSlow").Enabled&& W.IsReady() && Me.HasBuffOfType(BuffType.Slow))
            {
                W.Cast();
            }
        }
Ejemplo n.º 2
0
        private static void AutoR()
        {
            if (R.Level > 0 && Me.Mana > R.ManaCost && R.IsReady())
            {
                var ally = ObjectManager.Heroes.Allies.FirstOrDefault(
                    x => !x.IsMe && !x.IsDead && !x.IsZombie && x.HasBuff("kalistacoopstrikeally"));

                if (ally != null && ally.IsVisible && ally.DistanceToPlayer() <= R.Range)
                {
                    if (MiscOption.GetBool("AutoSave") && Me.CountEnemiesInRange(R.Range) > 0 &&
                        ally.CountEnemiesInRange(R.Range) > 0 &&
                        ally.HealthPercent <= MiscOption.GetSlider("AutoSaveHp"))
                    {
                        R.Cast(true);
                    }

                    if (MiscOption.GetBool("Balista") && ally.ChampionName == "Blitzcrank")
                    {
                        if (ObjectManager.Heroes.Enemies.Any(
                                x => !x.IsDead && !x.IsZombie && x.IsValidTarget() && x.HasBuff("rocketgrab2")))
                        {
                            R.Cast(true);
                        }
                    }
                }
            }
        }
Ejemplo n.º 3
0
        private static void AutoRLogic()
        {
            if (MiscOption.GetBool("AutoR") && R.IsReady() && Me.CountEnemiesInRange(1000) == 0)
            {
                foreach (
                    var target in
                    ObjectManager.Heroes.Enemies.Where(
                        x =>
                        x.IsValidTarget(R.Range) && x.DistanceToPlayer() >= MiscOption.GetSlider("RRange")))
                {
                    if (!target.CanMoveMent() && target.IsValidTarget(EQ.Range) &&
                        R.GetDamage(target) + Q.GetDamage(target) * 3 >= target.Health + target.HPRegenRate * 2)
                    {
                        R.Cast(target, true);
                    }

                    if (R.GetDamage(target) > target.Health + target.HPRegenRate * 2 && target.Path.Length < 2 &&
                        R.GetPrediction(target, true).Hitchance >= HitChance.High)
                    {
                        R.Cast(target, true);
                    }

                    if (isComboMode && Me.CountEnemiesInRange(800) == 0)
                    {
                        R.CastIfWillHit(target, MiscOption.GetSlider("RMinCast"), true);
                    }
                }
            }
        }
Ejemplo n.º 4
0
        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();
            }
        }
Ejemplo n.º 5
0
        private static void KillSteal()
        {
            if (KillStealOption.UseE && E.IsReady())
            {
                foreach (var target in ObjectManager.Heroes.Enemies.Where(x => x.IsValidTarget(E.Range) && x.Health < E.GetDamage(x)))
                {
                    if (!target.IsUnKillable())
                    {
                        SpellManager.PredCast(E, target);
                        return;
                    }
                }
            }

            if (KillStealOption.UseR && R.IsReady())
            {
                foreach (
                    var target in
                    ObjectManager.Heroes.Enemies.Where(
                        x =>
                        x.IsValidTarget(R.Range) && x.DistanceToPlayer() > MiscOption.GetSlider("rMenuMin") &&
                        KillStealOption.GetKillStealTarget(x.ChampionName) && x.Health < R.GetDamage(x)))
                {
                    if (!target.IsUnKillable())
                    {
                        SpellManager.PredCast(R, target, true);
                        return;
                    }
                }
            }
        }
Ejemplo n.º 6
0
        private static bool CondemnCheck(Vector3 serverPosition, Obj_AI_Base target)
        {
            var EPred = E.GetPrediction(target);
            var PD    = serverPosition == Me.ServerPosition ? 425 : 410 + MiscOption.GetSlider("EPush");
            var PP    = EPred.UnitPosition.Extend(serverPosition, -PD);

            for (var i = 1; i < PD; i += (int)target.BoundingRadius)
            {
                var VL = EPred.UnitPosition.Extend(serverPosition, -i);
                var J4 = ObjectManager.Get <Obj_AI_Base>().Any(f => f.Distance(PP) <= target.BoundingRadius && f.Name.ToLower() == "beacon");
                //var CF = NavMesh.GetCollisionFlags(VL);
                if (VL.IsWall() || J4)
                {
                    return(true);
                }
            }
            return(false);

            /*
             * var pushDistance = 350 + MiscOption.GetSlider("EPush");
             * var targetPosition = E.GetPrediction(target).UnitPosition;
             * var finalPosition = targetPosition.Extend(serverPosition, -pushDistance);
             * var numberOfChecks = (float)Math.Ceiling(pushDistance / 30f);
             * for (var i = 1; i <= 30; i++)
             * {
             *  var v3 = (targetPosition - serverPosition).Normalized();
             *  var extendedPosition = targetPosition + v3 * (numberOfChecks * i);
             *  var j4Flag = ObjectManager.Get<Obj_AI_Base>().Any(m => m.Distance(extendedPosition) <= target.BoundingRadius && m.Name == "Beacon");
             *  if ((extendedPosition.IsWall() || j4Flag) && (target.Path.Count() < 2) && !target.IsDashing())
             *  {
             *      return true;
             *  }
             * }
             * return false;*/
        }
Ejemplo n.º 7
0
        private static void OnUpdate(EventArgs args)
        {
            if (ObjectManager.Player.IsDead || ObjectManager.Player.IsRecalling())
            {
                return;
            }

            var wName  = MyLogic.W.Name.ToLower();
            var wState = MyLogic.W.State;

            if (wName != "pickacard" && ObjectManager.Player.HasBuff("pickacard_tracker") && Variables.GameTimeTickCount - LastWSent > 0)
            {
                if (MiscOption.GetBool("CardSelect", "HumanizerSelect").Enabled&&
                    Variables.GameTimeTickCount - LastWSent <=
                    random.Next(MiscOption.GetSlider("CardSelect", "HumanizerSelectMin").Value,
                                MiscOption.GetSlider("CardSelect", "HumanizerSelectMax").Value))
                {
                    return;
                }

                if (Select == HumanizerCards.Blue &&
                    wName.Equals("BlueCardLock", StringComparison.InvariantCultureIgnoreCase))
                {
                    MyLogic.W.Cast();
                }
                else if (Select == HumanizerCards.Yellow &&
                         wName.Equals("GoldCardLock", StringComparison.InvariantCultureIgnoreCase))
                {
                    MyLogic.W.Cast();
                }
                else if (Select == HumanizerCards.Red && wName.
                         Equals("RedCardLock", StringComparison.InvariantCultureIgnoreCase))
                {
                    MyLogic.W.Cast();
                }
            }
            else
            {
                if (wState == SpellState.Ready)
                {
                    Status = HumanizerSelectStatus.Ready;
                }
                else if ((wState == SpellState.Cooldown || wState == SpellState.Disabled ||
                          wState == SpellState.NoMana || wState == SpellState.NotLearned ||
                          wState == SpellState.CooldownOrSealed || wState == SpellState.Unknown) &&
                         !IsSelect)
                {
                    Status = HumanizerSelectStatus.Cooldown;
                }
                else if (IsSelect)
                {
                    Status = HumanizerSelectStatus.Selected;
                }
                else
                {
                    Status = HumanizerSelectStatus.Selecting;
                }
            }
        }
Ejemplo n.º 8
0
        private static void OnUpdate()
        {
            if (Me.IsDead || Me.IsRecalling())
            {
                return;
            }

            if (R.Level > 0)
            {
                R.Range = MiscOption.GetSlider("RMaxRange");
            }

            if (isFleeMode && FleeOption.DisableMove)
            {
                Orbwalker.Move = false;
                return;
            }

            Orbwalker.Move = true;

            if (MiscOption.GetKey("SemiR") && R.IsReady())
            {
                OneKeyCastR();
            }

            KillSteal();
            AutoRLogic();

            if (isComboMode)
            {
                Combo();
            }

            if (isHarassMode)
            {
                Harass();
            }

            if (isFarmMode)
            {
                FarmHarass();

                if (isLaneClearMode)
                {
                    LaneClear();
                }

                if (isJungleClearMode)
                {
                    JungleClear();
                }
            }

            if (isLastHitMode)
            {
                LastHit();
            }
        }
Ejemplo n.º 9
0
        private static void OnUpdate(EventArgs args)
        {
            if (Me.IsDead || Me.IsRecalling())
            {
                return;
            }

            if (Me.IsWindingUp)
            {
                return;
            }

            if (Q.Level > 0)
            {
                bigGunRange = Q.Range + new[] { 75, 100, 125, 150, 175 }[Q.Level - 1];
            }

            if (W.Level > 0)
            {
                //https://github.com/ensoulsharp-io/EnsoulSharp.Assemblies/blob/master/Third_Port/Mask/Executable/OneKeyToWin_AIO_Sebby/Champions/Jinx.cs#L128-L131
                W.Delay = Math.Max(0.4f, (600 - Me.PercentAttackSpeedMod / 2.5f * 200) / 1000f);
            }

            if (R.Level > 0)
            {
                R.Range = MiscOption.GetSlider("R", "rMenuMax").Value;
            }

            rCoolDown = R.Level > 0
                ? (Me.Spellbook.GetSpell(SpellSlot.R).CooldownExpires - Game.Time < 0
                    ? 0
                    : Me.Spellbook.GetSpell(SpellSlot.R).CooldownExpires - Game.Time)
                : -1;

            if (MiscOption.GetKey("R", "rMenuSemi").Active)
            {
                SemiRLogic();
            }

            AutoLogic();
            KillSteal();

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

            case OrbwalkerMode.Harass:
                Harass();
                break;

            case OrbwalkerMode.LaneClear:
                FarmHarass();
                break;
            }
        }
Ejemplo n.º 10
0
 private static void OnProcessSpellCast(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs Args)
 {
     if (sender.IsEnemy && sender.ObjectType == GameObjectType.AIHeroClient && sender.IsMelee() &&
         Args.Target != null && Args.Target.IsMe)
     {
         if (MiscOption.GetBool("EnabledAntiMelee") && Me.HealthPercent <= MiscOption.GetSlider("AntiMeleeHp"))
         {
             E.Cast(Me.Position.Extend(sender.Position, -E.Range), true);
         }
     }
 }
Ejemplo n.º 11
0
        private static void OnUpdate()
        {
            if (Me.IsDead || Me.IsRecalling())
            {
                return;
            }

            if (isFleeMode && FleeOption.DisableMove)
            {
                Orbwalker.Move = false;
                return;
            }

            Orbwalker.Move = true;

            if (Q.Level > 0)
            {
                bigGunRange = Q.Range + new[] { 75, 100, 125, 150, 175 }[Q.Level - 1];
            }

            if (R.Level > 0)
            {
                R.Range = MiscOption.GetSlider("rMenuMax");
            }

            rCoolDown = R.Level > 0
                ? (R.Instance.CooldownExpires - Game.Time < 0 ? 0 : R.Instance.CooldownExpires - Game.Time)
                : -1;

            AutoLogic();
            SemiRLogic();
            KillSteal();

            if (isComboMode)
            {
                Combo();
            }

            if (isHarassMode)
            {
                Harass();
            }

            if (isFarmMode)
            {
                FarmHarass();

                if (isJungleClearMode)
                {
                    JungleClear();
                }
            }
        }
Ejemplo n.º 12
0
        private static void OnEnemyGapcloser(ActiveGapcloser Args)
        {
            if (!Args.Sender.IsEnemy || !R.IsReady() || MiscOption.GetBool("AntiGapCloser") ||
                Me.HealthPercent > MiscOption.GetSlider("AntiGapCloserHp"))
            {
                return;
            }

            if (MiscOption.GetGapcloserTarget(Args.Sender.ChampionName) && Args.End.DistanceToPlayer() <= 300)
            {
                SpellManager.PredCast(R, Args.Sender);
            }
        }
Ejemplo n.º 13
0
        private static void RLogic()
        {
            if (!R.IsReady() || Me.Mana < R.ManaCost || R.Level == 0)
            {
                return;
            }

            if (MiscOption.GetBool("AutoR") && R.IsReady() &&
                ObjectManager.Heroes.Enemies.Count(x => x.IsValidTarget(MiscOption.GetSlider("AutoRRange"))) >= MiscOption.GetSlider("AutoRCount"))
            {
                R.Cast();
            }
        }
Ejemplo n.º 14
0
        private static void OnEnemyGapcloser(ActiveGapcloser Args)
        {
            if (!MiscOption.GetBool("EnabledAnti") || !E.IsReady() || Me.Mana < E.ManaCost ||
                Me.HealthPercent > MiscOption.GetSlider("AntiGapCloserHp") || Args.Sender == null || !Args.Sender.IsEnemy)
            {
                return;
            }

            if (Args.Target.IsMe || Args.Sender.DistanceToPlayer() <= 300 || Args.End.DistanceToPlayer() <= 250)
            {
                E.Cast(Me.Position.Extend(Args.Sender.Position, -E.Range), true);
            }
        }
Ejemplo n.º 15
0
 private static void MultiHideMode()
 {
     if (Me.HealthPercent <= MiscOption.GetSlider("Stealth", "Hideinmultimyhp").Value&&
         Me.CountAllyHeroesInRange(900) <= MiscOption.GetSlider("Stealth", "HideinmultiallyCount").Value&&
         Me.CountEnemyHeroesInRange(900) >= MiscOption.GetSlider("Stealth", "HideinmultienemyCount").Value)
     {
         Orbwalker.AttackState = false;
     }
     else
     {
         Orbwalker.AttackState = true;
     }
 }
Ejemplo n.º 16
0
        private static void RLogic()
        {
            if (!R.IsReady() || Me.Mana < R.Mana || R.Level == 0)
            {
                return;
            }

            if (MiscOption.GetBool("R", "AutoR").Enabled&& R.IsReady() &&
                GameObjects.EnemyHeroes.Count(x => x.IsValidTarget(MiscOption.GetSlider("R", "AutoRRange").Value)) >=
                MiscOption.GetSlider("R", "AutoRCount").Value)
            {
                R.Cast();
            }
        }
Ejemplo n.º 17
0
        private static void OneKeyCastR()
        {
            var target = MyTargetSelector.GetTarget(R.Range);

            if (target.IsValidTarget(R.Range) && !target.IsValidTarget(MiscOption.GetSlider("R", "RRange").Value))
            {
                var rPred = R.GetPrediction(target);

                if (rPred.HitChance >= HitChance.High)
                {
                    R.Cast(rPred.CastPosition);
                }
            }
        }
Ejemplo n.º 18
0
        private static void SoloHideMode()
        {
            var target = GameObjects.EnemyHeroes.First(x => x.IsValidTarget(900));

            if (target != null && target.IsValidTarget(900) &&
                Me.HealthPercent <= MiscOption.GetSlider("Stealth", "Hideinsolomyhp").Value&&
                target.HealthPercent >= MiscOption.GetSlider("Stealth", "Hideinsolotargethp").Value)
            {
                Orbwalker.AttackState = false;
            }
            else
            {
                Orbwalker.AttackState = true;
            }
        }
Ejemplo n.º 19
0
        private static void KillSteal()
        {
            if (KillStealOption.UseW && W.IsReady())
            {
                foreach (
                    var target in
                    GameObjects.EnemyHeroes.Where(
                        x => x.IsValidTarget(W.Range) && x.Health < Me.GetSpellDamage(x, SpellSlot.W)))
                {
                    if (target.InAutoAttackRange() && target.Health <= Me.GetAutoAttackDamage(target) * 2)
                    {
                        continue;
                    }

                    if (target.IsValidTarget(W.Range) && !target.IsUnKillable())
                    {
                        var wPred = W.GetPrediction(target);

                        if (wPred.Hitchance >= HitChance.High)
                        {
                            W.Cast(wPred.UnitPosition);
                        }
                    }
                }
            }

            if (KillStealOption.UseR && R.IsReady())
            {
                foreach (
                    var target in
                    GameObjects.EnemyHeroes.Where(
                        x =>
                        x.IsValidTarget(R.Range) && x.DistanceToPlayer() > MiscOption.GetSlider("R", "rMenuMin").Value&&
                        KillStealOption.GetKillStealTarget(x.CharacterName) &&
                        x.Health < Me.GetSpellDamage(x, SpellSlot.R)))
                {
                    if (target.IsValidTarget(R.Range) && !target.IsUnKillable())
                    {
                        var rPred = R.GetPrediction(target);

                        if (rPred.Hitchance >= HitChance.High)
                        {
                            R.Cast(rPred.CastPosition);
                        }
                    }
                }
            }
        }
Ejemplo n.º 20
0
        private static void KillStealEvent()
        {
            if (KillStealOption.UseE && E.IsReady())
            {
                foreach (
                    var target in
                    GameObjects.EnemyHeroes.Where(
                        x =>
                        x.IsValidTarget(E.Range) && x.Health < Me.GetSpellDamage(x, SpellSlot.E) &&
                        !x.IsUnKillable()))
                {
                    if (target.IsValidTarget(E.Range))
                    {
                        var ePred = E.GetPrediction(target);

                        if (ePred.Hitchance >= HitChance.High)
                        {
                            E.Cast(ePred.CastPosition);
                        }
                    }
                }
            }

            if (KillStealOption.UseR && R.IsReady())
            {
                foreach (
                    var target in
                    GameObjects.EnemyHeroes.Where(
                        x =>
                        x.IsValidTarget(R.Range) &&
                        KillStealOption.GetKillStealTarget(x.CharacterName) &&
                        x.Health <
                        Me.GetSpellDamage(x, SpellSlot.R) +
                        Me.GetSpellDamage(x, SpellSlot.R, DamageStage.SecondCast) && !x.IsUnKillable()))
                {
                    if (target.IsValidTarget(R.Range) && !target.IsValidTarget(MiscOption.GetSlider("R", "GlobalRMin").Value))
                    {
                        var rPred = R.GetPrediction(target);

                        if (rPred.Hitchance >= HitChance.High)
                        {
                            R.Cast(rPred.CastPosition);
                        }
                    }
                }
            }
        }
Ejemplo n.º 21
0
        private static void OnUpdate()
        {
            if (Me.IsDead || Me.IsRecalling())
            {
                return;
            }

            if (Q.GetBasicSpell().Level > 0)
            {
                bigGunRange = Q.Range + new[] { 75, 100, 125, 150, 175 }[Q.GetBasicSpell().Level - 1];
            }

            if (R.GetBasicSpell().Level > 0)
            {
                R.Range = MiscOption.GetSlider("R", "rMenuMax").Value;
            }

            rCoolDown = R.GetBasicSpell().Level > 0
                ? (Me.SpellBook.GetSpell(SpellSlot.R).CooldownEnd - Game.ClockTime < 0
                    ? 0
                    : Me.SpellBook.GetSpell(SpellSlot.R).CooldownEnd - Game.ClockTime)
                : -1;

            if (MiscOption.GetKey("R", "rMenuSemi").Enabled&& R.Ready)
            {
                SemiRLogic();
            }

            AutoLogic();
            KillSteal();

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

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

            if (Orbwalker.Mode == OrbwalkingMode.Laneclear)
            {
                FarmHarass();
            }
        }
Ejemplo n.º 22
0
        private static void OnUpdate()
        {
            if (Me.IsDead || Me.IsRecalling())
            {
                return;
            }

            if (R.GetBasicSpell().Level > 0)
            {
                R.Range = MiscOption.GetSlider("R", "RMaxRange").Value;
            }

            if (MiscOption.GetKey("R", "SemiR").Enabled&& R.Ready)
            {
                OneKeyCastR();
            }

            if (MiscOption.GetBool("R", "AutoR").Enabled&& R.Ready && Me.CountEnemyHeroesInRange(1000) == 0)
            {
                AutoRLogic();
            }

            KillSteal();

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

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

            if (Orbwalker.Mode == OrbwalkingMode.Laneclear)
            {
                FarmHarass();
            }

            if (Orbwalker.Mode == OrbwalkingMode.Lasthit)
            {
                LastHit();
            }
        }
Ejemplo n.º 23
0
        private static void OnUpdate(EventArgs args)
        {
            if (Me.IsDead || Me.IsRecalling())
            {
                return;
            }

            if (R.Level > 0)
            {
                R.Range = MiscOption.GetSlider("R", "RMaxRange").Value;
            }

            if (MiscOption.GetKey("R", "SemiR").Active)
            {
                OneKeyCastR();
            }

            if (MiscOption.GetBool("R", "AutoR").Enabled&& R.IsReady() && Me.CountEnemyHeroesInRange(1000) == 0)
            {
                AutoRLogic();
            }

            KillSteal();

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

            case OrbwalkerMode.Harass:
                Harass();
                break;

            case OrbwalkerMode.LaneClear:
                FarmHarass();
                break;

            case OrbwalkerMode.LastHit:
                LastHit();
                break;
            }
        }
Ejemplo n.º 24
0
        private static void OnDraw(EventArgs Args)
        {
            if (ObjectManager.Player.IsDead || Shop.IsShopOpen || Chat.IsChatOpen)
            {
                return;
            }

            if (DrawOption.GetBool("DrawCatchAxe"))
            {
                Drawing.DrawCircle(Game.CursorPosition, MiscOption.GetSlider("CatchRange"), System.Drawing.Color.FromArgb(251, 0, 255).ToSharpDX(), DrawOption.GetSlider("DrawThinkness"));
            }

            if (DrawOption.GetBool("DrawAxe"))
            {
                foreach (var Axe in AxeList.Where(x => !x.Axe.IsDead && x.Axe.IsValid()))
                {
                    Drawing.DrawCircle(Axe.Axe.Position, 120, System.Drawing.Color.FromArgb(45, 255, 0).ToSharpDX(), DrawOption.GetSlider("DrawThinkness"));
                }
            }
        }
Ejemplo n.º 25
0
        private static void OneKeyCastR()
        {
            Me.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPosRaw);

            if (!R.IsReady())
            {
                return;
            }

            var target = MyTargetSelector.GetTarget(R.Range);

            if (target.IsValidTarget(R.Range) && !target.IsValidTarget(MiscOption.GetSlider("R", "RRange").Value))
            {
                var rPred = R.GetPrediction(target);

                if (rPred.Hitchance >= HitChance.High)
                {
                    R.Cast(rPred.CastPosition);
                }
            }
        }
Ejemplo n.º 26
0
        private static void OnProcessSpellCast(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs Args)
        {
            if (MiscOption.GetBool("AutoE") && E.IsReady() && Me.HealthPercent <= MiscOption.GetSlider("AutoEHp"))
            {
                if (sender != null && sender.IsEnemy && sender is AIHeroClient)
                {
                    var e = (AIHeroClient)sender;

                    if (Args.Target != null)
                    {
                        if (Args.Target.IsMe)
                        {
                            if (CanE(e, Args))
                            {
                                Core.DelayAction(() => E.Cast(), 120);
                            }
                        }
                    }
                }
            }
        }
Ejemplo n.º 27
0
        private static void CastQCannonMouse()
        {
            Me.IssueOrder(OrderType.MoveTo, Game.CursorPos);

            if (isMelee && !R.Ready)
            {
                return;
            }

            if (isMelee && R.Ready)
            {
                R.Cast();
                return;
            }

            if (eCd == 0 && qCd == 0 && !isMelee)
            {
                if (MiscOption.GetList("QE", "SemiQEMode").Value == 1)
                {
                    var gateDis    = MiscOption.GetSlider("E", "gatePlace").Value;
                    var gateVector = Me.ServerPosition + Vector3.Normalize(Game.CursorPos - Me.ServerPosition) * gateDis;

                    if (E.Ready && QE.Ready)
                    {
                        E.Cast(gateVector);
                        QE.Cast(Game.CursorPos);
                    }
                }
                else
                {
                    var qTarget = MyTargetSelector.GetTarget(QE.Range);

                    if (qTarget != null && qTarget.IsValidTarget(QE.Range) && qCd == 0)
                    {
                        CastQCannon(qTarget, true);
                    }
                }
            }
        }
Ejemplo n.º 28
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;
            }
        }
Ejemplo n.º 29
0
        private static void AutoRLogic()
        {
            foreach (
                var target in
                GameObjects.EnemyHeroes.Where(
                    x =>
                    x.IsValidTarget(R.Range) && x.DistanceToPlayer() >= MiscOption.GetSlider("R", "RRange").Value))
            {
                if (!target.CanMoveMent() && target.IsValidTarget(EQ.Range) &&
                    Me.GetSpellDamage(target, SpellSlot.R) + Me.GetSpellDamage(target, SpellSlot.Q) * 3 >=
                    target.Health + target.HPRegenRate * 2)
                {
                    R.Cast(target);
                }

                if (Me.GetSpellDamage(target, SpellSlot.R) > target.Health + target.HPRegenRate * 2 &&
                    target.Path.Length < 2 &&
                    R.GetPrediction(target).Hitchance >= HitChance.High)
                {
                    R.Cast(target);
                }
            }
        }
Ejemplo n.º 30
0
        private static bool ECheck(Obj_AI_Hero target, bool usQE, bool useW)
        {
            if (GetEDamage(target) >= target.Health)
            {
                return(true);
            }

            if ((qCd == 0 && usQE || wCd == 0 && useW) && q1Cd != 0 && w1Cd != 0)
            {
                return(true);
            }

            if (WallStun(target))
            {
                return(true);
            }

            if (Me.HealthPercent() <= MiscOption.GetSlider("E", "autoE").Value)
            {
                return(true);
            }

            return(false);
        }