Exemplo n.º 1
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();
                AutoKillSteal.Dispose();
                DamageCalculation.Dispose();
                UpdateMode.Dispose();

                Main.Context.Particle.Dispose();

                Menu.Dispose();
            }

            Disposed = true;
        }
Exemplo n.º 2
0
        public Config(PudgePlus main)
        {
            Main = main;

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

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

            UpdateMode        = new UpdateMode(this);
            DamageCalculation = new DamageCalculation(this);
            LinkenBreaker     = new LinkenBreaker(this);
            AutoKillSteal     = new AutoKillSteal(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);
        }
Exemplo n.º 3
0
        public Config(SkywrathMagePlus main)
        {
            Main = main;

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

            Menu = new MenuManager(this);

            Abilities  = new Abilities(this);
            Extensions = new Extensions(this);

            UpdateMode        = new UpdateMode(this);
            DamageCalculation = new DamageCalculation(this);
            LinkenBreaker     = new LinkenBreaker(this);
            AutoKillSteal     = new AutoKillSteal(this);
            AutoCombo         = new AutoCombo(this);
            SpamMode          = new SpamMode(this);
            AutoDisable       = new AutoDisable(this);
            WithoutFail       = new WithoutFail(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);
        }
Exemplo n.º 4
0
 private void SetAutoAbilityText(Button button, AutoAbility ability)
 {
     if (ability != null)
     {
         button.Content = $"[{ability.ID.ToString("X4")}] {ability.Name}";
     }
     else
     {
         button.Content = $"Unknown ID";
     }
 }
Exemplo n.º 5
0
        protected virtual void Dispose(bool disposing)
        {
            if (Disposed)
            {
                return;
            }

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

            Disposed = true;
        }
Exemplo n.º 6
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);
        }
Exemplo n.º 7
0
        private void RefreshSelectedItem()
        {
            _refreshing = true;

            if (_selectedItem == -1)
            {
                _selectedItem = 0;
            }

            _currentItem = Equipment.ReadItem(_selectedItem);

            if ((_selectedItem >= 0x0C && _selectedItem <= 0x21) ||
                _currentItem.SlotOccupied == 0)
            {
                ButtonDeleteItem.IsEnabled = false;
            }
            else
            {
                ButtonDeleteItem.IsEnabled = true;
            }

            var listItem  = ListEquipment.Items[_selectedItem] as ListViewItem;
            var imageIcon = (listItem.Content as DockPanel).FindChild <Image>("ImageIcon");
            var listText  = (listItem.Content as DockPanel).FindChild <TextBlock>("TextName");

            if (_currentItem.SlotOccupied == 0)
            {
                ContentNoItem.Visibility   = Visibility.Visible;
                ContentEditItem.Visibility = Visibility.Collapsed;

                listText.Text    = NameEmpty;
                imageIcon.Source = null;
                _refreshing      = false;
                return;
            }


            if (_currentItem.Character < 7)
            {
                var nameString = EquipName.EquipNames[_currentItem.Character][_currentItem.Name];

                listText.Text    = nameString;
                imageIcon.Source = _icons[_currentItem.Character * 2 + _currentItem.Type];

                ButtonEquipmentName.Content = nameString;
                GroupEquipmentEditor.Header = nameString;
            }
            else
            {
                var nameString = ((Character)_currentItem.Character).ToString();

                listText.Text    = $"{NameUnknown} [{nameString}]";
                imageIcon.Source = null;

                ButtonEquipmentName.Content = NameUnknown;
                GroupEquipmentEditor.Header = NameUnknown;
            }

            var appearance = EquipAppearance.EquipAppearances.FirstOrDefault(e => e.ID == _currentItem.Appearance);

            if (appearance == null)
            {
                ButtonEquipmentAppearance.Content = NameUnknown;
            }
            else
            {
                ButtonEquipmentAppearance.Content = appearance.Name;
            }

            ComboEquipmentCharacter.SelectedIndex = _currentItem.Character;
            ComboEquipmentType.SelectedIndex      = _currentItem.Type;

            var damageFormula = DamageFormula.DamageFormulas.FirstOrDefault(f => f.ID == _currentItem.DamageFormula);

            if (damageFormula == null)
            {
                ComboDamageFormula.SelectedIndex = 0;
            }
            else
            {
                ComboDamageFormula.SelectedIndex = Array.IndexOf(DamageFormula.DamageFormulas, damageFormula);
            }

            TextAttackPower.Text = _currentItem.AttackPower.ToString();
            TextCritChance.Text  = _currentItem.Critical.ToString();

            ComboEquipmentSlots.SelectedIndex = _currentItem.AbilityCount;

            for (var slot = 0; slot < 4; slot++)
            {
                var button = (Button)FindName("Ability" + slot.ToString().Trim());

                if (slot >= _currentItem.AbilityCount)
                {
                    button.Visibility = Visibility.Collapsed;
                    continue;
                }
                button.Visibility = Visibility.Visible;
                var ability = AutoAbility.FromID(_currentItem.Abilities[slot]);

                if (ability == null)
                {
                    // no ability in this slot
                    button.Content = NameEmpty;
                    continue;
                }

                button.Content = ability.Name;
            }

            ContentNoItem.Visibility   = Visibility.Collapsed;
            ContentEditItem.Visibility = Visibility.Visible;

            _refreshing = false;
        }
Exemplo n.º 8
0
        public Config(SilencerPlus main)
        {
            Main = main;

            Factory = MenuFactory.CreateWithTexture("SilencerPlus", "npc_dota_hero_silencer");
            Factory.Target.SetFontColor(Color.Aqua);

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

            AbilityToggler = AbilitiesMenu.Item("Use: ", new AbilityToggler(new Dictionary <string, bool>
            {
                { "silencer_last_word", true },
                { "silencer_glaives_of_wisdom", true },
                { "silencer_curse_of_the_silent", true }
            }));

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

            ItemsToggler = ItemsMenu.Item("Use: ", new AbilityToggler(new Dictionary <string, bool>
            {
                { "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_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>
            {
                { "silencer_last_word", 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>
            {
                { "silencer_last_word" },
                { "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>
            {
                { "silencer_last_word", 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>
            {
                { "silencer_last_word" },
                { "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 GlobalSilenceMenu = Factory.MenuWithTexture("Global Silence", "silencer_global_silence");

            GlobalSilenceItem    = GlobalSilenceMenu.Item("Enable", true);
            GlobalSilenceToggler = GlobalSilenceMenu.Item("Use: ", "globalsilencetoggler", new AbilityToggler(new Dictionary <string, bool>
            {
                { "enigma_black_hole", true },
                { "witch_doctor_death_ward", true },
                { "crystal_maiden_freezing_field", true },
                { "pudge_dismember", true },
                { "sandking_epicenter", true },
                { "bane_fiends_grip", true }
            }));

            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");

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

            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);

            AutoAbility   = new AutoAbility(this);
            LinkenBreaker = new LinkenBreaker(this);
        }