Esempio n. 1
0
        public static Obj_AI_Base GetBestObjectFarFrom(Vector3 Position)
        {
            var minion         = AllyMinionManager.GetFurthestTo(Position);
            var ally           = AllyHeroManager.GetFurthestTo(Position);
            var ward           = WardManager.GetFurthestTo(Position);
            var miniondistance = minion != null?Extensions.Distance(Position, minion, true) : 0;

            var allydistance = ally != null?Extensions.Distance(Position, ally, true) : 0;

            var warddistance = ward != null?Extensions.Distance(Position, ward, true) : 0;

            var best = Math.Max(miniondistance, Math.Max(allydistance, warddistance));

            if (best > 0f)
            {
                if (best == allydistance)
                {
                    return(ally);
                }
                else if (best == miniondistance)
                {
                    return(minion);
                }
                else if (best == warddistance)
                {
                    return(ward);
                }
            }
            return(null);
        }
Esempio n. 2
0
        private static void WardJump(AIHeroClient target)
        {
            var pred = SpellManager.W1.GetPrediction(target);

            if (WardManager.CanWardJump && pred.HitChancePercent >= 30f)
            {
                var gapclosepos = pred.CastPosition + (pred.CastPosition - ExpectedEndPosition).Normalized() * DistanceBetween;
                if (Extensions.Distance(gapclosepos, Util.myHero, true) <= Math.Pow(WardManager.WardRange, 2) && Extensions.Distance(gapclosepos, target, true) <= Math.Pow(SpellManager.R.Range, 2) && Extensions.Distance(gapclosepos, target, true) < Extensions.Distance(gapclosepos, ExpectedEndPosition, true))
                {
                    if (Orbwalker.CanMove)
                    {
                        LastGapcloseAttempt = Game.Time;
                        Orbwalker.MoveTo(gapclosepos + (gapclosepos - ExpectedEndPosition).Normalized() * (DistanceBetween + Util.myHero.BoundingRadius / 2));
                    }
                    AllySelected                = null;
                    PositionSelected            = EndPosition;
                    LastSetPositionTime         = Game.Time;
                    TargetSelector.ForcedTarget = target;
                    var obj = Champion.GetBestObjectNearTo(gapclosepos);
                    if (obj != null && Extensions.Distance(obj, target, true) < Extensions.Distance(obj, ExpectedEndPosition, true))
                    {
                        SpellManager.CastW1(obj);
                    }
                    else
                    {
                        WardManager.CastWardTo(gapclosepos);
                    }
                }
            }
        }
Esempio n. 3
0
        public static Obj_AI_Base GetBestObjectNearTo(Vector3 Position)
        {
            var minion         = AllyMinionManager.GetNearestTo(Position);
            var ally           = AllyHeroManager.GetNearestTo(Position);
            var ward           = WardManager.GetNearestTo(Position);
            var miniondistance = minion != null?Extensions.Distance(Position, minion, true) : 999999999f;

            var allydistance = ally != null?Extensions.Distance(Position, ally, true) : 999999999f;

            var warddistance = ward != null?Extensions.Distance(Position, ward, true) : 999999999f;

            var best = Math.Min(miniondistance, Math.Min(allydistance, warddistance));

            if (best <= Math.Pow(250f, 2))
            {
                if (best == allydistance)
                {
                    return(ally);
                }
                else if (best == miniondistance)
                {
                    return(minion);
                }
                else if (best == warddistance)
                {
                    return(ward);
                }
            }
            return(null);
        }
Esempio n. 4
0
        public static Obj_AI_Base GetBestObjectFarFrom(Vector3 position)
        {
            var minion         = AllyMinionManager.GetFurthestTo(position);
            var ally           = AllyHeroManager.GetFurthestTo(position);
            var ward           = WardManager.GetFurthestTo(position);
            var miniondistance = minion != null?position.Distance(minion, true) : 0;

            var allydistance = ally != null?position.Distance(ally, true) : 0;

            var warddistance = ward != null?position.Distance(ward, true) : 0;

            var best = Math.Max(miniondistance, Math.Max(allydistance, warddistance));

            if (best > 0f)
            {
                if (Math.Abs(best - allydistance) < float.Epsilon)
                {
                    return(ally);
                }
                if (Math.Abs(best - miniondistance) < float.Epsilon)
                {
                    return(minion);
                }
                if (Math.Abs(best - warddistance) < float.Epsilon)
                {
                    return(ward);
                }
            }
            return(null);
        }
Esempio n. 5
0
        public static Obj_AI_Base GetBestObjectNearTo(Vector3 position)
        {
            var minion         = AllyMinionManager.GetNearestTo(position);
            var ally           = AllyHeroManager.GetNearestTo(position);
            var ward           = WardManager.GetNearestTo(position);
            var miniondistance = minion != null?position.Distance(minion, true) : 999999999f;

            var allydistance = ally != null?position.Distance(ally, true) : 999999999f;

            var warddistance = ward != null?position.Distance(ward, true) : 999999999f;

            var best = Math.Min(miniondistance, Math.Min(allydistance, warddistance));

            if (best <= Math.Pow(250f, 2))
            {
                if (Math.Abs(best - allydistance) < float.Epsilon)
                {
                    return(ally);
                }
                if (Math.Abs(best - miniondistance) < float.Epsilon)
                {
                    return(minion);
                }
                if (Math.Abs(best - warddistance) < float.Epsilon)
                {
                    return(ward);
                }
            }
            return(null);
        }
Esempio n. 6
0
 public static void Execute()
 {
     if (SpellManager.CanCastW1)
     {
         var obj = Champion.GetBestObjectNearTo(Util.MousePos);
         if (obj != null && Menu.GetCheckBoxValue("W"))
         {
             SpellManager.CastW1(obj);
         }
         else if (Menu.GetCheckBoxValue("WardJump"))
         {
             if (WardManager.CanCastWard)
             {
                 WardManager.CastWardTo(Util.MousePos);
             }
         }
     }
 }
Esempio n. 7
0
 public static void GapCloseWithWard(Obj_AI_Base target)
 {
     if (SpellManager.CanCastW1)
     {
         var obj = GetBestObjectNearTo(target.Position);
         if (obj != null && Extensions.Distance(Util.myHero, target, true) > Extensions.Distance(obj, target, true))
         {
             SpellManager.CastW1(obj);
         }
         else if (WardManager.CanCastWard)
         {
             var pred = SpellManager.W1.GetPrediction(target);
             if (pred.HitChancePercent >= 50f)
             {
                 WardManager.CastWardTo(pred.CastPosition);
             }
         }
     }
 }
Esempio n. 8
0
 private static void Loading_OnLoadingComplete(EventArgs args)
 {
     if (Util.myHero.Hero != EloBuddy.Champion.LeeSin)
     {
         return;
     }
     Chat.Print(AddonName + " made by " + Author + " loaded, have fun!.");
     SpellManager.Init();
     MenuManager.Init();
     ModeManager.Init();
     WardManager.Init();
     _Q.Init();
     _R.Init();
     Insec.Init();
     AutoSmite.Init();
     DrawManager.Init();
     TargetSelector.Init(SpellManager.Q2.Range + 200, DamageType.Physical);
     LoadCallbacks();
 }
Esempio n. 9
0
 public static void GapCloseWithWard(Obj_AI_Base target)
 {
     if (SpellManager.CanCastW1)
     {
         var obj = GetBestObjectNearTo(target.Position);
         if (obj != null && Util.MyHero.Distance(target, true) > obj.Distance(target, true))
         {
             SpellManager.CastW1(obj);
         }
         else if (WardManager.CanCastWard)
         {
             var pred = SpellManager.W1.GetPrediction(target);
             if (pred.HitChance >= HitChance.AveragePoint)
             {
                 WardManager.CastWardTo(pred.CastPosition);
             }
         }
     }
 }
Esempio n. 10
0
 private static void Loading_OnLoadingComplete(EventArgs args)
 {
     if (Util.MyHero.Hero != EloBuddy.Champion.LeeSin)
     {
         return;
     }
     SpellManager.Init();
     MenuManager.Init();
     ModeManager.Init();
     WardManager.Init();
     _Q.Init();
     _R.Init();
     Insec.Init();
     AutoSmite.Init();
     DrawManager.Init();
     TargetSelector.Init(SpellManager.Q2.Range + 200, DamageType.Physical);
     Chat.Print("iCreative tarafindan yapildi.TekinTR tarafinda Turkce'ye Cevrildi, iyi eglenceler!.");
     LoadCallbacks();
 }