Exemplo n.º 1
0
        internal static void BuildInterrupterMenu()
        {
            if (!EntityManager.Heroes.Enemies.Any(x => Utils.Interrupter.InterruptibleList.Exists(e => e.ChampionName == x.ChampionName)))
            {
                return;
            }

            InterrupterMenu = Menu.AddSubMenu("Interrupter");
            InterrupterMenu.AddGroupLabel("Global settings");
            InterrupterMenu.Add("MenuManager.InterrupterMenu.Enabled", new CheckBox("Interrupter Enabled"));
            InterrupterMenu.Add("MenuManager.InterrupterMenu.OnlyInCombo", new CheckBox("Active only in Combo mode", false));
            InterrupterMenu.AddSeparator(15);

            foreach (var enemy in EntityManager.Heroes.Enemies.Where(x => Utils.Interrupter.InterruptibleList.Exists(e => e.ChampionName == x.ChampionName)))
            {
                var interruptibleSpells = Utils.Interrupter.InterruptibleList.FindAll(e => e.ChampionName == enemy.ChampionName);

                if (interruptibleSpells.Count <= 0)
                {
                    continue;
                }

                InterrupterMenu.AddGroupLabel(enemy.ChampionName);

                foreach (var interruptibleSpell in interruptibleSpells)
                {
                    int healthPercent;

                    switch (interruptibleSpell.DangerLevel)
                    {
                    case DangerLevel.High:
                        healthPercent = 100;
                        break;

                    case DangerLevel.Medium:
                        healthPercent = 75;
                        break;

                    case DangerLevel.Low:
                        healthPercent = 50;
                        break;

                    default:
                        healthPercent = 0;
                        break;
                    }

                    InterrupterMenu.AddLabel("[" + interruptibleSpell.SpellSlot + "] " + interruptibleSpell.SpellName + " | Danger Level : " + interruptibleSpell.DangerLevel);
                    InterrupterMenu.Add("MenuManager.InterrupterMenu." + enemy.ChampionName + "." + interruptibleSpell.SpellSlot + ".Delay", new Slider("Delay", 0, 0, 500));
                    InterrupterMenu.Add("MenuManager.InterrupterMenu." + enemy.ChampionName + "." + interruptibleSpell.SpellSlot + ".Hp", new Slider("Only if I'm below under {0} % of my HP", healthPercent));
                    InterrupterMenu.Add("MenuManager.InterrupterMenu." + enemy.ChampionName + "." + interruptibleSpell.SpellSlot + ".Enemies", new Slider("Only if {0} or less enemies are near", 5, 1, 5));
                    InterrupterMenu.Add("MenuManager.InterrupterMenu." + enemy.ChampionName + "." + interruptibleSpell.SpellSlot + ".Enabled", new CheckBox("Enabled"));

                    InterruptibleSpellsFound++;
                }
            }
        }
Exemplo n.º 2
0
        internal static void BuildInterrupterMenu()
        {
            if (!EntityManager.Heroes.Enemies.Any(x => Utils.Interrupter.InterruptibleList.Exists(e => e.ChampionName == x.ChampionName)))
            {
                return;
            }

            InterrupterMenu = Menu.AddSubMenu("Interrupter");
            InterrupterMenu.AddGroupLabel("Global settings");
            InterrupterMenu.Add("MenuManager.InterrupterMenu.Enabled", new CheckBox("Kesici Etkin"));
            InterrupterMenu.Add("MenuManager.InterrupterMenu.OnlyInCombo", new CheckBox("Sadece komboda aktif", false));
            InterrupterMenu.AddSeparator(15);

            foreach (var enemy in EntityManager.Heroes.Enemies.Where(x => Utils.Interrupter.InterruptibleList.Exists(e => e.ChampionName == x.ChampionName)))
            {
                var interruptibleSpells = Utils.Interrupter.InterruptibleList.FindAll(e => e.ChampionName == enemy.ChampionName);

                if (interruptibleSpells.Count <= 0)
                {
                    continue;
                }

                InterrupterMenu.AddGroupLabel(enemy.ChampionName);

                foreach (var interruptibleSpell in interruptibleSpells)
                {
                    int healthPercent;

                    switch (interruptibleSpell.DangerLevel)
                    {
                    case DangerLevel.High:
                        healthPercent = 100;
                        break;

                    case DangerLevel.Medium:
                        healthPercent = 75;
                        break;

                    case DangerLevel.Low:
                        healthPercent = 50;
                        break;

                    default:
                        healthPercent = 0;
                        break;
                    }

                    InterrupterMenu.AddLabel("[" + interruptibleSpell.SpellSlot + "] " + interruptibleSpell.SpellName + " | Danger Level : " + interruptibleSpell.DangerLevel);
                    InterrupterMenu.Add("MenuManager.InterrupterMenu." + enemy.ChampionName + "." + interruptibleSpell.SpellSlot + ".Delay", new Slider("Gecikme", 0, 0, 500));
                    InterrupterMenu.Add("MenuManager.InterrupterMenu." + enemy.ChampionName + "." + interruptibleSpell.SpellSlot + ".Hp", new Slider("Sadece altindaysa {0} % benim HP", healthPercent));
                    InterrupterMenu.Add("MenuManager.InterrupterMenu." + enemy.ChampionName + "." + interruptibleSpell.SpellSlot + ".Enemies", new Slider("Sadece if {0} yada daha az dusman yakinsa", 5, 1, 5));
                    InterrupterMenu.Add("MenuManager.InterrupterMenu." + enemy.ChampionName + "." + interruptibleSpell.SpellSlot + ".Enabled", new CheckBox("Aktif"));

                    InterruptibleSpellsFound++;
                }
            }
        }