Пример #1
0
        void OnUpdate(EventArgs args)
        {
            if (Syndra.IsRecalling() || Syndra.IsDead)
            {
                return;
            }

            if (GetKeyBind("qekey"))
            {
                var mode = GetQEMode;
                if (mode == QEMode.Normal)
                {
                    CastQE();
                }

                if (mode == QEMode.Fast)
                {
                    CastQEFast();
                }
            }

            if (GetKeyBind("h.enabled"))
            {
                Harass();
            }

            if (GetBool("m.utilw"))
            {
                UtilizeW();
            }

            if (GetBool("ks.enabled"))
            {
                KillSteal();
            }


            if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo)
            {
                Combo();
            }

            if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Mixed)
            {
                if (GetBool("h.inmixed"))
                {
                    Harass();
                }
            }

            if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.LaneClear)
            {
                Waveclear();
            }

            if (Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.LastHit)
            {
                FarmHandler();
            }
        }
Пример #2
0
 private void Interrupter2_OnInterruptableTarget(Obj_AI_Hero sender, Interrupter2.InterruptableTargetEventArgs args)
 {
     if (Syndra.IsRecalling() || Syndra.IsDead)
     {
         return;
     }
     if (GetBool("m.interrupter"))
     {
         if (SpellSlot.Q.IsReady() && SpellSlot.E.IsReady())
         {
             if (sender.IsValidTarget(SpellManager.E.Range))
             {
                 SpellManager.Q.Cast(sender.ServerPosition);
                 SpellManager.E.Cast(sender.ServerPosition);
             }
             else if (sender.IsValidTarget(1200))
             {
                 var dist = Syndra.Distance(sender);
                 var pos  = sender.ServerPosition.Extend(Syndra.ServerPosition, dist);
                 SpellManager.Q.Cast(pos);
                 CastE();
                 LeagueSharp.Common.Utility.DelayAction.Add(200, () => CastE());
             }
         }
     }
 }
Пример #3
0
 void Obj_AI_Base_OnPauseAnimation(Obj_AI_Base sender, Obj_AI_BasePauseAnimationEventArgs args)
 {
     if (Syndra.IsRecalling() || Syndra.IsDead)
     {
         return;
     }
     if (sender is Obj_AI_Minion && sender.Name == "Seed" && sender.Team == Syndra.Team)
     {
         GrabbedObject = sender;
     }
 }
Пример #4
0
        void OnDraw(EventArgs args)
        {
            if (Syndra.IsRecalling() || Syndra.IsDead)
            {
                return;
            }

            if (!GetBool("d.enabled"))
            {
                return;
            }

            var drawq = GetCircle("d.q");
            var draww = GetCircle("d.w");
            var drawe = GetCircle("d.e");
            var drawr = GetCircle("d.r");

            if (drawq.Active)
            {
                Render.Circle.DrawCircle(Syndra.Position, SpellManager.Q.Range, drawq.Color);
            }

            if (draww.Active)
            {
                Render.Circle.DrawCircle(Syndra.Position, SpellManager.W.Range, draww.Color);
            }

            if (drawe.Active)
            {
                Render.Circle.DrawCircle(Syndra.Position, SpellManager.E.Range, drawe.Color);
            }

            if (drawr.Active)
            {
                Render.Circle.DrawCircle(Syndra.Position, SpellManager.R.Range, drawr.Color);
            }

            if (GetBool("m.dbg"))
            {
                foreach (var poly in Polygons)
                {
                    poly.Draw(Color.Aqua, 5);
                }
            }
        }
Пример #5
0
        private void Obj_AI_Hero_OnProcessSpellCast(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs args)
        {
            if (Syndra.IsRecalling() || Syndra.IsDead)
            {
                return;
            }

            if (!sender.IsMe)
            {
                return;
            }

            if ((Orbwalker.ActiveMode == Orbwalking.OrbwalkingMode.Combo && GetBool("c.e")) || (GetKeyBind("h.enabled") && GetBool("h.e")))
            {
                var name    = args.SData.Name;
                var castpos = args.End;

                if (name == "SyndraQ" || name == "syndrawcast")
                {
                    var radius            = 48;
                    var predictedposition = castpos.Extend(Syndra.ServerPosition, -Math.Max((1200 - castpos.Distance(Syndra.ServerPosition)), 700)).To2D();
                    var rect = new PolyUtils.Rectangle(castpos.To2D(), predictedposition, radius).ToPolygon();
                    Polygons.Add(rect);
                    var enemies = HeroManager.Enemies.Where(x => x.IsValidTarget(1300));
                    foreach (var enemy in enemies)
                    {
                        var delay = Syndra.Distance(enemy) / SpellManager.E.Speed;
                        var pos   = LeagueSharp.Common.Prediction.GetPrediction(enemy, delay).CastPosition.To2D();
                        if (rect.PointInPolygon(pos) == 1)
                        {
                            LeagueSharp.Common.Utility.DelayAction.Add(100, () => SpellManager.E.Cast(castpos));
                        }
                    }
                }
            }
        }