Пример #1
0
        private static void DoOrb(EventArgs args)
        {
            if (GameObjects.Player.IsDead)
            {
                return;
            }

            if (Orbwalker.ActiveMode > OrbwalkerMode.Harass)
            {
                return;
            }

            var target = TargetSelector.GetTarget(Q.Range + MoveRange, DamageType.Magical);

            if (target == null)
            {
                return;
            }

            var Epred = SebbyLibPorted.Prediction.Prediction.GetPrediction(E, target);

            if (E.IsReady() && Epred.Hitchance >= SebbyLibPorted.Prediction.HitChance.High && Ecombo.Enabled)
            {
                if (E.SPredictionCast(target, EnsoulSharp.SDK.HitChance.High))
                {
                    return;
                }
            }
            else
            {
                if (QClient() != null)
                {
                }
                if (Q.IsReady() && Qcombo.Enabled)
                {
                    var Qpred = SebbyLibPorted.Prediction.Prediction.GetPrediction(Q, target);
                    if (Q2())
                    {
                        if (Q2Now)
                        {
                            var CastPos = Qpred.CastPosition;
                            if (CastPos.DistanceToPlayer() > Q.Range)
                            {
                                if (R.IsReady())
                                {
                                    if (Q.Cast(CastPos))
                                    {
                                        DelayAction.Add(200, () =>
                                        {
                                            if (Qpred.Hitchance != SebbyLibPorted.Prediction.HitChance.Collision && R.Cast(CastPos))
                                            {
                                                return;
                                            }
                                        });
                                    }
                                }
                            }
                            else
                            {
                                if (Q.Cast(CastPos))
                                {
                                    return;
                                }
                            }
                        }
                    }
                    else
                    {
                        if (EDownClient() == null || EDownClient().DistanceToPlayer() > MoveRange + Q.Range)
                        {
                            var GetCastPos = Vector3.Zero;
                            var QGetPoss   = new EnsoulSharp.SDK.Geometry.Circle(GameObjects.Player.Position, 800f);
                            foreach (var QGetPos in QGetPoss.Points.OrderByDescending(i => i.Distance(Qpred.CastPosition)))
                            {
                                QCollision = new EnsoulSharp.SDK.Geometry.Rectangle(GameObjects.Player.Position.ToVector2(), QGetPos, Q.Width + 50);
                                var CheckCollision = GameObjects.EnemyMinions.Any(i => i.IsValid() && !i.IsDead && QCollision.IsInside(i));
                                if (CheckCollision == false)
                                {
                                    //Check For Collision
                                    {
                                        var QGeometry = new EnsoulSharp.SDK.Geometry.Rectangle(QGetPos.ToVector3(), Qpred.CastPosition, Q.Width + 50);

                                        if (QGeometry != null)
                                        {
                                            var CheckForCollision = GameObjects.EnemyMinions.Any(i => i.IsValid() && !i.IsDead && QGeometry.IsInside(i));
                                            if (CheckForCollision == false)
                                            {
                                                //Add Pos
                                                GetCastPos = QGetPos.ToVector3();
                                                GetBool    = false;
                                                if (Q.Cast(GetCastPos))
                                                {
                                                    break;
                                                }
                                            }
                                            else
                                            {
                                                GetBool = true;
                                                continue;
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
Пример #2
0
        private static void Game_OnUpdate1(EventArgs args)
        {
            if (GameObjects.Player.IsDead)
            {
                return;
            }

            //Game.Print(QTimer + QFlyingTime + "  ----  " + Variables.TickCount);

            if (Orbwalker.GetTarget() != null)
            {
                if ((Orbwalker.GetTarget() as AIBaseClient).HasBuff("zoeesleepstun") && Q.IsReady())
                {
                    Orbwalker.AttackEnabled = false;
                }
                else
                {
                    Orbwalker.AttackEnabled = true;
                }
            }

            if (Orbwalker.ActiveMode > OrbwalkerMode.Harass)
            {
                return;
            }

            var EclientPos = Vector3.Zero;

            if (EClient() != null || EStunClient() != null)
            {
                if (EClient() != null)
                {
                    EclientPos = EClient().Position;
                }
                if (EStunClient() != null)
                {
                    EclientPos = EStunClient().Position;
                }

                if (EclientPos.DistanceToPlayer() < Q.Range + MoveRange)
                {
                    if (Q.IsReady())
                    {
                        if (Q2())
                        {
                            if (EclientPos.DistanceToPlayer() > Q.Range && QTimer + QFlyingTime < Variables.TickCount)
                            {
                                if (Q.Cast(EclientPos))
                                {
                                    DelayAction.Add(200, () =>
                                    {
                                        if (R.Cast(EclientPos))
                                        {
                                            return;
                                        }
                                    });
                                }
                            }
                            else
                            {
                                if (QTimer + QFlyingTime < Variables.TickCount)
                                {
                                    if (Q.Cast(EclientPos))
                                    {
                                        return;
                                    }
                                }
                            }
                        }

                        if (!Q2())
                        {
                            var GetCastPos = Vector3.Zero;
                            var QGetPoss   = new EnsoulSharp.SDK.Geometry.Circle(GameObjects.Player.Position, 800f);
                            foreach (var QGetPos in QGetPoss.Points.OrderByDescending(i => i.Distance(EclientPos)))
                            {
                                QCollision = new EnsoulSharp.SDK.Geometry.Rectangle(GameObjects.Player.Position.ToVector2(), QGetPos, Q.Width + 50);
                                var CheckCollision = GameObjects.EnemyMinions.Any(i => i.IsValid() && !i.IsDead && QCollision.IsInside(i));
                                if (CheckCollision == false)
                                {
                                    //Check For Collision
                                    {
                                        var QGeometry = new EnsoulSharp.SDK.Geometry.Rectangle(QGetPos.ToVector3(), EclientPos, Q.Width * 2);

                                        if (QGeometry != null)
                                        {
                                            var CheckForCollision = GameObjects.EnemyMinions.Any(i => i.IsValid() && !i.IsDead && QGeometry.IsInside(i));
                                            if (CheckForCollision == false)
                                            {
                                                //Add Pos
                                                GetCastPos = QGetPos.ToVector3();
                                                GetBool    = false;
                                                if (Q.Cast(GetCastPos))
                                                {
                                                    break;
                                                }
                                            }
                                            else
                                            {
                                                GetBool = true;
                                                continue;
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }