コード例 #1
0
        private static void OnLoaded(EventArgs args)
        {
            if (Player.Instance.ChampionName != "Morgana")
            {
                return;
            }
            Bootstrap.Init(null);
            Q = new Spell.Skillshot(SpellSlot.Q, 1200, SkillShotType.Linear, (int)250f, (int)1200f, (int)80f);
            W = new Spell.Skillshot(SpellSlot.W, 900, SkillShotType.Circular, (int)250f, (int)2200f, (int)400f);
            E = new Spell.Targeted(SpellSlot.E, 750);
            R = new Spell.Active(SpellSlot.R, 600);

            MorgMenu = MainMenu.AddMenu("B.Morgana", "bloodimirmorgana");
            MorgMenu.AddGroupLabel("Bloodimir.Morgana");
            MorgMenu.AddSeparator();
            MorgMenu.AddLabel("An Addon made my Bloodimir/turkey");

            ComboMenu = MorgMenu.AddSubMenu("Combo", "sbtw");
            ComboMenu.AddGroupLabel("Combo Settings");
            ComboMenu.AddSeparator();
            ComboMenu.Add("usecomboq", new CheckBox("Use Q"));
            ComboMenu.Add("usecombow", new CheckBox("Use W"));
            ComboMenu.Add("usecombor", new CheckBox("Use R"));
            ComboMenu.AddSeparator();
            ComboMenu.Add("rslider", new Slider("Minimum people for R", 1, 0, 5));

            QMenu = MorgMenu.AddSubMenu("Q Settings", "qsettings");
            QMenu.AddGroupLabel("Q Settings");
            QMenu.AddSeparator();
            QMenu.Add("qmin", new Slider("Min Range", 200, 0, (int)Q.Range));
            QMenu.Add("qmax", new Slider("Max Range", (int)Q.Range, 0, (int)Q.Range));
            QMenu.AddSeparator();
            foreach (var obj in ObjectManager.Get <AIHeroClient>().Where(obj => obj.Team != Me.Team))
            {
                QMenu.Add("bind" + obj.ChampionName.ToLower(), new CheckBox("Bind " + obj.ChampionName));
            }
            QMenu.AddSeparator();
            QMenu.AddLabel("EB's common prediction and hitchance is still beta and sometimes it wont cast Q." +
                           Environment.NewLine + "But it works just fine if you use Medium hitchance prediction." +
                           Environment.NewLine +
                           "This allows Q to cast more but also a slightly smaller bind success percentage.");
            QMenu.AddSeparator();
            QMenu.Add("mediumpred", new CheckBox("MEDIUM Bind Hitchance Prediction / Disabled = High", false));

            WMenu = MorgMenu.AddSubMenu("W Settings", "wsettings");
            WMenu.AddGroupLabel("W Settings");
            WMenu.AddSeparator();
            WMenu.Add("wmax", new Slider("Max Range", (int)W.Range, 0, (int)W.Range));
            WMenu.Add("wmin", new Slider("Min Range", 124, 0, (int)W.Range));
            WMenu.AddSeparator();
            WMenu.Add("mediumpred", new CheckBox("MEDIUM Soil Hitchance Prediction / Disabled = High"));

            SkinMenu = MorgMenu.AddSubMenu("Skin Changer", "skin");
            SkinMenu.AddGroupLabel("Choose the desired skin");

            var skinchange = SkinMenu.Add("sID", new Slider("Skin", 0, 0, 6));
            var sID        = new[]
            { "Default", "Exiled", "Sinful Succulence", "Blade Mistress", "Blackthorn", "Ghost Bride", "Victorius" };

            skinchange.DisplayName    = sID[skinchange.CurrentValue];
            skinchange.OnValueChange += delegate(ValueBase <int> sender, ValueBase <int> .ValueChangeArgs changeArgs)
            {
                sender.DisplayName = sID[changeArgs.NewValue];
                if (MiscMenu["debug"].Cast <CheckBox>().CurrentValue)
                {
                    Chat.Print("skin-changed");
                }
            };

            MiscMenu = MorgMenu.AddSubMenu("Misc", "misc");
            MiscMenu.AddGroupLabel("KS");
            MiscMenu.AddSeparator();
            MiscMenu.Add("ksq", new CheckBox("KS with Q"));
            MiscMenu.AddSeparator();
            MiscMenu.AddGroupLabel("Interrupt");
            MiscMenu.AddSeparator();
            MiscMenu.Add("intq", new CheckBox("Q to Interrupt"));
            MiscMenu.Add("dashq", new CheckBox("Q on Dashing"));
            MiscMenu.Add("immoq", new CheckBox("Q on Immobile"));
            MiscMenu.Add("immow", new CheckBox("W on Immobile"));
            MiscMenu.AddSeparator();
            MiscMenu.Add("support", new CheckBox("Support Mode", false));
            MiscMenu.Add("debug", new CheckBox("Debug", false));

            DrawMenu = MorgMenu.AddSubMenu("Drawings", "drawings");
            DrawMenu.AddGroupLabel("Drawings");
            DrawMenu.AddSeparator();
            DrawMenu.Add("drawq", new CheckBox("Draw Q"));
            DrawMenu.Add("draww", new CheckBox("Draw W"));

            LaneClear = MorgMenu.AddSubMenu("Lane Clear", "laneclear");
            LaneClear.AddGroupLabel("Lane Clear Settings");
            LaneClear.Add("LCW", new CheckBox("Use W"));

            Interrupter.OnInterruptableSpell += Interrupter_OnInterruptableSpell;
            Game.OnTick           += Tick;
            Drawing.OnDraw        += OnDraw;
            Orbwalker.OnPreAttack += Orbwalker_OnPreAttack;
        }