public static void Initialize(Menu menu)
        {
            _menu = menu.AddMenu("Passive", "Passive");
            _menu.AddInfo("CloneInfo", " --> Automatic movement of clone.", Color.Red);
            _menu.AddBool("CloneEnabled", "Control Clone");
            _menu.AddList("CloneMode", "Mode", new[] { "To Player", "To Target", "Away from Player" });
            _menu.AddBool("CloneOverride", "Manual Override");
            _menu.Item("CloneOverride").SetTooltip("If clone is manually moved stop automatically moving.");

            Obj_AI_Base.OnIssueOrder += Obj_AI_Base_OnIssueOrder;
            Game.OnUpdate += Game_OnGameUpdate;
            GameObject.OnCreate += GameObject_OnCreate;
            GameObject.OnDelete += GameObject_OnDelete;
        }
Example #2
0
        private static void Game_OnGameLoad(EventArgs args)
        {
            if (Player.ChampionName != "Fiora")
            {
                return;
            }

            Q = new Spell(SpellSlot.Q, 400 + 175);
            Q.SetSkillshot(.25f, 0, 500, false, SkillshotType.SkillshotLine);

            W = new Spell(SpellSlot.W, 750);
            W.SetSkillshot(0.5f, 95, 3000, false, SkillshotType.SkillshotLine);

            E = new Spell(SpellSlot.E);

            R = new Spell(SpellSlot.R, 500);
            R.SetTargetted(.066f, 500);

            Menu = new Menu("jesuisFiora", "jesuisFiora", true);
            Menu.SetFontStyle(FontStyle.Regular, LorahColor);
            Orbwalker = Menu.AddOrbwalker();

            Menu.AddTargetSelector();

            var spells = Menu.AddMenu("Spells", "Spells");

            var qMenu = spells.AddMenu("Q", "Q");
            qMenu.AddBool("QCombo", "Use in Combo");
            qMenu.AddBool("QHarass", "Use in Harass");
            qMenu.AddInfo("QFleeInfo", "Flee:", LorahColor);
            qMenu.AddKeyBind("QFlee", "Q Flee", 'T');
            qMenu.AddInfo("FleeInfo", " --> Flees towards cursor position.", LorahColor);
            qMenu.AddBool("QKillsteal", "Use for Killsteal");

            var wMenu = spells.AddMenu("W", "W");
            var wSpells = wMenu.AddMenu("BlockSpells", "Blocked Spells");
            wMenu.AddBool("WSpells", "W Incoming Spells");
            wMenu.AddBool("WKillsteal", "Use for Killsteal");
            wMenu.AddBool("WTurret", "Block W Under Enemy Turret");

            SpellBlock.Initialize(wSpells);

            var eMenu = spells.AddMenu("E", "E");
            eMenu.AddBool("ECombo", "Use in Combo");
            eMenu.AddBool("EHarass", "Use in Harass");

            var rMenu = spells.AddMenu("R", "R");
            rMenu.AddBool("RCombo", "Use R");
            rMenu.AddList("RMode", "Cast Mode", new[] { "Duelist", "Combo" });
            rMenu.AddKeyBind("RToggle", "Toggle Mode", 'L');

            rMenu.Item("RToggle").ValueChanged += (sender, eventArgs) =>
            {
                if (!eventArgs.GetNewValue<KeyBind>().Active)
                {
                    return;
                }
                var mode = Menu.Item("RMode");
                var index = mode.GetValue<StringList>().SelectedIndex == 0 ? 1 : 0;
                mode.SetValue(new StringList(new[] { "Duelist", "Combo" }, index));
            };

            rMenu.AddInfo("RModeInfo", " --> Duelist Mode: Only use R when target is killable.", LorahColor);
            rMenu.AddInfo("RModeInfo2", " --> Combo Mode: Use R in normal combo", LorahColor);
            rMenu.AddSlider("RKillVital", "Duelist Mode Min Vitals", 1, 0, 4);
            rMenu.AddInfo("RVitalInfo", " --> Note: This is only for damage calculation in Duelist Mode.", LorahColor);
            rMenu.AddBool("RComboSelected", "Use R Selected on Selected Unit Only");

            var items = spells.AddMenu("Items", "Items");
            items.AddBool("ItemsCombo", "Use in Combo");
            items.AddBool("ItemsHarass", "Use in Harass");

            spells.AddSlider("ManaHarass", "Harass Min Mana Percent", 40);

            var farm = Menu.AddMenu("Farm", "Farm");

            var qFarm = farm.AddMenu("Farm", "Q");
            qFarm.AddBool("QLastHit", "Q Last Hit (Only Killable)");
            qFarm.AddBool("QLaneClear", "Q LaneClear (All)");
            qFarm.AddBool("QFarmAA", "Only Q out of AA Range", false);
            qFarm.AddSlider("QFarmMana", "Q Min Mana Percent", 40);

            var eFarm = farm.AddMenu("E", "E");
            eFarm.AddBool("ELaneClear", "Use in LaneClear");

            farm.AddKeyBind("FarmEnabled", "Farm Enabled", 'J', KeyBindType.Toggle, true);
            farm.AddInfo("FarmInfo", " --> Enabled in LaneClear and LastHit", LorahColor);
            farm.AddBool("ItemsLaneClear", "Use Items in LaneClear");

            var draw = Menu.AddMenu("Drawing", "Drawing");
            draw.AddCircle("QDraw", "Draw Q", System.Drawing.Color.Purple, Q.Range);
            draw.AddCircle("WDraw", "Draw W", System.Drawing.Color.DeepPink, W.Range);
            draw.AddCircle("RDraw", "Draw R", System.Drawing.Color.White, R.Range);
            draw.AddBool("DuelistDraw", "Duelist Mode: Killable Target");
            draw.AddBool("FarmPermashow", "Permashow Farm Enabled");
            draw.AddBool("RPermashow", "Permashow R Mode");

            if (draw.Item("RPermashow").IsActive())
            {
                rMenu.Item("RMode").Permashow(true, null, LorahColor);
            }

            draw.Item("RPermashow").ValueChanged +=
                (sender, eventArgs) =>
                {
                    rMenu.Item("RMode").Permashow(eventArgs.GetNewValue<bool>(), null, LorahColor);
                };

            if (draw.Item("FarmPermashow").IsActive())
            {
                farm.Item("FarmEnabled").Permashow(true, null, LorahColor);
            }

            draw.Item("FarmPermashow").ValueChanged +=
                (sender, eventArgs) =>
                {
                    farm.Item("FarmEnabled").Permashow(eventArgs.GetNewValue<bool>(), null, LorahColor);
                };

            var dmg = draw.AddMenu("DamageIndicator", "Damage Indicator");
            dmg.AddBool("DmgEnabled", "Draw Damage Indicator");
            dmg.AddCircle("HPColor", "Predicted Health Color", System.Drawing.Color.White);
            dmg.AddCircle("FillColor", "Damage Color", System.Drawing.Color.HotPink);
            dmg.AddBool("Killable", "Killable Text");

            Menu.AddBool("Sounds", "Sounds");
            Menu.AddInfo("Info", "By Trees and lorah!", LorahColor);
            Menu.AddToMainMenu();

            if (Menu.Item("Sounds").IsActive())
            {
                new SoundObject(Resources.OnLoad).Play();
            }

            var ignite = ObjectManager.Player.Spellbook.GetSpell(ObjectManager.Player.GetSpellSlot("summonerdot"));

            if (ignite.Slot != SpellSlot.Unknown)
            {
                Ignite = new Spell(ignite.Slot, 600);
                //Ignite.SetTargetted();
            }

            DamageIndicator.DamageToUnit = GetComboDamage;

            Game.OnUpdate += Game_OnGameUpdate;
            Orbwalking.AfterAttack += AfterAttack;
            Obj_AI_Base.OnProcessSpellCast += Obj_AI_Hero_OnProcessSpellCast;
            Drawing.OnDraw += Drawing_OnDraw;
            Game.PrintChat(
                "<font color=\"{0}\">jesuisFiora Loaded!</font>", System.Drawing.Color.DeepPink.ToHexString());
        }
Example #3
0
        private static void Game_OnGameLoad(EventArgs args)
        {
            if (!Player.IsChampion("Fiora"))
            {
                return;
            }

            Bootstrap.Initialize();

            Menu = new Menu("jesuisFiora", "je suis Fiora", true);
            Menu.SetFontStyle(FontStyle.Regular, ScriptColor);

            Orbwalker = Menu.AddOrbwalker();

            var hr = Menu.SubMenu("Orbwalker").Item("HoldPosRadius").GetValue<Slider>();
            if (hr.Value < 60)
            {
                hr.Value = 60;
                Menu.SubMenu("Orbwalker").Item("HoldPosRadius").SetValue(hr);
            }

            var spells = Menu.AddMenu("Spells", "Spells");
            var passive = Menu.AddMenu("Passive", "Vital Settings");
            var wMenu = Menu.AddMenu("W", "W (SpellBlock)");

            var orbwalker = passive.AddMenu("Orbwalker", "Orbwalk Vital");

            orbwalker.AddKeyBind("OrbwalkPassive", "Orbwalk to Target Vital", 'N', KeyBindType.Toggle, true);
            orbwalker.Item("OrbwalkPassive").SetTooltip("Attempt to orbwalk to AA enemy vital.", ScriptColor);

            orbwalker.AddBool("OrbwalkCombo", "In Combo");
            orbwalker.Item("OrbwalkCombo").SetTooltip("Only orbwalk to vital in Combo mode.", ScriptColor);

            orbwalker.AddBool("OrbwalkHarass", "In Harass");
            orbwalker.Item("OrbwalkHarass").SetTooltip("Only orbwalk to vital in Harass mode.", ScriptColor);

            orbwalker.AddBool("OrbwalkPrepassive", "Orbwalk PreVital");
            orbwalker.Item("OrbwalkPrepassive")
                .SetTooltip("Orbwalk to a vital before it has been identified.", ScriptColor);

            orbwalker.AddBool("OrbwalkUltPassive", "Orbwalk Ultimate Vital");
            orbwalker.Item("OrbwalkUltPassive").SetTooltip("Orbwalk to ultimate vitals.", ScriptColor);

            orbwalker.AddBool("OrbwalkPassiveTimeout", "Orbwalk Near Timeout Vital");
            orbwalker.Item("OrbwalkPassiveTimeout")
                .SetTooltip("Orbwalk to  to vital as it is being timed out.", ScriptColor);

            orbwalker.AddBool("OrbwalkSelected", "Only Selected Target", true);
            orbwalker.Item("OrbwalkSelected")
                .SetTooltip("Target must be manually left clicked to orbwalk to vitals.", ScriptColor);

            orbwalker.AddBool("OrbwalkTurret", "Block Under Turret", false);
            orbwalker.Item("OrbwalkTurret").SetTooltip("In order to avoid walking under turrets.", ScriptColor);

            orbwalker.AddBool("OrbwalkQ", "Only if Q Down", false);
            orbwalker.Item("OrbwalkQ").SetTooltip("To avoid orbwalking to a vital that will be Q'ed to.", ScriptColor);

            orbwalker.AddBool("OrbwalkAARange", "Only in AA Range", false);
            orbwalker.Item("OrbwalkAARange").SetTooltip("Only orbwalk to vital if it is in AA range.", ScriptColor);

            orbwalker.AddBool("OrbwalkAA", "Only if not able to AA", false);
            orbwalker.Item("OrbwalkAA")
                .SetTooltip("Only orbwalk to vital if not able to AA, in order to avoid loss of dps.", ScriptColor);

            var qVital = passive.AddMenu("QVital", "Q Vital");
            qVital.AddBool("QPassive", "Only Q to Vitals", true);
            qVital.Item("QPassive").SetTooltip("Attempt to only Q to Fiora's vital passive.", ScriptColor);

            qVital.AddBool("QUltPassive", "Q to Ultimate Vital");
            qVital.Item("QUltPassive").SetTooltip("Q to ultimate vital passive.", ScriptColor);

            qVital.AddBool("QPrepassive", "Q to PreVital", false);
            qVital.Item("QPrepassive")
                .SetTooltip("Attempt to Q to vital before it has been identified. May not proc vital.", ScriptColor);

            qVital.AddBool("QPassiveTimeout", "Q to Near Timeout Vital");
            qVital.Item("QPassiveTimeout")
                .SetTooltip("Q to vital as it is being timed out. May not proc vital.", ScriptColor);

            qVital.AddBool("QInVitalBlock", "Block Q inside Vital Polygon");
            qVital.Item("QInVitalBlock").SetTooltip("Block Q if player is inside of enemy vital polygon.", ScriptColor);

            passive.AddBool("DrawCenter", "Draw Vital Center");
            passive.Item("DrawCenter").SetTooltip("Draw the center of vital polygon. No FPS drops.", ScriptColor);

            passive.AddBool("DrawPolygon", "Draw Vital Polygon", false);
            passive.Item("DrawPolygon").SetTooltip("Draw the vital polygon. Possibly causes FPS drops.", ScriptColor);

            passive.AddSlider("SectorMaxRadius", "Vital Polygon Range", 310, 300, 400);
            passive.Item("SectorMaxRadius")
                .SetTooltip("The max range of vital polygon. Draw polygon to understand what this is.", ScriptColor);

            passive.AddSlider("SectorAngle", "Vital Polygon Angle", 70, 60, 90);
            passive.Item("SectorAngle")
                .SetTooltip("The angle of vital polygon. Draw polygon to understand what this is.", ScriptColor);

            var qMenu = spells.AddMenu("Q", "Q");
            qMenu.AddBool("QCombo", "Use in Combo");
            qMenu.AddBool("QHarass", "Use in Harass");
            qMenu.AddSlider("QRangeDecrease", "Decrease Q Range", 10, 0, 150);
            Q.Range = 750 - qMenu.Item("QRangeDecrease").GetValue<Slider>().Value;
            qMenu.Item("QRangeDecrease").ValueChanged += (sender, eventArgs) =>
            {
                Q.Range = 750 - eventArgs.GetNewValue<Slider>().Value;
                var qDraw = Menu.Item("QDraw");
                if (qDraw == null)
                {
                    return;
                }
                var qCircle = qDraw.GetValue<Circle>();
                qDraw.SetValue(new Circle(qCircle.Active, qCircle.Color, Q.Range));
            };

            qMenu.AddBool("QBlockTurret", "Block Q Under Turret", false);
            qMenu.Item("QBlockTurret").SetTooltip("Don't Q under turret in combo/harass.", ScriptColor);

            qMenu.AddKeyBind("QFlee", "Q Flee", 'T');
            qMenu.Item("QFlee").SetTooltip("Flees towards cursor position.", ScriptColor);
            //qMenu.AddInfo("FleeInfo", " --> Flees towards cursor position.", ScriptColor);

            qMenu.AddBool("QKillsteal", "Use for Killsteal");

            var wSpells = wMenu.AddMenu("BlockSpells", "Blocked Spells");
            wMenu.AddKeyBind("WSpells", "Enabled", 'U', KeyBindType.Toggle, true);

            wMenu.AddList("WMode", "W Spellblock to: ", new[] { "Spell Caster", "Target" });
            wMenu.Item("WMode").SetTooltip("TR", ScriptColor);
            wMenu.AddBool("WKillsteal", "Use for Killsteal");
            wMenu.AddBool("WTurret", "Block W Under Enemy Turret", false);

            SpellBlock.Initialize(wSpells);
            Dispeller.Initialize(wSpells);

            var eMenu = spells.AddMenu("E", "E");
            eMenu.AddBool("ECombo", "Use in Combo");
            eMenu.AddBool("EHarass", "Use in Harass");

            var rMenu = spells.AddMenu("R", "R");

            var duelistMenu = rMenu.AddMenu("Duelist Champion", "Duelist Mode Champions");
            foreach (var enemy in Enemies)
            {
                duelistMenu.AddBool("Duelist" + enemy.ChampionName, "Use on " + enemy.ChampionName);
            }

            rMenu.AddBool("RCombo", "Use R");

            rMenu.AddList("RMode", "Cast Mode", new[] { "Duelist", "Combo" });
            rMenu.Item("RMode")
                .SetTooltip("Duelist: Only cast when killable. Combo: Cast during normal combo.", ScriptColor);

            rMenu.AddKeyBind("RToggle", "Toggle Mode", 'L');
            rMenu.Item("RToggle").SetTooltip("Toggles cast mode between Duelist and Combo.", ScriptColor);

            rMenu.Item("RToggle").ValueChanged += (sender, eventArgs) =>
            {
                if (!eventArgs.GetNewValue<KeyBind>().Active)
                {
                    return;
                }
                var mode = Menu.Item("RMode");
                var index = mode.GetValue<StringList>().SelectedIndex == 0 ? 1 : 0;
                mode.SetValue(new StringList(new[] { "Duelist", "Combo" }, index));
            };

            rMenu.AddSlider("RKillVital", "Duelist Mode Min Vitals", 2, 0, 4);
            rMenu.Item("RKillVital").SetTooltip("Used for damage calculation in Duelist Mode", ScriptColor);

            rMenu.AddBool("RComboSelected", "Use R Selected on Selected Unit Only");
            rMenu.Item("RComboSelected")
                .SetTooltip("Only cast R when enemy has been left clicked or selected.", ScriptColor);

            var items = spells.AddMenu("Items", "Items");
            items.AddBool("ItemsCombo", "Use in Combo");
            items.AddBool("ItemsHarass", "Use in Harass");

            spells.AddSlider("ManaHarass", "Harass Min Mana Percent", 40);

            var farm = Menu.AddMenu("Farm", "Farm");

            var qFarm = farm.AddMenu("Farm", "Q");
            qFarm.AddBool("QFarm", "Use Q in Farm");
            qFarm.AddBool("QLastHit", "Q Last Hit (Only Killable)", false);
            qFarm.AddBool("QFarmAA", "Only Q out of AA Range", false);
            qFarm.AddSlider("QFarmMana", "Q Min Mana Percent", 40);

            var eFarm = farm.AddMenu("E", "E");
            eFarm.AddBool("ELaneClear", "Use in LaneClear");

            farm.AddKeyBind("FarmEnabled", "Farm Enabled", 'J', KeyBindType.Toggle);
            farm.Item("FarmEnabled").SetTooltip("Enabled in LastHit and LaneClear mode.", ScriptColor);

            farm.AddBool("ItemsLaneClear", "Use Items in LaneClear");

            var draw = Menu.AddMenu("Drawing", "Drawing");

            draw.AddCircle(
                "QVitalDraw", "Draw Q Vital Range", System.Drawing.Color.Purple, SpellManager.QSkillshotRange, false);
            draw.Item("QVitalDraw")
                .SetTooltip(
                    "Must be in this range to hit vital. If force vital enabled, then it can only cast Q to target in this range.",
                    ScriptColor);

            draw.AddCircle("QDraw", "Draw Q Max Range", System.Drawing.Color.Purple, Q.Range, false);
            draw.Item("QDraw").SetTooltip("The max range that Q can be cast and hit the target.", ScriptColor);

            draw.AddCircle("1Draw", "Draw W", System.Drawing.Color.DeepPink, W.Range, false);
            draw.AddCircle("3Draw", "Draw R", System.Drawing.Color.White, R.Range, false);
            draw.AddBool("DuelistDraw", "Duelist Mode: Killable Target");
            draw.AddBool("WPermashow", "Permashow W Spellblock");
            draw.AddBool("RPermashow", "Permashow R Mode");
            draw.AddBool("FarmPermashow", "Permashow Farm Enabled");
            draw.AddBool("OrbwalkPermashow", "Permashow Orbwalk Vital");

            if (draw.Item("WPermashow").IsActive())
            {
                wMenu.Item("WSpells").Permashow(true, "W SpellBlock", ScriptColor);
            }

            draw.Item("WPermashow").ValueChanged +=
                (sender, eventArgs) =>
                {
                    wMenu.Item("WSpells").Permashow(eventArgs.GetNewValue<bool>(), "W SpellBlock", ScriptColor);
                };

            if (draw.Item("RPermashow").IsActive())
            {
                rMenu.Item("RMode").Permashow(true, null, ScriptColor);
            }

            draw.Item("RPermashow").ValueChanged +=
                (sender, eventArgs) =>
                {
                    rMenu.Item("RMode").Permashow(eventArgs.GetNewValue<bool>(), null, ScriptColor);
                };

            if (draw.Item("FarmPermashow").IsActive())
            {
                farm.Item("FarmEnabled").Permashow(true, null, ScriptColor);
            }

            draw.Item("FarmPermashow").ValueChanged +=
                (sender, eventArgs) =>
                {
                    farm.Item("FarmEnabled").Permashow(eventArgs.GetNewValue<bool>(), null, ScriptColor);
                };

            if (draw.Item("OrbwalkPermashow").IsActive())
            {
                orbwalker.Item("OrbwalkPassive").Permashow(true, null, ScriptColor);
            }

            draw.Item("OrbwalkPermashow").ValueChanged +=
                (sender, eventArgs) =>
                {
                    orbwalker.Item("OrbwalkPassive").Permashow(eventArgs.GetNewValue<bool>(), null, ScriptColor);
                };

            var dmg = draw.AddMenu("DamageIndicator", "Damage Indicator");
            dmg.AddBool("DmgEnabled", "Draw Damage Indicator");
            dmg.AddCircle("HPColor", "Predicted Health Color", System.Drawing.Color.White);
            dmg.AddCircle("FillColor", "Damage Color", System.Drawing.Color.HotPink);
            dmg.AddBool("Killable", "Killable Text");

            var misc = Menu.AddMenu("Misc", "Misc");

            /*ManaManager.Initialize(misc);
            Q.SetManaCondition(ManaManager.ManaMode.Combo, 5);
            Q.SetManaCondition(ManaManager.ManaMode.Harass, 5);
            Q.SetManaCondition(ManaManager.ManaMode.Farm, 30);
            E.SetManaCondition(ManaManager.ManaMode.Combo, 15);
            E.SetManaCondition(ManaManager.ManaMode.Harass, 15);
            E.SetManaCondition(ManaManager.ManaMode.Farm, 40);
            R.SetManaCondition(ManaManager.ManaMode.Combo, 10);
            */

            misc.AddList("TargetSelector", "Target Selector: ", new[] { "Normal", "Locked" });
            misc.Item("TargetSelector").SetTooltip("Locked TS attempts to stick to the same target.", ScriptColor);
            misc.AddInfo("TSInfo", "Locked TS attempts to lock to the same target.", ScriptColor);
            misc.AddBool("Sounds", "Sounds");

            Menu.AddInfo("Info", "By Trees and Lilith!", ScriptColor);
            Menu.AddToMainMenu();

            if (Menu.Item("Sounds").IsActive())
            {
                new SoundObject(Resources.OnLoad).Play();
            }

            DamageIndicator.DamageToUnit = GetComboDamage;
            PassiveManager.Initialize();

            Game.OnUpdate += Game_OnGameUpdate;
            Orbwalking.BeforeAttack += BeforeAttack;
            Orbwalking.AfterAttack += AfterAttack;
            Obj_AI_Base.OnProcessSpellCast += Obj_AI_Hero_OnProcessSpellCast;
            Drawing.OnDraw += Drawing_OnDraw;
            Game.PrintChat(
                "<font color=\"{0}\">jesuisFiora Loaded!</font>", System.Drawing.Color.DeepPink.ToHexString());
        }
Example #4
0
        public Lulu()
        {
            Q = SpellManager.Q;
            W = SpellManager.W;
            E = SpellManager.E;
            R = SpellManager.R;

            Menu = new Menu("Lulu", "Lulu", true);
            Menu.SetFontStyle(FontStyle.Regular, Color.MediumPurple);
            Orbwalker = Menu.AddOrbwalker();

            var combo = Menu.AddMenu("Spells", "Spells");
            combo.SetFontStyle(FontStyle.Regular, System.Drawing.Color.DeepSkyBlue.ToSharpDXColor());

            var q = combo.AddMenu("Q", "Q");
            q.AddBool("QCombo", "Use in Combo");
            q.AddBool("QHarass", "Use in Harass");
            q.AddInfo("QMisc2", "-- Misc --", Color.DeepSkyBlue);
            q.AddBool("QPix", "Use Pix Q", false);
            q.Item("QPix").SetTooltip("Use Pix to Cast Q");
            q.AddBool("EQPix", "Use Extended Q (E->Q)");
            q.Item("EQPix").SetTooltip("Use E to cast Pix Q");
            q.AddBool("QGapcloser", "Use Q on Gapcloser");
            q.AddBool("QImpaired", "Auto Q Movement Impaired", false);
            q.AddInfo("QMisc1", "-- Farm --", Color.Red);
            q.AddBool("QFarm", "Use Q to Farm");
            q.AddBool("QLC", "Use in LaneClear");
            q.AddBool("QLH", "Use in LastHit", false);


            var w = combo.AddMenu("W", "W");

            var wEnemies = w.AddMenu("WEnemies", "Enemy Priority");
            foreach (var enemy in Enemies)
            {
                wEnemies.AddSlider(enemy.ChampionName + "WPriority", enemy.ChampionName, 1, 0, 5);
            }

            wEnemies.AddInfo("WEnemiesInfo", "0 means don't cast, 5 is highest priority", Color.DeepSkyBlue);
            wEnemies.AddBool("WPriority", "Priority Enabled", false);

            w.AddBool("WCombo", "Use on Enemy in Combo");
            w.AddBool("WHarass", "Use on Enemy in Harass");
            w.AddBool("WGapcloser", "Use W on Gapcloser");
            w.AddBool("WInterrupter", "Use W to Interrupt");

            var e = combo.AddMenu("E", "E");

            var eAllies = e.AddMenu("EAllies", "Ally Shielding");
            foreach (var ally in Allies)
            {
                eAllies.AddSlider(ally.ChampionName + "EPriority", ally.ChampionName + " Min Health", 20);
            }

            eAllies.AddInfo("EAlliesInfo", "Set to 0 to never shield ally.", Color.DeepSkyBlue);
            eAllies.AddBool("EAuto", "Use E on Allies");

            e.AddBool("ECombo", "Use on Enemy in Combo");
            e.AddBool("EHarass", "Use on Enemy in Harass");

            var r = combo.AddMenu("R", "R");

            var saver = r.AddMenu("Saver", "Saver");
            foreach (var ally in Allies)
            {
                saver.AddSlider(ally.ChampionName + "RPriority", ally.ChampionName + " Min Health", 15);
            }

            saver.AddInfo("RAlliesInfo", "Set to 0 to never ult ally.", Color.DeepSkyBlue);
            saver.AddBool("RAuto", "Use R on Allies");

            r.AddKeyBind("RForce", "Force Ult Ally", 'K');
            r.Item("RForce").SetTooltip("Casts R on the lowest HP ally in R range");
            r.AddBool("RInterrupter", "Use R on Interrupt");

            r.AddBool("RKnockup", "Auto R to Knockup");
            r.AddSlider("RKnockupEnemies", "Min Enemes to Knockup", 2, 1, 5);

            var ks = Menu.AddMenu("Killsteal", "Killsteal");
            ks.SetFontStyle(FontStyle.Regular, Color.Red);
            ks.AddBool("KSEnabled", "Enabled");
            ks.AddBool("KSQ", "Use Q");
            ks.AddBool("KSE", "Use E");
            ks.AddBool("KSEQ", "Use E->Q");

            ManaManager.Initialize(Menu);
            Q.SetManaCondition(ManaManager.ManaMode.Combo, 5);
            Q.SetManaCondition(ManaManager.ManaMode.Harass, 5);
            Q.SetManaCondition(ManaManager.ManaMode.Farm, 30);
            W.SetManaCondition(ManaManager.ManaMode.Combo, 15);
            W.SetManaCondition(ManaManager.ManaMode.Harass, 15);
            E.SetManaCondition(ManaManager.ManaMode.Combo, 10);
            E.SetManaCondition(ManaManager.ManaMode.Harass, 10);

            var flee = Menu.AddMenu("Flee", "Flee");
            flee.SetFontStyle(FontStyle.Regular, Color.Yellow);
            flee.AddInfo("FleeInfo", " --> Flees towards cursor position.", Color.Yellow);
            flee.AddKeyBind("Flee", "Flee", 'T');
            flee.AddBool("FleeW", "Use W");
            flee.AddBool("FleeMove", "Move to Cursor Position");

            var draw = Menu.AddMenu("Drawings", "Drawings");
            draw.SetFontStyle(FontStyle.Regular, Color.DeepPink);

            draw.AddCircle("DrawQ", "Draw Q", System.Drawing.Color.Purple, Q.Range);
            draw.AddCircle("DrawW", "Draw W/E", System.Drawing.Color.Purple, W.Range);
            draw.AddCircle("DrawR", "Draw R", System.Drawing.Color.Purple, R.Range);
            draw.AddBool("DrawPix", "Draw Pix");

            var misc = Menu.AddMenu("Misc", "Misc");
            misc.SetFontStyle(FontStyle.Regular, Color.MediumPurple);

            CustomAntiGapcloser.Initialize(misc);
            CustomInterrupter.Initialize(misc);

            var superman = misc.AddMenu("Superman", "Speedy Up!");
            superman.SetFontStyle(FontStyle.Regular, Color.Red);
            superman.AddInfo("SupermanInfo", " --> Casts W+E on prioritized ally.", Color.Red);
            foreach (var ally in Allies.Where(a => !a.IsMe))
            {
                superman.AddSlider(ally.ChampionName + "WEPriority", ally.ChampionName + " Priority", 1, 0, 5);
            }

            superman.AddInfo("SupermanInfo2", "Set to 0 to never speedy up ally.", Color.Red);
            superman.AddKeyBind("Superman", "Use Speedy Up!", 'A');

            misc.AddBool("Support", "Support Mode", false);
            misc.AddBool("Sounds", "Sounds");

            if (misc.Item("Sounds").IsActive())
            {
                new SoundObject(Resources.Load).Play();
            }

            Menu.AddInfo("Info", "By Trees and Lilith!", Color.MediumPurple);
            Menu.AddToMainMenu();

            var manaCost = new Dictionary<SpellSlot, int[]>
            {
                { SpellSlot.Q, new[] { 0, 60, 65, 70, 75, 80 } },
                { SpellSlot.W, new[] { 0, 65, 65, 65, 65, 65 } },
                { SpellSlot.E, new[] { 0, 60, 70, 80, 90, 100 } },
                { SpellSlot.R, new[] { 0, 0, 0, 0, 0, 0 } }
            };

            var dmg = draw.AddMenu("DamageIndicator", "Damage Indicator");
            dmg.AddBool("DmgEnabled", "Draw Damage Indicator");
            dmg.AddCircle("HPColor", "Predicted Health Color", System.Drawing.Color.White);
            dmg.AddCircle("FillColor", "Damage Color", System.Drawing.Color.MediumPurple);
            dmg.AddBool("Killable", "Killable Text");
            DamageIndicator.Initialize(dmg, Utility.GetComboDamage);

            ManaBarIndicator.Initialize(draw, manaCost);
            Pix.Initialize(Menu.Item("DrawPix"));
            SpellManager.Initialize(combo, Orbwalker);

            CustomAntiGapcloser.OnEnemyGapcloser += CustomAntiGapcloser_OnEnemyGapcloser;
            CustomInterrupter.OnInterruptableTarget += CustomInterrupter_OnInterruptableTarget;
        }
Example #5
0
        private static void Game_OnGameLoad(EventArgs args)
        {
            if (!Player.IsChampion("Kindred"))
            {
                return;
            }

            Menu = new Menu("KindredSpirits", "KindredSpirits", true);
            Menu.SetFontStyle(FontStyle.Regular, ScriptColor);

            Orbwalker = Menu.AddOrbwalker();
            Menu.AddTargetSelector();

            var spells = Menu.AddMenu("Spells", "Spells");

            var qMenu = spells.AddMenu("Q", "Q");
            qMenu.AddBool("QCombo", "Use in Combo");
            qMenu.AddBool("QHarass", "Use in Harass");
            qMenu.AddBool("QSafety", "Q Safety Check");
            qMenu.AddBool("QKiteMachine", "Q KiteMachine");
            qMenu.AddInfo("KiteInfo", " --> Q's towards cursor position if enemy will be hit.", ScriptColor);
            qMenu.AddKeyBind("QFlee", "Q Flee", 'T');
            qMenu.AddInfo("FleeInfo", " --> Flees towards cursor position.", ScriptColor);
            qMenu.AddBool("QGapClose", "AntiGapclose with Q");
            qMenu.AddBool("QKillsteal", "Use for Killsteal");

            var wMenu = spells.AddMenu("W", "W");
            wMenu.AddBool("WCombo", "Use in Combo");
            wMenu.AddBool("WHarass", "Use in Harass");

            var eMenu = spells.AddMenu("E", "E");
            eMenu.AddBool("ECombo", "Use in Combo");
            eMenu.AddBool("EHarass", "Use in Harass");
            eMenu.AddBool("EBeforeAttack", "Only Use E Before Attack", false);
            eMenu.AddInfo("BeforeAttackInfo", " --> When enemy is close to leaving AA range.", ScriptColor);
            eMenu.AddBool("ESelectedTarget", "Only E Selected Target", false);

            var rMenu = spells.AddMenu("R", "R");

            var savingMenu = rMenu.AddMenu("SavingMode", "Saving Spirits Settings");
            var allyMenu = savingMenu.AddMenu("RAlly", "Allied Champions");

            foreach (var ally in Allies.Where(a => !a.IsMe))
            {
                allyMenu.AddBool("R" + ally.ChampionName, "Use on " + ally.ChampionName);
                allyMenu.AddSlider("RHP" + ally.ChampionName, "Health Percent", 15);
            }

            savingMenu.AddSlider("SavingAllies", "Minimum Allies In Range", 2, 0, 5);
            savingMenu.AddSlider("SavingEnemies", "Maximum Enemies In Range", 2, 0, 5);

            rMenu.AddBool("RCombo", "Use R");
            rMenu.AddSlider("RSelf", "Self Health Percent", 15);

            var items = spells.AddMenu("Items", "Items");
            items.AddBool("ItemsCombo", "Use in Combo");
            items.AddBool("ItemsHarass", "Use in Harass");

            spells.AddBool("IgniteKillsteal", "Ignite Killsteal");
            spells.AddBool("SmiteKillsteal", "Smite Killsteal");
            spells.AddSlider("ManaHarass", "Harass Min Mana Percent", 40);

            var farm = Menu.AddMenu("Farm", "Farm");
            farm.AddBool("QLaneClear", "Q LaneClear");
            farm.AddBool("QJungleClear", "Q Jungle Clear");
            farm.AddSlider("QFarmMana", "Q Min Mana Percent", 40);
            farm.AddBool("WLaneClear", "Farm with W");
            farm.AddBool("EJungleClear", "E Jungle Clear");

            farm.AddKeyBind("FarmEnabled", "Farm Enabled", 'J', KeyBindType.Toggle, true);
            farm.AddInfo("FarmInfo", " --> Enabled in LaneClear and LastHit", ScriptColor);
            farm.AddBool("ItemsLaneClear", "Use Items in LaneClear");

            var draw = Menu.AddMenu("Drawing", "Drawing");
            draw.AddCircle("0Draw", "Draw Q", System.Drawing.Color.Purple, SpellManager.Q.Range);
            draw.AddCircle("1Draw", "Draw W", System.Drawing.Color.DeepPink, SpellManager.W.Range);
            draw.AddCircle("2Draw", "Draw E", System.Drawing.Color.Blue, SpellManager.E.Range);
            draw.AddCircle("3Draw", "Draw R", System.Drawing.Color.White, SpellManager.R.Range);
            draw.AddBool("FarmPermashow", "Permashow Farm Enabled");

            if (draw.Item("FarmPermashow").IsActive())
            {
                farm.Item("FarmEnabled").Permashow(true, null, ScriptColor);
            }

            draw.Item("FarmPermashow").ValueChanged +=
                (sender, eventArgs) =>
                {
                    farm.Item("FarmEnabled").Permashow(eventArgs.GetNewValue<bool>(), null, ScriptColor);
                };

            var dmg = draw.AddMenu("DamageIndicator", "Damage Indicator");
            dmg.AddBool("DmgEnabled", "Draw Damage Indicator");
            dmg.AddCircle("HPColor", "Predicted Health Color", System.Drawing.Color.White);
            dmg.AddCircle("FillColor", "Damage Color", System.Drawing.Color.Blue);
            dmg.AddBool("Killable", "Killable Text");

            PassiveManager.Initialize();

            //Menu.AddBool("Sounds", "Sounds");
            Menu.AddInfo("Info", "By Trees and Lilith!", ScriptColor);
            Menu.AddToMainMenu();

            /*if (Menu.Item("Sounds").IsActive())
            {
                new SoundObject(Resources.OnLoad).Play();
            }*/

            DamageIndicator.DamageToUnit = GetComboDamage;
            UltimateManager.Initialize();

            Game.OnUpdate += Game_OnGameUpdate;
            Orbwalking.BeforeAttack += BeforeAttack;
            Orbwalking.AfterAttack += AfterAttack;
            AntiGapcloser.OnEnemyGapcloser += AntiGapcloser_OnEnemyGapcloser;
            Drawing.OnDraw += Drawing_OnDraw;
            Game.PrintChat(
                "<font color=\"{0}\">Kindred Spirits Loaded!</font>", System.Drawing.Color.Blue.ToHexString());
        }
        public Katarina()
        {
            Q = SpellManager.Q;
            W = SpellManager.W;
            E = SpellManager.E;
            R = SpellManager.R;

            Menu = new Menu("Staberina", "Staberina", true);
            Menu.SetFontStyle(FontStyle.Regular, ScriptColor);

            Orbwalker = Menu.AddOrbwalker();

            var spells = Menu.AddMenu("Spells", "Spells");

            var qMenu = spells.AddMenu("Q", "Q");
            qMenu.AddBool("QCombo", "Use in Combo");
            qMenu.AddBool("QHarass", "Use in Harass");

            var wMenu = spells.AddMenu("W", "W");
            wMenu.AddBool("WCombo", "Use in Combo");
            wMenu.AddBool("WHarass", "Use in Harass");
            wMenu.AddBool("WAuto", "Auto W", false);

            var eMenu = spells.AddMenu("E", "E");
            eMenu.AddBool("ECombo", "Use in Combo");
            eMenu.AddBool("EHarass", "Use in Harass");
            eMenu.AddSlider("EEnemies", "Max Enemies", 5, 1, 5);
            eMenu.Item("EEnemies").SetTooltip("Maximum enemies to E into in Combo.");

            var rMenu = spells.AddMenu("R", "R");

            rMenu.AddBool("RCombo", "Smart R");
            rMenu.Item("RCombo").SetTooltip("Use R in Combo when killable enemy is around");
            rMenu.AddSlider("RUltTicks", "Smart R Ticks", 7, 1, 10);
            rMenu.Item("RUltTicks").SetTooltip("For damage calculation. One tick is 250 ms of channeling.");

            rMenu.AddSlider("RRangeDecrease", "Decrease Range", 30);
            rMenu.Item("RRangeDecrease").ValueChanged += (sender, args) =>
            {
                R.Range = RRange - args.GetNewValue<Slider>().Value;
                var rDraw = Menu.Item("3Draw");
                if (rDraw == null)
                {
                    return;
                }
                var rCircle = rDraw.GetValue<Circle>();
                rDraw.SetValue(new Circle(rCircle.Active, rCircle.Color, R.Range));
            };
            R.Range = RRange - rMenu.Item("RRangeDecrease").GetValue<Slider>().Value;

            rMenu.AddBool("RInCombo", "Always R in Combo", false);
            rMenu.AddBool("RMovement", "Disable Movement while casting R");
            rMenu.AddBool("REvade", "Disable Evade while casting R");
            rMenu.AddBool("RCancelNoEnemies", "Cancel R if no enemies", false);
            rMenu.AddKeyBind("RCancelUlt", "Cancel R Key", 'J');

            var ks = Menu.AddMenu("Killsteal", "Killsteal");
            ks.AddBool("KSEnabled", "Use Smart KS");

            ks.AddInfo("KSInfo", "-- Spells --", ScriptColor);
            ks.AddBool("KSQ", "Use Q");
            ks.AddBool("KSW", "Use W");
            ks.AddBool("KSE", "Use E");
            ks.AddBool("KSR", "Use Smart R");
            ks.Item("KSR").SetTooltip("Uses ultimate tick amount from Spells > R.");

            ks.AddInfo("KSInfo2", "-- Misc --", ScriptColor);
            ks.AddBool("KSRCancel", "Cancel R to KS");
            ks.Item("KSRCancel").SetTooltip("Cancel ultimate channel to KS with other spells.");
            ks.AddSlider("KSEnemies", "Max Enemies", 5, 1, 5);
            ks.Item("KSEnemies").SetTooltip("Maximum enemies to E in to KS.");
            ks.AddSlider("KSHealth", "Min Health", 10);
            ks.Item("KSHealth").SetTooltip("Minimum health to E in to KS.");
            ks.AddBool("KSGapclose", "Gapclose with E", false);
            ks.Item("KSGapclose").SetTooltip("Cast E to units in range of killable target.");
            ks.AddBool("KSWardJump", "Ward Jump", false);
            ks.Item("KSWardJump").SetTooltip("Ward jump with e to killable target.");
            ks.AddBool("KSTurret", "Block E Under Turret");
            ks.Item("KSTurret").SetTooltip("Don't attempt to KS units (with E) under turret.");

            var farm = Menu.AddMenu("Farm", "Farm");

            var qFarm = farm.AddMenu("FarmQ", "Q");
            qFarm.AddBool("QFarm", "Use in Farm");
            qFarm.AddBool("QLastHit", "Only Last Hit (Only Killable)");

            var wFarm = farm.AddMenu("FarmW", "W");
            wFarm.AddBool("WFarm", "Use in Farm");
            wFarm.AddSlider("WMinionsHit", "Min Minions Killed", 2, 1, 4);

            var eFarm = farm.AddMenu("FarmE", "E");
            eFarm.AddBool("EFarm", "Use E->W in Farm", false);
            eFarm.AddSlider("EMinionsHit", "Min Minions Killed", 3, 1, 4);

            farm.AddKeyBind("FarmEnabled", "Farm Enabled", 'J', KeyBindType.Toggle, true);
            farm.Item("FarmEnabled").SetTooltip("Enabled in LastHit and LaneClear mode.", ScriptColor);

            var flee = Menu.AddMenu("Flee", "Flee");
            flee.AddKeyBind("FleeEnabled", "Flee Enabled", 'T');
            flee.AddBool("FleeE", "Use E");
            flee.AddBool("FleeWard", "Use Wards to Flee");

            var draw = Menu.AddMenu("Drawing", "Drawing");
            draw.AddCircle("0Draw", "Draw Q", Color.Purple, Q.Range);
            draw.AddCircle("1Draw", "Draw W", Color.DeepPink, W.Range);
            draw.AddCircle("2Draw", "Draw E", Color.DeepPink, E.Range);
            draw.AddCircle("3Draw", "Draw R", Color.White, R.Range);
            draw.AddBool("ComboKillablePermashow", "Permashow Combo Killable");
            draw.AddBool("FarmPermashow", "Permashow Farm Enabled");

            draw.Item("FarmPermashow").ValueChanged +=
                (sender, eventArgs) =>
                {
                    farm.Item("FarmEnabled").Permashow(eventArgs.GetNewValue<bool>(), null, ScriptColor);
                };

            if (draw.Item("FarmPermashow").IsActive())
            {
                farm.Item("FarmEnabled").Permashow(true, null, ScriptColor);
            }

            var dmg = draw.AddMenu("DamageIndicator", "Damage Indicator");
            dmg.AddBool("DmgEnabled", "Draw Damage Indicator");
            dmg.AddCircle("HPColor", "Predicted Health Color", Color.White);
            dmg.AddCircle("FillColor", "Damage Color", Color.HotPink);
            dmg.AddBool("Killable", "Killable Text");
            DamageIndicator.Initialize(dmg, Utility.GetComboDamage);

            Menu.AddInfo("MenuInfo", "-- Misc --", ScriptColor);
            Menu.AddList("ComboMode", "Combo Mode", new[] { "E->Q->W", "Q->E->W" });

            Menu.AddKeyBind("ComboKillable", "Only Combo Killable", 'K', KeyBindType.Toggle);

            draw.Item("ComboKillablePermashow").ValueChanged +=
                (sender, eventArgs) =>
                {
                    Menu.Item("ComboKillable").Permashow(eventArgs.GetNewValue<bool>(), null, ScriptColor);
                };

            if (draw.Item("ComboKillablePermashow").IsActive())
            {
                Menu.Item("ComboKillable").Permashow(true, null, ScriptColor);
            }

            Menu.AddBool("Sounds", "Sounds");
            if (Menu.Item("Sounds").IsActive())
            {
                new SoundObject(Resources.Load).Play();
            }

            Menu.AddInfo("Info", "By Trees and Lilith", ScriptColor);

            SpellManager.Initialize(Menu, Orbwalker);

            Obj_AI_Base.OnIssueOrder += Obj_AI_Base_OnIssueOrder;
            Menu.AddToMainMenu();
        }
Example #7
0
        public LeBlanc()
        {
            Q = SpellManager.Q;
            W = SpellManager.W;
            E = SpellManager.E;
            R = SpellManager.R;

            Menu = new Menu("PopBlanc", "PopBlanc", true);

            Orbwalker = Menu.AddOrbwalker();

            var spells = Menu.AddMenu("Spells", "Spells");

            var q = spells.AddSpell(
                SpellSlot.Q,
                new List<Orbwalking.OrbwalkingMode>
                {
                    Orbwalking.OrbwalkingMode.Combo,
                    Orbwalking.OrbwalkingMode.Mixed,
                    Orbwalking.OrbwalkingMode.LastHit,
                    Orbwalking.OrbwalkingMode.LaneClear
                });
            q.AddSlider("FarmQMana", "Farm Minimum Mana", 40);

            var w = spells.AddSpell(
                SpellSlot.W,
                new List<Orbwalking.OrbwalkingMode>
                {
                    Orbwalking.OrbwalkingMode.Combo,
                    Orbwalking.OrbwalkingMode.Mixed,
                    Orbwalking.OrbwalkingMode.LaneClear
                });
            w.AddSlider("FarmWMinions", "Farm Minimum Minions", 3, 1, 5);
            w.AddBool("WBackHarass", "Harass W Back");
            w.Item("WBackHarass").SetTooltip("Cast second W after harassing.");
            w.AddBool("WBackFarm", "Farm W Back");
            w.Item("WBackFarm").SetTooltip("Cast second W after farming.");
            w.AddBool("WBackClick", "Left Click W Back", false);
            w.Item("WBackClick").SetTooltip("Cast second W after left clicking.");

            var e = spells.AddSpell(
                SpellSlot.E,
                new List<Orbwalking.OrbwalkingMode> { Orbwalking.OrbwalkingMode.Combo, Orbwalking.OrbwalkingMode.Mixed });

            e.AddSlider("ERangeDecrease", "Decrease Range", 0, 0, 100);
            e.Item("ERangeDecrease").ValueChanged += (sender, args) =>
            {
                E.Range = ERange - args.GetNewValue<Slider>().Value;
                var eDraw = Menu.Item("Draw2");
                if (eDraw == null)
                {
                    return;
                }
                var eCircle = eDraw.GetValue<Circle>();
                eDraw.SetValue(new Circle(eCircle.Active, eCircle.Color, E.Range));
            };
            E.Range = ERange - e.Item("ERangeDecrease").GetValue<Slider>().Value;

            e.AddBool("ComboEFirst", "Combo E First", false);
            e.AddBool("AntiGapcloser", "AntiGapCloser with E");
            e.AddBool("AutoEImmobile", "Auto E Immobile Targets");

            var r = spells.AddSpell(
                SpellSlot.R,
                new List<Orbwalking.OrbwalkingMode> { Orbwalking.OrbwalkingMode.Combo, Orbwalking.OrbwalkingMode.Mixed });
            r.AddBool("LaneClearR", "Use in LaneClear", false);
            r.Item("LaneClearR").SetTooltip("Use R(W) in LaneClear");
            r.AddBool("AntiGapcloserR", "AntiGapCloser with R(E)", false);
            w.AddBool("RBackClick", "Left Click R(W) Back", false);
            w.Item("RBackClick").SetTooltip("Cast second R(W) after left clicking.");
            var combo = Menu.AddMenu("Combo", "Other Combos");

            var twoChainz = combo.AddMenu("2Chainz", "2Chainz");
            twoChainz.AddInfo("2ChainzInfo", " --> Cast E and R(E) on target.", Color.Red);
            twoChainz.AddKeyBind("2Key", "Combo Key", 'H');
            twoChainz.AddBool("2Selected", "Selected Target Only", false);
            twoChainz.AddBool("2W", "Use W if out of range");

            var aoe = combo.AddMenu("AOECombo", "AOE Combo");
            aoe.AddInfo("AOEInfo", " --> Cast W and R(W) on target(s).", Color.Red);
            aoe.AddKeyBind("AOECombo", "Combo Key", 'N');
            aoe.AddBool("AOEW", "Use W");
            aoe.AddBool("GapcloseW", "Use W to Gapclose");
            aoe.Item("GapcloseW").SetTooltip("Gapclose to cast R(W).");
            aoe.AddBool("AOER", "Use R(W)");
            aoe.AddSlider("AOEEnemies", "Minimum Enemies", 2, 1, 5);

            combo.AddBool("ComboOrbwalk", "Orbwalk when Comboing");

            var ks = Menu.AddMenu("Killsteal", "Killsteal");
            ks.AddBool("SmartKS", "Smart Killsteal");
            ks.AddSlider("KSMana", "Minimum Mana", 30);
            ks.AddSlider("KSHealth", "Minimum Health to W", 40);
            ks.AddBool("KSGapclose", "Use W to Gapclose", false);
            ks.Item("KSHealth").SetTooltip("Minimum health to W in to KS.");
            ks.AddSlider("KSEnemies", "Maximum Enemies to W", 3, 1, 4);
            ks.Item("KSEnemies").SetTooltip("Maximum enemies to W in to KS.");

            PassiveManager.Initialize(Menu);

            var flee = Menu.AddMenu("Flee", "Flee");
            flee.AddInfo("FleeInfo", " --> Flees towards cursor position.", Color.Red);
            flee.AddKeyBind("Flee", "Flee", 'T');
            flee.AddBool("FleeW", "Use W");
            flee.AddBool("FleeRW", "Use R(W)");
            flee.AddBool("FleeMove", "Move to Cursor Position");

            var draw = Menu.AddMenu("Drawings", "Drawings");
            draw.AddCircle("Draw0", "Draw Q Range", System.Drawing.Color.Red, Q.Range, false);
            draw.AddCircle("Draw1", "Draw W Range", System.Drawing.Color.Red, W.Range, false);
            draw.AddCircle("Draw2", "Draw E Range", System.Drawing.Color.Purple, E.Range, false);
            draw.AddBool("DrawCD", "Draw on CD");
            draw.AddBool("DrawWBack", "Draw W Back Position");

            var manaCost = new Dictionary<SpellSlot, int[]>
            {
                { SpellSlot.Q, new[] { 0, 50, 60, 70, 80, 90 } },
                { SpellSlot.W, new[] { 0, 80, 85, 90, 95, 100 } },
                { SpellSlot.E, new[] { 0, 80, 80, 80, 80, 80 } },
                { SpellSlot.R, new[] { 0, 50, 60, 70, 80, 90 } }
            };

            var damage = draw.AddMenu("Damage Indicator", "Damage Indicator");
            damage.AddBool("DmgEnabled", "Enabled");
            damage.AddCircle("HPColor", "Health Color", System.Drawing.Color.White);
            damage.AddCircle("FillColor", "Damage Color", System.Drawing.Color.DeepPink);
            damage.AddBool("Killable", "Killable");

            Menu.AddBool("Sounds", "Sounds");

            if (Menu.Item("Sounds").IsActive())
            {
                new SoundObject(Resources.Load).Play();
            }

            Menu.AddInfo("Info", "By Trees and Lilith!", Color.Red);

            ManaBarIndicator.Initialize(draw, manaCost);
            DamageIndicator.Initialize(damage, GetComboDamage);
            SpellManager.Initialize(Menu, Orbwalker);
            WBackPosition.Initialize();

            Menu.AddToMainMenu();
        }