예제 #1
0
파일: Ashe.cs 프로젝트: aleks9829/AimTec-9
        private static void OnGapcloser(Obj_AI_Hero target, GapcloserArgs Args)
        {
            if (MiscOption.GetBool("R", "AutoR").Enabled&& R.Ready && target != null && target.IsValidTarget(R.Range) && !Args.HaveShield)
            {
                switch (Args.Type)
                {
                case SpellType.SkillShot:
                {
                    if (target.IsValidTarget(300))
                    {
                        var rPred = R.GetPrediction(target);

                        R.Cast(rPred.UnitPosition);
                    }
                }
                break;

                case SpellType.Melee:
                case SpellType.Dash:
                case SpellType.Targeted:
                {
                    if (target.IsValidTarget(400))
                    {
                        var rPred = R.GetPrediction(target);

                        R.Cast(rPred.UnitPosition);
                    }
                }
                break;
                }
            }
        }
예제 #2
0
        private static void OnGapcloser(Obj_AI_Hero target, GapcloserArgs Args)
        {
            if (E.Ready && target != null && target.IsValidTarget(E.Range))
            {
                switch (Args.Type)
                {
                case SpellType.Melee:
                    if (target.IsValidTarget(target.AttackRange + target.BoundingRadius + 100))
                    {
                        var ePred = E.GetPrediction(target);
                        E.Cast(ePred.UnitPosition);
                    }
                    break;

                case SpellType.Dash:
                case SpellType.SkillShot:
                case SpellType.Targeted:
                {
                    var ePred = E.GetPrediction(target);
                    E.Cast(ePred.UnitPosition);
                }
                break;
                }
            }
        }
예제 #3
0
 internal override void OnGapcloser(AIBaseClient target, GapcloserArgs Args)
 {
     if (target != null && Args.EndPosition.Distance(Player) < Q.Range)
     {
         Q.Cast();
     }
 }
예제 #4
0
 internal override void OnGapcloser(Obj_AI_Hero target, GapcloserArgs Args)
 {
     if (target != null && Args.EndPosition.Distance(Player) < 400 && W.Ready)
     {
         W.Cast();
     }
 }
예제 #5
0
 internal override void OnGapcloser(Obj_AI_Hero target, GapcloserArgs Args)
 {
     if (target != null && Args.EndPosition.Distance(Player) < E.Range && E.Ready)
     {
         E.Cast(target);
     }
 }
예제 #6
0
파일: Jayce.cs 프로젝트: aleks9829/AimTec-9
        private static void OnGapcloser(Obj_AI_Hero target, GapcloserArgs Args)
        {
            if (E.Ready && target != null && target.IsValidTarget(E2.Range) && !Args.HaveShield)
            {
                switch (Args.Type)
                {
                case SpellType.Dash:
                case SpellType.SkillShot:
                case SpellType.Targeted:
                {
                    if (Args.EndPosition.DistanceToPlayer() <= target.BoundingRadius + Me.BoundingRadius)
                    {
                        if (!isMelee)
                        {
                            R.Cast();
                        }

                        if (isMelee)
                        {
                            E.CastOnUnit(target);
                        }
                    }
                }
                break;
                }
            }
        }
예제 #7
0
 internal override void OnGapcloser(Obj_AI_Hero target, GapcloserArgs Args)
 {
     if (target != null && Args.EndPosition.Distance(Player) < Q.Range)
     {
         W.CastOnUnit(target);
     }
 }
예제 #8
0
        private static void OnGapcloser(Obj_AI_Hero target, GapcloserArgs Args)
        {
            try
            {
                if (W.Ready && target != null && target.IsValidTarget(W.Range))
                {
                    switch (Args.Type)
                    {
                    case SpellType.Melee:
                        if (target.IsValidTarget(target.AttackRange + target.BoundingRadius + 100))
                        {
                            W.Cast();
                        }
                        break;

                    case SpellType.Dash:
                    case SpellType.SkillShot:
                    case SpellType.Targeted:
                    {
                        W.Cast();
                    }
                    break;
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error in MyEventManager.OnGapcloser." + ex);
            }
        }
예제 #9
0
파일: Varus.cs 프로젝트: aleks9829/AimTec-9
        private static void OnGapcloser(Obj_AI_Hero target, GapcloserArgs Args)
        {
            if (MiscOption.GetBool("R", "AutoR").Enabled&& R.Ready && target != null && target.IsValidTarget(R.Range))
            {
                switch (Args.Type)
                {
                case SpellType.Melee:
                    if (target.IsValidTarget(target.AttackRange + target.BoundingRadius + 100))
                    {
                        var rPred = R.GetPrediction(target);
                        R.Cast(rPred.UnitPosition);
                    }
                    break;

                case SpellType.Dash:
                    if (Args.EndPosition.DistanceToPlayer() <= 350)
                    {
                        var rPred = R.GetPrediction(target);
                        R.Cast(rPred.UnitPosition);
                    }
                    break;

                case SpellType.SkillShot:
                case SpellType.Targeted:
                {
                    var rPred = R.GetPrediction(target);
                    R.Cast(rPred.UnitPosition);
                }
                break;
                }
            }
        }
예제 #10
0
        public static void OnGapcloser(Obj_AI_Hero sender, GapcloserArgs args)
        {
            if (sender.IsMe || !sender.IsEnemy || args.EndPosition.Distance(Global.Player) > SpellConfig.E.Range)
            {
                return;
            }
            var missile = SpellDatabase.GetByName(args.SpellName);

            if (missile == null)
            {
                return;
            }

            if (missile.CollisionObjects.Any() && missile.IsDangerous && SpellConfig.W.Ready)
            {
                SpellConfig.W.Cast(args.StartPosition);
            }

            var minion = GameObjects.Minions.Where(x => x.Distance(Global.Player) <= SpellConfig.E.Range && !x.HasBuff("YasuoDashWrapper")).OrderBy(x => x.Distance(Game.CursorPos)).FirstOrDefault();

            if (SpellConfig.E.Ready && minion != null)
            {
                SpellConfig.E.CastOnUnit(minion);
            }
        }
예제 #11
0
        public static void OnGapcloser(Obj_AI_Hero sender, GapcloserArgs args)
        {
            if (sender.IsMe || !sender.IsEnemy || args.EndPosition.Distance(Global.Player) > 1000)
            {
                return;
            }

            if (SpellManager.W.Ready && MenuConfig.Misc["W"].Enabled)
            {
                var allyT = GameObjects.AllyTurrets.FirstOrDefault(x => x.IsValid);
                if (allyT != null && ShadowManager.CanCastFirst(SpellSlot.W))
                {
                    SpellManager.W.Cast(allyT.ServerPosition);
                }
                else
                {
                    ShadowManager.SwitchToShadows();
                }
            }

            else if (SpellManager.R.Ready)
            {
                var enemy = GameObjects.EnemyHeroes.OrderBy(x => x.Health).FirstOrDefault(x => x.IsValidTarget(SpellManager.R.Range));
                if (enemy == null)
                {
                    return;
                }

                SpellManager.R.Cast(enemy);
            }
        }
예제 #12
0
        public static void OnGapcloser(Obj_AI_Hero sender, GapcloserArgs args)
        {
            if (!SpellManager.E.Ready || !sender.IsEnemy || args.EndPosition.Distance(Global.Player) > SpellManager.E.Range)
            {
                return;
            }

            SpellManager.E.Cast(args.EndPosition);
        }
예제 #13
0
        private static void OnGapcloser(Obj_AI_Hero target, GapcloserArgs Args)
        {
            if (R.GetBasicSpell().Name == "JhinRShot")
            {
                return;
            }

            if (target != null && target.IsValidTarget(E.Range) && !Args.HaveShield)
            {
                switch (Args.Type)
                {
                case SpellType.SkillShot:
                {
                    if (target.IsValidTarget(300))
                    {
                        if (E.Ready && Game.TickCount - lastETime > 2500 && !isAttacking)
                        {
                            var ePred = E.GetPrediction(target);

                            E.Cast(ePred.CastPosition);
                        }

                        if (W.Ready && HasPassive(target))
                        {
                            var wPred = W.GetPrediction(target);

                            W.Cast(wPred.UnitPosition);
                        }
                    }
                }
                break;

                case SpellType.Melee:
                case SpellType.Dash:
                case SpellType.Targeted:
                {
                    if (target.IsValidTarget(400))
                    {
                        if (E.Ready && Game.TickCount - lastETime > 2500 && !isAttacking)
                        {
                            var ePred = E.GetPrediction(target);

                            E.Cast(ePred.CastPosition);
                        }

                        if (W.Ready && HasPassive(target))
                        {
                            var wPred = W.GetPrediction(target);

                            W.Cast(wPred.UnitPosition);
                        }
                    }
                }
                break;
                }
            }
        }
예제 #14
0
        public void OnGapcloser(Obj_AI_Hero sender, GapcloserArgs args)
        {
            if (!sender.IsEnemy || !_spellConfig.E.Ready || args.EndPosition.Distance(Global.Player) > _spellConfig.E.Range)
            {
                return;
            }

            _spellConfig.E.Cast(args.EndPosition);
        }
예제 #15
0
파일: Janna.cs 프로젝트: denis3285/AimTec
 internal override void OnGapcloser(Obj_AI_Hero target, GapcloserArgs Args)
 {
     if (!Player.HasBuff("ReapTheWhirlwind"))
     {
         if (target != null && Args.EndPosition.Distance(Player) < Q.Range)
         {
             Q.Cast(Args.EndPosition);
         }
     }
 }
예제 #16
0
        public void OnGapcloser(Obj_AI_Hero sender, GapcloserArgs args)
        {
            if (sender.IsMe || !sender.IsEnemy || !_spellConfig.W.Ready || !_spellConfig.IsFirst(_spellConfig.W) || !_wardTracker.IsWardReady() ||
                args.EndPosition.Distance(Global.Player) > 425)
            {
                return;
            }

            _wardManager.WardJump(Game.CursorPos, _spellConfig.WardRange);
        }
예제 #17
0
파일: RekSai.cs 프로젝트: denis3285/AimTec
 internal override void OnGapcloser(Obj_AI_Hero target, GapcloserArgs Args)
 {
     if (target != null && Args.EndPosition.Distance(Player) < W.Range && W.Ready)
     {
         if (Player.HasBuff("RekSaiW"))
         {
             W.Cast();
         }
     }
 }
예제 #18
0
 internal override void OnGapcloser(Obj_AI_Hero target, GapcloserArgs Args)
 {
     if (target != null && Args.EndPosition.Distance(Player) < Q.Range)
     {
         if (Player.HasBuff("ivernqallyjump"))
         {
             Q.Cast(Args.EndPosition);
         }
     }
 }
예제 #19
0
        public static void OnGapcloser(Obj_AI_Hero sender, GapcloserArgs args)
        {
            if (!sender.IsEnemy || !SpellConfig.E.Ready || args.EndPosition.Distance(Global.Player) > SpellConfig.E.Range)
            {
                return;
            }

            var allyTurret = GameObjects.AllyTurrets.FirstOrDefault(x => x.IsValid);

            SpellConfig.E.Cast(allyTurret != null ? allyTurret.ServerPosition : Game.CursorPos);
        }
예제 #20
0
        public static void OnGapcloser(Obj_AI_Hero sender, GapcloserArgs args)
        {
            if (!SpellManager.E.Ready || !sender.IsEnemy || args.EndPosition.Distance(Global.Player) > SpellManager.E.Range)
            {
                return;
            }

            var pos = Global.Player.ServerPosition + (Global.Player.ServerPosition - args.EndPosition).Normalized() * SpellManager.E.Range;

            SpellManager.E.Cast(pos);
        }
예제 #21
0
 private static void OnGapcloser(Obj_AI_Hero sender, GapcloserArgs args)
 {
     if (!sender.IsEnemy || args.EndPosition.Distance(Global.Player) > SpellManager.E.Range)
     {
         return;
     }
     if (SpellManager.E.Ready && sender.IsValidTarget(SpellManager.E.Range))
     {
         SpellManager.E.Cast(args.EndPosition);
     }
 }
예제 #22
0
        private static void OnGapcloser(Obj_AI_Hero sender, GapcloserArgs args)
        {
            if (!sender.IsEnemy || args.EndPosition.Distance(Global.Player) > SpellManager.E.Range + 500 || sender.Distance(Global.Player) < Global.Player.AttackRange + 200)
            {
                return;
            }

            if (SpellManager.E.Ready && MenuConfig.Misc["E"].Enabled && sender.IsValidTarget(SpellManager.E.Range))
            {
                SpellManager.E.Cast(args.EndPosition);
            }
        }
예제 #23
0
        private static void OnGapcloser(Obj_AI_Hero sender, GapcloserArgs args)
        {
            if (!sender.IsEnemy || !SpellManager.E.Ready || args.EndPosition.Distance(Global.Player) > SpellManager.E.Range)
            {
                return;
            }

            var enemy = GameObjects.EnemyMinions.OrderBy(x => x.Distance(Game.CursorPos)).FirstOrDefault(x => x.IsValidTarget(SpellManager.E.Range));

            if (enemy != null)
            {
                SpellManager.CastE(enemy);
            }
        }
예제 #24
0
        public static void OnGapcloser(Obj_AI_Hero sender, GapcloserArgs args)
        {
            if (!SpellManager.R.Ready || !sender.IsEnemy || args.EndPosition.Distance(Global.Player) > 350 || Global.Player.Distance(args.EndPosition) > Global.Player.Distance(args.StartPosition))
            {
                return;
            }

            var allyT = GameObjects.AllyTurrets.OrderBy(x => x.Distance(Global.Player)).FirstOrDefault(x => x.IsValid);

            if (allyT != null)
            {
                SpellManager.R.Cast(allyT.ServerPosition);
            }
        }
예제 #25
0
        internal override void OnGapcloser(Obj_AI_Hero target, GapcloserArgs Args)
        {
            if (target != null && Args.EndPosition.Distance(Player) < 200 && W.Ready)
            {
                if (!W.IsCharging)
                {
                    W.StartCharging(Game.CursorPos);
                }

                if (W.IsCharging)
                {
                    W.ShootChargedSpell(Game.CursorPos, true);
                }
            }
        }
예제 #26
0
        public void OnGapcloser(Obj_AI_Hero sender, GapcloserArgs args)
        {
            if (!sender.IsEnemy || !_spellConfig.E.Ready || args.EndPosition.Distance(Global.Player) > _spellConfig.E.Range )
            {
                return;
            }

            var missile = SpellDatabase.GetByName(args.SpellName);
            if (missile == null || !missile.IsDangerous)
            {
                return;
            }
           
            _spellConfig.E.Cast(args.EndPosition);
        }
예제 #27
0
        private static void ExecuteW(GapcloserArgs args)
        {
            if (!WBool.Enabled)
            {
                return;
            }

            switch (args.Type)
            {
            case SpellType.Targeted when args.Target.IsMe():
            case SpellType.Dash when args.EndPosition.DistanceToPlayer() < W.Range:
                W.Cast(args.Sender);

                break;
            }
        }
예제 #28
0
        public static void OnGapcloser(Obj_AI_Hero sender, GapcloserArgs args)
        {
            if (!sender.IsEnemy)
            {
                return;
            }
            var soldier = SoldierManager.Soldiers.OrderBy(x => x.Distance(Game.CursorPos)).FirstOrDefault();

            if (SpellConfig.E.Ready && soldier != null && soldier.Distance(Global.Player) - soldier.BoundingRadius < SpellConfig.E.Range)
            {
                SpellConfig.E.CastOnUnit(soldier);
            }
            else if (SpellConfig.R.Ready && args.EndPosition.Distance(Global.Player) < SpellConfig.R.Range)
            {
                SpellConfig.R.Cast(sender.ServerPosition);
            }
        }
예제 #29
0
파일: Nunu.cs 프로젝트: denis3285/AimTec
 internal override void OnGapcloser(Obj_AI_Hero target, GapcloserArgs Args)
 {
     if (target != null && Args.EndPosition.Distance(Player) < E.Range && E.Ready)
     {
         if (RootMenu["savestacks"].Enabled)
         {
             if (!Player.HasBuff("visionary"))
             {
                 E.Cast(target);
             }
         }
         if (!RootMenu["savestacks"].Enabled)
         {
             E.Cast(target);
         }
     }
 }
예제 #30
0
        public static void OnGapcloser(Obj_AI_Hero sender, GapcloserArgs args)
        {
            if (!sender.IsEnemy)
            {
                return;
            }

            if (SpellConfig.E.Ready && args.EndPosition.Distance(Global.Player) <= 100)
            {
                var pos = Global.Player.ServerPosition + (Global.Player.ServerPosition - args.EndPosition).Normalized() * SpellConfig.E.Range;
                SpellConfig.E.Cast(pos);
            }

            if (SpellConfig.W.Ready && sender.IsValidTarget(SpellConfig.W.Range + 75))
            {
                SpellManager.CastW(sender);
            }
        }