예제 #1
0
        public Config(VisagePlus main)
        {
            Main = main;

            ActivatePlugins();
            Screen       = new Vector2(Drawing.Width - 160, Drawing.Height);
            MultiSleeper = new MultiSleeper();

            Menu       = new MenuManager(this);
            Extensions = new Extensions(this);

            UpdateMode        = new UpdateMode(this);
            DamageCalculation = new DamageCalculation(this);
            LinkenBreaker     = new LinkenBreaker(this);
            AutoKillSteal     = new AutoKillSteal(this);
            FamiliarsControl  = new FamiliarsControl(this);
            FamiliarsCombo    = new FamiliarsCombo(this);
            FamiliarsLastHit  = new FamiliarsLastHit(this);
            AutoAbility       = new AutoAbility(this);

            Menu.ComboKeyItem.Item.ValueChanged += ComboKeyChanged;
            var key = KeyInterop.KeyFromVirtualKey((int)Menu.ComboKeyItem.Value.Key);

            Mode = new Mode(key, this);
            Main.Context.Orbwalker.RegisterMode(Mode);

            Renderer = new Renderer(this);
        }
예제 #2
0
        protected virtual void Dispose(bool disposing)
        {
            if (Disposed)
            {
                return;
            }

            if (disposing)
            {
                Renderer.Dispose();

                Main.Context.Orbwalker.UnregisterMode(Mode);
                Menu.ComboKeyItem.Item.ValueChanged -= ComboKeyChanged;

                AutoAbility.Dispose();
                FamiliarsLastHit.Dispose();
                FamiliarsCombo.Dispose();
                FamiliarsControl.Dispose();
                AutoKillSteal.Dispose();
                DamageCalculation.Dispose();
                UpdateMode.Dispose();

                Main.Context.Particle.Dispose();

                Menu.Dispose();
            }

            Disposed = true;
        }
예제 #3
0
        protected virtual void Dispose(bool disposing)
        {
            if (Disposed)
            {
                return;
            }

            if (disposing)
            {
                Renderer.Dispose();
                AutoAbility.Dispose();
                FamiliarsLastHit.Dispose();
                FamiliarsCombo.Dispose();
                FamiliarsControl.Dispose();
                UpdateMode.Dispose();
                Main.Context.Orbwalker.UnregisterMode(Mode);
                Main.Context.Particle.Dispose();
                ComboKeyItem.Item.ValueChanged -= HotkeyChanged;
                Factory.Dispose();
            }

            Disposed = true;
        }
예제 #4
0
        public Config(VisagePlus main)
        {
            Main   = main;
            Screen = new Vector2(Drawing.Width - 160, Drawing.Height);

            Factory = MenuFactory.CreateWithTexture("VisagePlus", "npc_dota_hero_visage");
            Factory.Target.SetFontColor(Color.Aqua);

            var AbilitiesMenu = Factory.Menu("Abilities");

            AbilityToggler = AbilitiesMenu.Item("Use: ", new AbilityToggler(new Dictionary <string, bool>
            {
                { "visage_summon_familiars_stone_form", true },
                { "visage_soul_assumption", true },
                { "visage_grave_chill", true }
            }));

            var ItemsMenu = Factory.Menu("Items");

            ItemsToggler = ItemsMenu.Item("Use: ", new AbilityToggler(new Dictionary <string, bool>
            {
                { "item_armlet", true },
                { "item_necronomicon_3", true },
                { "item_shivas_guard", true },
                { "item_dagon_5", true },
                { "item_veil_of_discord", true },
                { "item_ethereal_blade", true },
                { "item_heavens_halberd", true },
                { "item_hurricane_pike", true },
                { "item_solar_crest", true },
                { "item_medallion_of_courage", true },
                { "item_rod_of_atos", true },
                { "item_bloodthorn", true },
                { "item_orchid", true },
                { "item_sheepstick", true }
            }));

            var LinkenBreakerMenu = Factory.MenuWithTexture("Linken Breaker", "item_sphere");

            LinkenBreakerMenu.Target.AddItem(new MenuItem("linkensphere", "Linkens Sphere:"));
            LinkenBreakerToggler = LinkenBreakerMenu.Item("Use: ", "linkentoggler", new AbilityToggler(new Dictionary <string, bool>
            {
                { "visage_soul_assumption", true },
                { "item_sheepstick", true },
                { "item_rod_of_atos", true },
                { "item_bloodthorn", true },
                { "item_orchid", true },
                { "item_heavens_halberd", true },
                { "item_cyclone", true },
                { "item_force_staff", true }
            }));

            LinkenBreakerChanger = LinkenBreakerMenu.Item("Priority: ", "linkenchanger", new PriorityChanger(new List <string>
            {
                { "visage_soul_assumption" },
                { "item_sheepstick" },
                { "item_rod_of_atos" },
                { "item_bloodthorn" },
                { "item_orchid" },
                { "item_heavens_halberd" },
                { "item_cyclone" },
                { "item_force_staff" }
            }));

            LinkenBreakerMenu.Target.AddItem(new MenuItem("empty", ""));

            LinkenBreakerMenu.Target.AddItem(new MenuItem("antiMagespellshield", "AntiMage Spell Shield:"));
            AntiMageBreakerToggler = LinkenBreakerMenu.Item("Use: ", "antimagetoggler", new AbilityToggler(new Dictionary <string, bool>
            {
                { "visage_soul_assumption", true },
                { "item_rod_of_atos", true },
                { "item_heavens_halberd", true },
                { "item_cyclone", true },
                { "item_force_staff", true }
            }));

            AntiMageBreakerChanger = LinkenBreakerMenu.Item("Priority: ", "antimagechanger", new PriorityChanger(new List <string>
            {
                { "visage_soul_assumption" },
                { "item_rod_of_atos" },
                { "item_heavens_halberd" },
                { "item_cyclone" },
                { "item_force_staff" }
            }));

            UseOnlyFromRangeItem = LinkenBreakerMenu.Item("Use Only From Range", false);
            UseOnlyFromRangeItem.Item.SetTooltip("Use only from the Range and do not use another Ability");

            var AutoAbilityMenu = Factory.Menu("Auto Ability");

            KillStealItem    = AutoAbilityMenu.Item("Auto Kill Steal", true);
            KillStealToggler = AutoAbilityMenu.Item("Use: ", new AbilityToggler(new Dictionary <string, bool>
            {
                { "item_dagon_5", true },
                { "visage_soul_assumption", true }
            }));

            AutoSoulAssumptionItem = AutoAbilityMenu.Item("Auto Soul Assumption", true);

            var FamiliarsMenu        = Factory.Menu("Familiars");
            var FamiliarsLastHitMenu = FamiliarsMenu.Menu("Last Hit");

            LastHitItem      = FamiliarsLastHitMenu.Item("LastHit Key", new KeyBind('W', KeyBindType.Toggle, false));
            DenyItem         = FamiliarsLastHitMenu.Item("Deny", true);
            CommonAttackItem = FamiliarsLastHitMenu.Item("Common Attack", true);

            FamiliarsLockItem    = FamiliarsMenu.Item("Familiars Target Lock Key", new KeyBind('F', KeyBindType.Toggle, false));
            FollowKeyItem        = FamiliarsMenu.Item("Follow Key", new KeyBind('E', KeyBindType.Toggle, false));
            FamiliarsFollowItem  = FamiliarsMenu.Item("Follow Mouse Position", true);
            FamiliarsCourierItem = FamiliarsMenu.Item("Attack Courier", true);
            FamiliarsFollowItem.Item.SetTooltip("When Combo if there is No Enemy then Follow Mouse Position, Otherwise he Returns to the Hero");
            FamiliarsLowHPItem        = FamiliarsMenu.Item("Low HP %", new Slider(30, 0, 80));
            FamiliarsStoneControlItem = FamiliarsMenu.Item("Stone Form Control", false);
            FamiliarsStoneControlItem.Item.SetTooltip("Stone will work looking at the amount of charge");
            FamiliarsChargeItem = FamiliarsMenu.Item("Damage Charge", new Slider(3, 0, 5));

            var DrawingMenu = Factory.Menu("Drawing");
            var TargetMenu  = DrawingMenu.Menu("Target");

            DrawTargetItem = TargetMenu.Item("Target Enable", true);
            TargetRedItem  = TargetMenu.Item("Red", "red", new Slider(255, 0, 255));
            TargetRedItem.Item.SetFontColor(Color.Red);
            TargetGreenItem = TargetMenu.Item("Green", "green", new Slider(0, 0, 255));
            TargetGreenItem.Item.SetFontColor(Color.Green);
            TargetBlueItem = TargetMenu.Item("Blue", "blue", new Slider(0, 0, 255));
            TargetBlueItem.Item.SetFontColor(Color.Blue);

            DrawOffTargetItem = TargetMenu.Item("Off Target Enable", true);
            OffTargetRedItem  = TargetMenu.Item("Red", "offred", new Slider(0, 0, 255));
            OffTargetRedItem.Item.SetFontColor(Color.Red);
            OffTargetGreenItem = TargetMenu.Item("Green", "offgreen", new Slider(255, 0, 255));
            OffTargetGreenItem.Item.SetFontColor(Color.Green);
            OffTargetBlueItem = TargetMenu.Item("Blue", "offblue", new Slider(255, 0, 255));
            OffTargetBlueItem.Item.SetFontColor(Color.Blue);

            ComboRadiusItem = DrawingMenu.Item("Combo Stable Radius", true);
            ComboRadiusItem.Item.SetTooltip("I suggest making a combo in this radius");
            TextItem  = DrawingMenu.Item("Text", true);
            TextXItem = DrawingMenu.Item("X", new Slider(0, 0, (int)Screen.X - 60));
            TextYItem = DrawingMenu.Item("Y", new Slider(0, 0, (int)Screen.Y - 200));

            ComboKeyItem        = Factory.Item("Combo Key", new KeyBind('D'));
            MinDisInOrbwalkItem = Factory.Item("Min Distance in OrbWalk", new Slider(0, 0, 600));
            EscapeKeyItem       = Factory.Item("Escape Key", new KeyBind('0'));

            BladeMailItem = Factory.Item("Blade Mail Cancel", false);
            BladeMailItem.Item.SetTooltip("Cancel Combo if there is enemy Blade Mail");
            TargetItem = Factory.Item("Target", new StringList("Lock", "Default"));

            ComboKeyItem.Item.ValueChanged += HotkeyChanged;

            UpdateMode = new UpdateMode(this);

            var Key = KeyInterop.KeyFromVirtualKey((int)ComboKeyItem.Value.Key);

            Mode = new Mode(Main.Context, Key, this);
            Main.Context.Orbwalker.RegisterMode(Mode);

            LinkenBreaker    = new LinkenBreaker(this);
            FamiliarsControl = new FamiliarsControl(this);
            FamiliarsCombo   = new FamiliarsCombo(this);
            FamiliarsLastHit = new FamiliarsLastHit(this);
            AutoAbility      = new AutoAbility(this);
            Renderer         = new Renderer(this);
        }