示例#1
0
        public void OnEndScene(EventArgs args)
        {
            var insec  = new Insec();
            var target = TargetSelector.GetTarget(1500, TargetSelector.DamageType.Physical);

            if (target.IsValidTarget())
            {
                Drawing.DrawCircle(insec.WardPos(target), 70, Color.Red, 3);
            }
        }
示例#2
0
        public static void OnProc(Obj_AI_Base sender, GameObjectProcessSpellCastEventArgs args)
        {
            var insec = new Insec();

            if (!sender.IsMe)
            {
                return;
            }
            if (Program.KeyActiveF)
            {
                Logger.Log(args.SData.Name);
                if (args.SData.Name == "BlindMonkRKick") //check args.Target
                {
                    var target = TargetSelector.GetTarget(1500, TargetSelector.DamageType.Physical);
                    if (!target.IsValidTarget())
                    {
                        return;
                    }

                    ObjectManager.Player.Spellbook.CastSpell(
                        ObjectManager.Player.GetSpellSlot(SummonerSpells.Flash), insec.WardPos(target));
                }
            }
            switch (args.SData.Name)
            {
            case "BlinkMonkRKick":
                Program.LastRCastT = Environment.TickCount;
                break;

            case "BlindMonkWOne":
                Program.LastWCastT = Environment.TickCount;
                Program.WardPos    = args.End;
                break;

            case "BlindMonkQOne":
                Program.PlayerPosAfterQ = ObjectManager.Player.Position;
                Program.LastQCastT      = Environment.TickCount;
                break;
            }
        }
示例#3
0
        private void OnTickGame()
        {
            //switch (Orb.ActiveMode)
            //{
            //    case Orbwalker.OrbwalkingMode.LastHit:
            //        break;
            //    case Orbwalker.OrbwalkingMode.LaneClear:
            //        break;
            //    case Orbwalker.OrbwalkingMode.JungleClear:
            //        break;
            //    case Orbwalker.OrbwalkingMode.Combo:
            //       // Mode.DoCombo();
            //        break;
            //    case Orbwalker.OrbwalkingMode.Freeze:
            //        break;
            //    case Orbwalker.OrbwalkingMode.CustomMode:
            //        break;
            //    case Orbwalker.OrbwalkingMode.Harass:
            //        break;
            //    case Orbwalker.OrbwalkingMode.Flee:
            //        break;
            //    case Orbwalker.OrbwalkingMode.None:
            //        break;
            //}
            if (Environment.TickCount - LastQCastT > 5000)
            {
                PlayerPosAfterQ = new Vector3();
            }

            Insec insec  = new Insec();
            var   target = TargetSelector.GetTarget(1500, TargetSelector.DamageType.Physical);

            if (!target.IsValidTarget())
            {
                return;
            }
            var qpred = Q.GetPrediction(target);
            var col   = qpred.CollisionObjects;

            if (KeyActiveF && R.IsReady())
            {
                R.Cast(target);
            }

            if (KeyActive)
            {
                if (Q2())
                {
                    Q.Cast();
                }


                if (target.Distance(ObjectManager.Player) > 700 - WardRange(target) && Q.IsReady() && col.Count == 0)
                {
                    Q.Cast(qpred.CastPosition);
                }


                if (target.Distance(ObjectManager.Player) > 600 - WardRange(target) && Q.IsReady() && col.Count != 0)
                {
                    foreach (var min in ObjectManager.MinionsAndMonsters.Enemy.Where(
                                 x => x.IsValid() && x.Distance(ObjectManager.Player) <= Q.Range && Q.GetDamage(x) < x.Health &&
                                 x.Distance(insec.WardPos(target)) <= 600 && Angle(target, x, ObjectManager.Player) <= 60)
                             .OrderByDescending(y => y.Distance(target)))
                    {
                        Q.Cast(min.Position);
                    }
                }
                insec.DoInsec(target);
            }
        }