示例#1
0
 private static void Drawing_OnDraw(EventArgs args)
 {
     if (Config.Item("q.draw").GetValue <Circle>().Active&& Spells.Q.IsReady() && Spells.Q.QOne())
     {
         Render.Circle.DrawCircle(ObjectManager.Player.Position, Spells.Q.Range, Config.Item("q.draw").GetValue <Circle>().Color);
     }
     if (Config.Item("q2.draw").GetValue <Circle>().Active&& Spells.Q2.IsReady() && Spells.Q.QTwo())
     {
         Render.Circle.DrawCircle(ObjectManager.Player.Position, Spells.Q2.Range, Config.Item("q2.draw").GetValue <Circle>().Color);
     }
     if (Config.Item("w.draw").GetValue <Circle>().Active&& Spells.W.IsReady() && Spells.W.WOne())
     {
         Render.Circle.DrawCircle(ObjectManager.Player.Position, Spells.W.Range, Config.Item("w.draw").GetValue <Circle>().Color);
     }
     if (Config.Item("e.draw").GetValue <Circle>().Active&& Spells.E.IsReady() && Spells.E.EOne())
     {
         Render.Circle.DrawCircle(ObjectManager.Player.Position, Spells.E.Range, Config.Item("e.draw").GetValue <Circle>().Color);
     }
     if (Config.Item("e2.draw").GetValue <Circle>().Active&& Spells.E2.IsReady() && Spells.E.ETwo())
     {
         Render.Circle.DrawCircle(ObjectManager.Player.Position, Spells.E2.Range, Config.Item("e2.draw").GetValue <Circle>().Color);
     }
     if (Config.Item("r.draw").GetValue <Circle>().Active&& Spells.R.IsReady())
     {
         Render.Circle.DrawCircle(ObjectManager.Player.Position, Spells.R.Range, Config.Item("r.draw").GetValue <Circle>().Color);
     }
     if (Config.Item("insec.debug").GetValue <bool>())
     {
         Insec.InsecDebug();
     }
     if (Config.Item("obj.debug").GetValue <bool>())
     {
         Insec.ObjectUsageDebug();
     }
 }
示例#2
0
        private static void Game_OnGameUpdate(EventArgs args)
        {
            switch (Orbwalker.ActiveMode)
            {
            case Orbwalking.OrbwalkingMode.Combo:
                General.GeneralCombo();
                break;

            case Orbwalking.OrbwalkingMode.LaneClear:
                JungleClear();
                WaveClear();
                break;
            }

            if (Config.Item("insec.active").GetValue <KeyBind>().Active)
            {
                ObjectManager.Player.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPos);
                Insec.ClickInsec();
            }
            if (Config.Item("ward.active").GetValue <KeyBind>().Active)
            {
                ObjectManager.Player.IssueOrder(GameObjectOrder.MoveTo, Game.CursorPos);
                WardJump.HikiJump(ObjectManager.Player.Position.Extend(Game.CursorPos, 600));
            }
        }
示例#3
0
        public static void OnUpdate()
        {
            try
            {
                if (Global.Player.IsDead || Global.Orbwalker.IsWindingUp || Global.Player.IsRecalling())
                {
                    return;
                }

                foreach (var soldier in SoldierManager.Soldiers)
                {
                    if (soldier.Distance(Global.Player) > 660)
                    {
                        continue;
                    }

                    var enemy = GameObjects.Enemy.FirstOrDefault(x => x.Distance(soldier) <= 250 + x.BoundingRadius && !x.IsDead && x.MaxHealth > 10 && soldier.Distance(Global.Player) <= SpellConfig.Q.Range + 65 && soldier.Distance(Global.Player) > Global.Player.AttackRange);
                    if (enemy == null || Game.TickCount - _lastAa <= 1000)
                    {
                        continue;
                    }

                    _lastAa = Game.TickCount;
                    Global.Player.IssueOrder(OrderType.AttackUnit, enemy);
                    DelayAction.Queue(250, () => Global.Player.IssueOrder(OrderType.MoveTo, Game.CursorPos), new CancellationToken(false));
                }

                SpellConfig.R.Width = 133 * (3 + Global.Player.GetSpell(SpellSlot.R).Level);

                Insec.OnKeyPressed();

                switch (Global.Orbwalker.Mode)
                {
                case OrbwalkingMode.Combo:
                    Combo.OnUpdate();
                    break;

                case OrbwalkingMode.Mixed:
                    Harass.OnUpdate();
                    break;

                case OrbwalkingMode.Laneclear:
                    JungleClear.OnUpdate();
                    LaneClear.OnUpdate();
                    break;

                case OrbwalkingMode.None:
                    AzirHelper.Rect = null;
                    break;
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                throw;
            }
        }
示例#4
0
 static Config()
 {
     Menu = MainMenu.AddMenu(MenuName, MenuName.ToLower());
     Menu.AddGroupLabel("TooFatGragas ^.^");
     Menu.AddSeparator();
     Menu.AddLabel("Made by Kk2 (:");
     Combo.Initialize();
     Harass.Initialize();
     LaneClear.Initialize();
     JungleClear.Initialize();
     Insec.Initialize();
     Drawings.Initialize();
 }
示例#5
0
            static Modes()
            {
                ModesMenu = Menu.AddSubMenu("Modes");
                Combo.Initialize();
                Menu.AddSeparator();
                Insec.Initialize();
                Menu.AddSeparator();
                Harass.Initialize();
                Menu.AddSeparator();
                LaneClear.Initialize();

                MiscMenu = Menu.AddSubMenu("Misc");
                Misc.Initialize();
                DrawMenu = Menu.AddSubMenu("Draw");
                Draw.Initialize();
            }
示例#6
0
        private static void OnUpdate(EventArgs args)
        {
            if (Player.IsDead || MenuGUI.IsChatOpen || MenuGUI.IsShopOpen || Player.IsRecalling())
            {
                return;
            }
            KillSteal();
            switch (Orbwalker.ActiveMode)
            {
            case OrbwalkingMode.Combo:
                Combo();
                break;

            case OrbwalkingMode.LastHit:
                Farm();
                break;

            case OrbwalkingMode.None:
                if (MainMenu["FleeW"].GetValue <MenuKeyBind>().Active)
                {
                    Orbwalker.MoveOrder(Game.CursorPos);
                    Flee(Game.CursorPos);
                }
                else if (MainMenu["Orbwalk"]["Star"].GetValue <MenuKeyBind>().Active)
                {
                    Star();
                }
                else if (MainMenu["Insec"]["Normal"].GetValue <MenuKeyBind>().Active)
                {
                    Orbwalker.MoveOrder(Game.CursorPos);
                    if (Insec.NormalReady)
                    {
                        Insec.DoNormal();
                    }
                }
                else if (MainMenu["Insec"]["Advanced"].GetValue <MenuKeyBind>().Active)
                {
                    Orbwalker.MoveOrder(Game.CursorPos);
                    if (Insec.AdvancedReady)
                    {
                        Insec.DoAdvanced();
                    }
                }
                break;
            }
        }
示例#7
0
 private static void WaveClear()
 {
     var qMinion = MinionManager.GetMinions(ObjectManager.Player.Position, Spells.Q.Range, MinionTypes.All, MinionTeam.Enemy, MinionOrderTypes.MaxHealth);
     if (Spells.Q.IsReady() && Spells.Q.QOne() && Config.Item("q.wave").GetValue<bool>())
     {
         foreach (var minion in qMinion.Where(x => x.Health < Spells.Q.GetDamage(x)))
         {
             Spells.Q.Cast(minion);
         }
     }
     if (Spells.E.IsReady() && Spells.E.EOne() && Config.Item("e.wave").GetValue<bool>())
     {
         var countMinion = qMinion.Count(x => x.IsValidTarget(Spells.E.Range));
         if (countMinion >= Insec.SliderCheck("e.minion.count"))
         {
             Spells.E.Cast();
         }
     }
 }
示例#8
0
        public static void OnRender()
        {
            if (Global.Player.IsDead)
            {
                return;
            }

            if (MenuConfig.Drawings["Q"].Enabled)
            {
                Render.Circle(Global.Player.Position, SpellConfig.Q.Range, (uint)MenuConfig.Drawings["Segments"].Value,
                              Color.Yellow);
            }

            if (MenuConfig.Drawings["R"].Enabled)
            {
                Render.Circle(Global.Player.Position, SpellConfig.R.Range, (uint)MenuConfig.Drawings["Segments"].Value,
                              Color.Red);
            }

            if (AzirHelper.InsecMode.Active)
            {
                Render.Circle(Global.Player.ServerPosition, Insec.InsecRange(), (uint)MenuConfig.Drawings["Segments"].Value, Color.LightGray);
            }

            if (AzirHelper.Rect != null)
            {
                AzirHelper.Rect.Draw(Color.SlateGray);
            }

            if (!SoldierManager.Soldiers.Any() || !MenuConfig.Drawings["Soldiers"].Enabled)
            {
                return;
            }

            foreach (var soldier in SoldierManager.Soldiers)
            {
                Render.Circle(soldier.ServerPosition, 325, (uint)MenuConfig.Drawings["Segments"].Value,
                              Color.SlateBlue);
            }
        }
示例#9
0
            static Modes()
            {
                // Initialize the menu
                ComboMenu = Menu.AddSubMenu("Combo");
                Combo.Initialize();
                HarassMenu = Menu.AddSubMenu("Harass");
                Harass.Initialize();
                LCMenu = Menu.AddSubMenu("LC");
                LC.Initialize();
                MiscMenu = Menu.AddSubMenu("Misc");
                PermaActive.Initialize();
                InsecMenu = Menu.AddSubMenu("GenSec™");
                Insec.Initialize();
                InterruptMenu = Menu.AddSubMenu("Interrupt");
                Interrupt.Initialize();
                // Initialize all modes
                // Combo

                Menu.AddSeparator();

                // Harass
            }
示例#10
0
        public LeeSin()
        {
            Q  = new Spell(SpellSlot.Q, 1100);
            Q2 = new Spell(SpellSlot.Q, 1300);
            W  = new Spell(SpellSlot.W, 700);
            E  = new Spell(SpellSlot.E, 400, TargetSelector.DamageType.Magical);
            E2 = new Spell(SpellSlot.E, 570);
            R  = new Spell(SpellSlot.R, 375);
            R2 = new Spell(SpellSlot.R, 800);
            Q.SetSkillshot(0.25f, 65, 1800, true, SkillshotType.SkillshotLine);
            R2.SetSkillshot(0.25f, 100, 1500, false, SkillshotType.SkillshotLine);

            var champMenu = new Menu("Plugin", Player.ChampionName + "_Plugin");

            {
                Insec.Init(champMenu);
                var comboMenu = new Menu("Combo", "Combo");
                {
                    AddKeybind(comboMenu, "Star", "Star Combo (Q-[W]-R-E-Q)", "X");
                    AddBool(comboMenu, "Smite", "Use Red Smite");
                    AddBool(comboMenu, "P", "Use Passive", false);
                    AddBool(comboMenu, "Q", "Use Q");
                    AddBool(comboMenu, "QCol", "-> Smite Collision");
                    AddBool(comboMenu, "W", "Use W");
                    AddSlider(comboMenu, "WHpU", "-> If Hp <", 30);
                    AddBool(comboMenu, "E", "Use E");
                    AddBool(comboMenu, "R", "Use R");
                    AddBool(comboMenu, "RBehind", "-> If Kill Enemy Behind");
                    AddSlider(comboMenu, "RCount", "-> Or Hit Enemy Behind >=", 2, 1, 4);
                    champMenu.AddSubMenu(comboMenu);
                }
                //var harassMenu = new Menu("Harass", "Harass");
                //{
                //    AddBool(harassMenu, "Q", "Use Q");
                //    AddSlider(harassMenu, "Q2HpA", "-> Q2 If Hp Above", 30);
                //    AddBool(harassMenu, "E", "Use E");
                //    AddBool(harassMenu, "W", "Use W Jump Back");
                //    AddBool(harassMenu, "WWard", "-> Ward Jump", false);
                //    champMenu.AddSubMenu(harassMenu);
                //}
                var clearMenu = new Menu("Clear", "Clear");
                {
                    AddSmiteMob(clearMenu);
                    champMenu.AddSubMenu(clearMenu);
                }
                var lastHitMenu = new Menu("Last Hit", "LastHit");
                {
                    AddBool(lastHitMenu, "Q", "Use Q");
                    champMenu.AddSubMenu(lastHitMenu);
                }
                var fleeMenu = new Menu("Flee", "Flee");
                {
                    AddBool(fleeMenu, "W", "Use W");
                    AddBool(fleeMenu, "PinkWard", "-> Ward Jump Use Pink Ward", false);
                    champMenu.AddSubMenu(fleeMenu);
                }
                var miscMenu = new Menu("Misc", "Misc");
                {
                    var killStealMenu = new Menu("Kill Steal", "KillSteal");
                    {
                        AddBool(killStealMenu, "Q", "Use Q");
                        AddBool(killStealMenu, "E", "Use E");
                        AddBool(killStealMenu, "R", "Use R");
                        AddBool(killStealMenu, "Ignite", "Use Ignite");
                        AddBool(killStealMenu, "Smite", "Use Smite");
                        miscMenu.AddSubMenu(killStealMenu);
                    }
                    var interruptMenu = new Menu("Interrupt", "Interrupt");
                    {
                        AddBool(interruptMenu, "R", "Use R");
                        AddBool(interruptMenu, "RGap", "-> Use W To Gap Closer");
                        foreach (var spell in
                                 Interrupter.Spells.Where(
                                     i => HeroManager.Enemies.Any(a => i.ChampionName == a.ChampionName)))
                        {
                            AddBool(
                                interruptMenu, spell.ChampionName + "_" + spell.Slot,
                                "-> Skill " + spell.Slot + " Of " + spell.ChampionName);
                        }
                        miscMenu.AddSubMenu(interruptMenu);
                    }
                    champMenu.AddSubMenu(miscMenu);
                }
                var drawMenu = new Menu("Draw", "Draw");
                {
                    AddBool(drawMenu, "Q", "Q Range", false);
                    AddBool(drawMenu, "W", "W Range", false);
                    AddBool(drawMenu, "E", "E Range", false);
                    AddBool(drawMenu, "R", "R Range", false);
                    champMenu.AddSubMenu(drawMenu);
                }
                MainMenu.AddSubMenu(champMenu);
            }
            Game.OnUpdate  += OnUpdate;
            Drawing.OnDraw += OnDraw;
            Interrupter.OnPossibleToInterrupt += OnPossibleToInterrupt;
            GameObject.OnCreate += OnCreateWardForFlee;
        }
示例#11
0
 public AzirModes(AzirMain azir)
 {
     _jump  = new JumpLogic(azir);
     _insec = new Insec(azir);
 }
示例#12
0
        public LeeSin()
        {
            var spellConfig = new SpellConfig();

            spellConfig.Load();

            var insecManager = new InsecManager(spellConfig);

            var wardtracker = new WardTracker(spellConfig);
            var wardmanager = new WardManager(wardtracker);

            var wardjump  = new WardJump(wardtracker, wardmanager, spellConfig);
            var insec     = new Insec(wardtracker, wardmanager, spellConfig, insecManager);
            var kickFlash = new KickFlash(spellConfig, insecManager);

            var combo = new Combo(wardmanager, spellConfig, wardtracker);

            var harass      = new Harass(wardmanager, spellConfig);
            var jungle      = new JungleClear(wardmanager, spellConfig);
            var lane        = new LaneClear(spellConfig);
            var lasthit     = new Lasthit(spellConfig);
            var killsteal   = new Killsteal(spellConfig);
            var drawManager = new DrawManager(spellConfig, insecManager, new Dmg(spellConfig));

            var mainmenu = new Menu("main", "Adept AIO", true);

            mainmenu.Attach();

            spellConfig.InsecMode     = new OrbwalkerMode("Insec", KeyCode.T, Global.TargetSelector.GetSelectedTarget, insec.OnKeyPressed);
            spellConfig.WardjumpMode  = new OrbwalkerMode("Wardjump", KeyCode.G, null, wardjump.OnKeyPressed);
            spellConfig.KickFlashMode = new OrbwalkerMode("Kick Flash", KeyCode.A, null, kickFlash.OnKeyPressed);

            spellConfig.InsecMode.MenuItem.OnValueChanged     += (sender, args) => insec.Enabled = args.GetNewValue <MenuKeyBind>().Value;
            spellConfig.WardjumpMode.MenuItem.OnValueChanged  += (sender, args) => wardjump.Enabled = args.GetNewValue <MenuKeyBind>().Value;
            spellConfig.KickFlashMode.MenuItem.OnValueChanged += (sender, args) => kickFlash.Enabled = args.GetNewValue <MenuKeyBind>().Value;

            Global.Orbwalker.AddMode(spellConfig.InsecMode);
            Global.Orbwalker.AddMode(spellConfig.WardjumpMode);
            Global.Orbwalker.AddMode(spellConfig.KickFlashMode);
            Global.Orbwalker.Attach(mainmenu);

            var insecMenu     = new Menu("Insec", "Insec");
            var insecBk       = new MenuKeyBind("BK", "Bubba Kush Toggle", KeyCode.L, KeybindType.Toggle);
            var insecF        = new MenuBool("Flash", "Enable Flash");
            var insecObject   = new MenuBool("Object", "Use Q On Minions").SetToolTip("Uses Q to gapclose to every minion");
            var insecQLast    = new MenuBool("Last", "Use Q After Insec").SetToolTip("Only possible if no minions near target");
            var insecPosition = new MenuList("Position",
                                             "Insec Position",
                                             new[]
            {
                "Ally Turret",
                "Ally Hero"
            },
                                             0);
            var insecKick = new MenuList("Kick",
                                         "Kick Type: ",
                                         new[]
            {
                "Flash R",
                "R Flash"
            },
                                         1);

            insecMenu.Add(insecBk);
            insecMenu.Add(insecF);
            insecMenu.Add(insecObject);
            insecMenu.Add(insecQLast);
            insecMenu.Add(insecPosition);
            insecMenu.Add(insecKick);
            mainmenu.Add(insecMenu);

            Temp.IsBubbaKush                = insec.Bk = insecMenu["BK"].Enabled;
            insec.FlashEnabled              = insecMenu["Flash"].Enabled;
            insec.ObjectEnabled             = insecMenu["Object"].Enabled;
            insec.QLast                     = insecMenu["Last"].Enabled;
            insecManager.InsecPositionValue = insecMenu["Position"].Value;
            insecManager.InsecKickValue     = insecMenu["Kick"].Value;

            insecBk.OnValueChanged += (sender, args) =>
            {
                insec.Bk         = args.GetNewValue <MenuKeyBind>().Value;
                Temp.IsBubbaKush = args.GetNewValue <MenuKeyBind>().Value;
            };

            insecF.OnValueChanged        += (sender, args) => insec.FlashEnabled = args.GetNewValue <MenuBool>().Value;
            insecObject.OnValueChanged   += (sender, args) => insec.ObjectEnabled = args.GetNewValue <MenuBool>().Value;
            insecQLast.OnValueChanged    += (sender, args) => insec.QLast = args.GetNewValue <MenuBool>().Value;
            insecPosition.OnValueChanged += (sender, args) => insecManager.InsecPositionValue = args.GetNewValue <MenuList>().Value;
            insecKick.OnValueChanged     += (sender, args) => insecManager.InsecKickValue = args.GetNewValue <MenuList>().Value;

            var comboMenu   = new Menu("Combo", "Combo");
            var comboTurret = new MenuBool("Turret", "Don't Q2 Into Turret");
            var comboQ      = new MenuBool("Q", "Use Q");
            var comboQ2     = new MenuBool("Q2", "Use Q2");
            var comboW      = new MenuBool("W", "Use W");
            var comboWard   = new MenuBool("Ward", "Use Wards");
            var comboE      = new MenuBool("E", "Use E");

            foreach (var b in new List <MenuBool>
            {
                comboTurret,
                comboQ,
                comboQ2,
                comboW,
                comboWard,
                comboE
            })
            {
                comboMenu.Add(b);
            }
            mainmenu.Add(comboMenu);

            combo.TurretCheckEnabled = comboMenu["Turret"].Enabled;
            combo.Q1Enabled          = comboMenu["Q"].Enabled;
            combo.Q2Enabled          = comboMenu["Q2"].Enabled;
            combo.WEnabled           = comboMenu["W"].Enabled;
            combo.WardEnabled        = comboMenu["Ward"].Enabled;
            combo.EEnabled           = comboMenu["E"].Enabled;

            comboTurret.OnValueChanged += (sender, args) => combo.TurretCheckEnabled = args.GetNewValue <MenuBool>().Value;
            comboQ.OnValueChanged      += (sender, args) => combo.Q1Enabled = args.GetNewValue <MenuBool>().Value;
            comboQ2.OnValueChanged     += (sender, args) => combo.Q2Enabled = args.GetNewValue <MenuBool>().Value;
            comboW.OnValueChanged      += (sender, args) => combo.WEnabled = args.GetNewValue <MenuBool>().Value;
            comboWard.OnValueChanged   += (sender, args) => combo.WardEnabled = args.GetNewValue <MenuBool>().Value;
            comboE.OnValueChanged      += (sender, args) => combo.EEnabled = args.GetNewValue <MenuBool>().Value;

            var harassMenu = new Menu("Harass", "Harass");
            var harassQ    = new MenuBool("Q", "Use Q");
            var harassQ2   = new MenuBool("Q2", "Use Q2");
            var harassMode = new MenuList("Mode",
                                          "W Mode: ",
                                          new[]
            {
                "Away",
                "W Self"
            },
                                          0);
            var harassE  = new MenuBool("E", "Use E");
            var harassE2 = new MenuBool("E2", "Use E2");

            harassMenu.Add(harassQ);
            harassMenu.Add(harassQ2);
            harassMenu.Add(harassMode);
            harassMenu.Add(harassE);
            harassMenu.Add(harassE2);
            mainmenu.Add(harassMenu);

            harass.Q1Enabled = harassMenu["Q"].Enabled;
            harass.Q2Enabled = harassMenu["Q2"].Enabled;
            harass.Mode      = harassMenu["Mode"].Value;
            harass.EEnabled  = harassMenu["E"].Enabled;
            harass.E2Enabled = harassMenu["E2"].Enabled;

            harassQ.OnValueChanged    += (sender, args) => harass.Q1Enabled = args.GetNewValue <MenuBool>().Value;
            harassQ2.OnValueChanged   += (sender, args) => harass.Q2Enabled = args.GetNewValue <MenuBool>().Value;
            harassMode.OnValueChanged += (sender, args) => harass.Mode = args.GetNewValue <MenuList>().Value;
            harassE.OnValueChanged    += (sender, args) => harass.EEnabled = args.GetNewValue <MenuBool>().Value;
            harassE2.OnValueChanged   += (sender, args) => harass.E2Enabled = args.GetNewValue <MenuBool>().Value;

            var jungleMenu  = new Menu("Jungle", "Jungle");
            var jungleSteal = new MenuBool("Steal", "Steal Legendary");
            var jungleSmite = new MenuBool("Smite", "Smite Big Mobs");
            var jungleBlue  = new MenuBool("Blue", "Smite Blue Buff");
            var jungleQ     = new MenuBool("Q", "Q");
            var jungleW     = new MenuBool("W", "W");
            var jungleE     = new MenuBool("E", "E");

            foreach (var b in new List <MenuBool>
            {
                jungleSteal,
                jungleSmite,
                jungleBlue,
                jungleQ,
                jungleW,
                jungleE
            })
            {
                jungleMenu.Add(b);
            }
            mainmenu.Add(jungleMenu);

            jungle.StealEnabled = jungleMenu["Steal"].Enabled;
            jungle.SmiteEnabled = jungleMenu["Smite"].Enabled;
            jungle.BlueEnabled  = jungleMenu["Blue"].Enabled;
            jungle.Q1Enabled    = jungleMenu["Q"].Enabled;
            jungle.WEnabled     = jungleMenu["W"].Enabled;
            jungle.EEnabled     = jungleMenu["E"].Enabled;

            jungleSteal.OnValueChanged += (sender, args) => jungle.StealEnabled = args.GetNewValue <MenuBool>().Value;
            jungleSmite.OnValueChanged += (sender, args) => jungle.Q1Enabled = args.GetNewValue <MenuBool>().Value;
            jungleBlue.OnValueChanged  += (sender, args) => jungle.BlueEnabled = args.GetNewValue <MenuBool>().Value;
            jungleQ.OnValueChanged     += (sender, args) => jungle.Q1Enabled = args.GetNewValue <MenuBool>().Value;
            jungleW.OnValueChanged     += (sender, args) => jungle.WEnabled = args.GetNewValue <MenuBool>().Value;
            jungleE.OnValueChanged     += (sender, args) => jungle.EEnabled = args.GetNewValue <MenuBool>().Value;

            var laneMenu  = new Menu("Lane", "Lane");
            var laneCheck = new MenuBool("Check", "Don't Clear When Enemies Nearby");
            var laneQ     = new MenuBool("Q", "Q");
            var laneW     = new MenuBool("W", "W");
            var laneE     = new MenuBool("E", "E");

            foreach (var b in new List <MenuBool>
            {
                laneCheck,
                laneQ,
                laneW,
                laneE
            })
            {
                laneMenu.Add(b);
            }
            mainmenu.Add(laneMenu);

            lane.CheckEnabled = laneMenu["Check"].Enabled;
            lane.Q1Enabled    = laneMenu["Q"].Enabled;
            lane.WEnabled     = laneMenu["W"].Enabled;
            lane.EEnabled     = laneMenu["E"].Enabled;

            laneCheck.OnValueChanged += (sender, args) => lane.CheckEnabled = args.GetNewValue <MenuBool>().Value;
            laneQ.OnValueChanged     += (sender, args) => lane.Q1Enabled = args.GetNewValue <MenuBool>().Value;
            laneW.OnValueChanged     += (sender, args) => lane.WEnabled = args.GetNewValue <MenuBool>().Value;
            laneE.OnValueChanged     += (sender, args) => lane.EEnabled = args.GetNewValue <MenuBool>().Value;

            var lasthitMenu    = new Menu("Lasthit", "Lasthit");
            var lasthitEnabled = new MenuBool("Enabled", "Enabled");

            lasthitMenu.Add(lasthitEnabled);
            mainmenu.Add(lasthitMenu);
            lasthit.Enabled = lasthitMenu["Enabled"].Enabled;
            lasthitEnabled.OnValueChanged += (sender, args) => lasthit.Enabled = args.GetNewValue <MenuBool>().Value;

            var ksMenu   = new Menu("Killsteal", "Killsteal");
            var ksIgnite = new MenuBool("Ignite", "Ignite");
            var ksSmite  = new MenuBool("Smite", "Smite");
            var ksQ      = new MenuBool("Q", "Q");
            var ksE      = new MenuBool("E", "E");
            var ksR      = new MenuBool("R", "R");

            foreach (var b in new List <MenuBool>
            {
                ksIgnite,
                ksSmite,
                ksQ,
                ksE,
                ksR
            })
            {
                ksMenu.Add(b);
            }
            mainmenu.Add(ksMenu);

            killsteal.IgniteEnabled = ksMenu["Ignite"].Enabled;
            killsteal.SmiteEnabled  = ksMenu["Smite"].Enabled;
            killsteal.QEnabled      = ksMenu["Q"].Enabled;
            killsteal.EEnabled      = ksMenu["E"].Enabled;
            killsteal.REnabled      = ksMenu["R"].Enabled;

            ksIgnite.OnValueChanged += (sender, args) => killsteal.IgniteEnabled = args.GetNewValue <MenuBool>().Value;
            ksSmite.OnValueChanged  += (sender, args) => killsteal.SmiteEnabled = args.GetNewValue <MenuBool>().Value;
            ksQ.OnValueChanged      += (sender, args) => killsteal.QEnabled = args.GetNewValue <MenuBool>().Value;
            ksE.OnValueChanged      += (sender, args) => killsteal.EEnabled = args.GetNewValue <MenuBool>().Value;
            ksR.OnValueChanged      += (sender, args) => killsteal.REnabled = args.GetNewValue <MenuBool>().Value;

            var drawMenu     = new Menu("Draw", "DrawManager");
            var drawSegments = new MenuSlider("Segments", "Segments", 100, 10, 150).SetToolTip("Smoothness of the circles");
            var drawPosition = new MenuBool("Position", "Insec Position");
            var drawQ        = new MenuBool("Q", "Q Range");

            drawMenu.Add(drawSegments);
            drawMenu.Add(drawPosition);
            drawMenu.Add(drawQ);
            mainmenu.Add(drawMenu);

            drawManager.QEnabled        = drawMenu["Q"].Enabled;
            drawManager.SegmentsValue   = drawMenu["Segments"].Value;
            drawManager.PositionEnabled = drawMenu["Position"].Enabled;

            drawSegments.OnValueChanged += (sender, args) => drawManager.SegmentsValue = args.GetNewValue <MenuSlider>().Value;
            drawPosition.OnValueChanged += (sender, args) => drawManager.PositionEnabled = args.GetNewValue <MenuBool>().Value;
            drawQ.OnValueChanged        += (sender, args) => drawManager.QEnabled = args.GetNewValue <MenuBool>().Value;

            Gapcloser.Attach(mainmenu, "Gapcloser");
            var gapcloser = new AntiGapcloser(spellConfig, wardmanager, wardtracker);

            Gapcloser.OnGapcloser += gapcloser.OnGapcloser;

            var manager = new Manager(combo, harass, jungle, lane, lasthit);

            Game.OnUpdate += manager.OnUpdate;
            Game.OnUpdate += killsteal.OnUpdate;

            Global.Orbwalker.PostAttack += manager.PostAttack;

            Render.OnRender  += drawManager.OnRender;
            Render.OnPresent += drawManager.RenerDamage;

            Obj_AI_Base.OnProcessSpellCast += insec.OnProcessSpellCast;
            Obj_AI_Base.OnProcessSpellCast += kickFlash.OnProcessSpellCast;
            Obj_AI_Base.OnProcessSpellCast += spellConfig.OnProcessSpellCast;

            GameObject.OnCreate += wardtracker.OnCreate;
        }
示例#13
0
        public LeeSin()
        {
            Q  = new Spell(SpellSlot.Q, 1100);
            Q2 = new Spell(SpellSlot.Q, 1300);
            W  = new Spell(SpellSlot.W, 700);
            E  = new Spell(SpellSlot.E, 400);
            E2 = new Spell(SpellSlot.E, 550);
            R  = new Spell(SpellSlot.R, 375);
            Q.SetSkillshot(0.25f, 60, 1800, true, SkillshotType.SkillshotLine);
            W.SetTargetted(0.05f, 1400);
            R.SetTargetted(0.25f, 1500);
            Q.DamageType   = Q2.DamageType = W.DamageType = R.DamageType = DamageType.Physical;
            E.DamageType   = DamageType.Magical;
            Q.MinHitChance = HitChance.VeryHigh;

            Insec.Init();
            var orbwalkMenu = MainMenu.Add(new Menu("Orbwalk", "Orbwalk"));
            {
                orbwalkMenu.KeyBind("Star", "Star Combo", Keys.X);
                orbwalkMenu.Bool("W", "Use W", false);
                orbwalkMenu.Bool("E", "Use E");
                orbwalkMenu.Separator("Q Settings");
                orbwalkMenu.Bool("Q", "Use Q");
                orbwalkMenu.Bool("Q2", "-> Also Q2");
                orbwalkMenu.Bool("QCol", "Smite Collision");
                orbwalkMenu.Separator("R Settings");
                orbwalkMenu.Bool("R", "Use R");
                orbwalkMenu.Bool("RKill", "If Kill Enemy Behind");
                orbwalkMenu.Slider("RCountA", "Or Hit Enemy Behind >=", 1, 1, 4);
                orbwalkMenu.Separator("Sub Settings");
                orbwalkMenu.Bool("Ignite", "Use Ignite");
                orbwalkMenu.Bool("Item", "Use Item");
            }
            var farmMenu = MainMenu.Add(new Menu("Farm", "Farm"));
            {
                farmMenu.Bool("Q", "Use Q1");
            }
            var ksMenu = MainMenu.Add(new Menu("KillSteal", "Kill Steal"));
            {
                ksMenu.Bool("Q", "Use Q");
                ksMenu.Bool("E", "Use E");
                ksMenu.Bool("R", "Use R");
                ksMenu.Separator("Extra R Settings");
                foreach (var enemy in GameObjects.EnemyHeroes)
                {
                    ksMenu.Bool("RCast" + enemy.ChampionName, "Cast On " + enemy.ChampionName, false);
                }
            }
            var drawMenu = MainMenu.Add(new Menu("Draw", "Draw"));

            {
                drawMenu.Bool("Q", "Q Range", false);
                drawMenu.Bool("W", "W Range");
                drawMenu.Bool("E", "E Range", false);
                drawMenu.Bool("R", "R Range", false);
            }
            MainMenu.KeyBind("FleeW", "Use W To Flee", Keys.C);

            Game.OnUpdate  += OnUpdate;
            Drawing.OnDraw += args =>
            {
                if (Player.IsDead)
                {
                    return;
                }
                if (MainMenu["Draw"]["Q"] && Q.Level > 0)
                {
                    Drawing.DrawCircle(
                        Player.Position,
                        (IsQOne ? Q : Q2).Range,
                        Q.IsReady() ? Color.LimeGreen : Color.IndianRed);
                }
                if (MainMenu["Draw"]["W"] && W.Level > 0 && IsWOne)
                {
                    Drawing.DrawCircle(Player.Position, W.Range, W.IsReady() ? Color.LimeGreen : Color.IndianRed);
                }
                if (MainMenu["Draw"]["E"] && E.Level > 0)
                {
                    Drawing.DrawCircle(
                        Player.Position,
                        (IsEOne ? E : E2).Range,
                        E.IsReady() ? Color.LimeGreen : Color.IndianRed);
                }
                if (MainMenu["Draw"]["R"] && R.Level > 0)
                {
                    Drawing.DrawCircle(Player.Position, R.Range, R.IsReady() ? Color.LimeGreen : Color.IndianRed);
                }
            };
            Obj_AI_Base.OnProcessSpellCast += (sender, args) =>
            {
                if (!sender.IsMe)
                {
                    return;
                }
                if (MainMenu["Orbwalk"]["Star"].GetValue <MenuKeyBind>().Active &&
                    args.SData.Name == "BlindMonkRKick" && E.IsReady() && IsEOne &&
                    HaveQ((Obj_AI_Hero)args.Target) && Player.Mana >= 80)
                {
                    DelayAction.Add(R.Delay * 1000, () => E.Cast());
                }
            };
        }