protected virtual void Dispose(bool disposing) { if (Disposed) { return; } if (disposing) { Renderer.Dispose(); AutoUsage.Dispose(); WithoutFail.Dispose(); UpdateMode.Dispose(); AutoDisable.Dispose(); AutoCombo.Dispose(); SkywrathMagePlus.Context.Orbwalker.UnregisterMode(Mode); Mode.Deactivate(); SpamMode.Dispose(); SkywrathMagePlus.Context.Particle.Dispose(); ComboKeyItem.Item.ValueChanged -= HotkeyChanged; Factory.Dispose(); } Disposed = true; }
protected virtual void Dispose(bool disposing) { if (Disposed) { return; } if (disposing) { Factory.Dispose(); Renderer.Dispose(); UpdateMode.Dispose(); FamiliarsFollow.Dispose(); FamiliarsLastHit.Dispose(); AutoUsage.Dispose(); FamiliarsLowHP.Dispose(); VisagePlus.Context.Orbwalker.UnregisterMode(Mode); Mode.Deactivate(); VisagePlus.Context.Particle.Dispose(); ComboKeyItem.Item.ValueChanged -= HotkeyChanged; } Disposed = true; }
public Config(SkywrathMagePlus skywrathmageplus) { SkywrathMagePlus = skywrathmageplus; Factory = MenuFactory.CreateWithTexture("SkywrathMagePlus", "npc_dota_hero_skywrath_mage"); Factory.Target.SetFontColor(Color.Aqua); var AbilitiesMenu = Factory.Menu("Abilities"); AbilityToggler = AbilitiesMenu.Item("Use: ", new AbilityToggler(new Dictionary <string, bool> { { "skywrath_mage_mystic_flare", true }, { "skywrath_mage_ancient_seal", true }, { "skywrath_mage_concussive_shot", true }, { "skywrath_mage_arcane_bolt", 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_rod_of_atos", true }, { "item_bloodthorn", true }, { "item_orchid", true }, { "item_sheepstick", true } })); var AutoComboMenu = Factory.Menu("Auto Combo"); AutoComboItem = AutoComboMenu.Item("Use Auto Combo", true); AutoAbilitiesToggler = AutoComboMenu.Item("Abilities: ", new AbilityToggler(new Dictionary <string, bool> { { "skywrath_mage_mystic_flare", true }, { "skywrath_mage_ancient_seal", true }, { "skywrath_mage_concussive_shot", true }, { "skywrath_mage_arcane_bolt", true } })); AutoItemsToggler = AutoComboMenu.Item("Items: ", new AbilityToggler(new Dictionary <string, bool> { { "item_shivas_guard", true }, { "item_dagon_5", true }, { "item_veil_of_discord", true }, { "item_ethereal_blade", true }, { "item_rod_of_atos", true }, { "item_bloodthorn", true }, { "item_orchid", true }, { "item_sheepstick", true } })); var AutoDisableMenu = Factory.MenuWithTexture("Auto Disable", "item_sheepstick"); AutoDisableItem = AutoDisableMenu.Item("Use Auto Disable", true); AutoDisableToggler = AutoDisableMenu.Item("Use: ", new AbilityToggler(new Dictionary <string, bool> { { "skywrath_mage_ancient_seal", true }, { "item_bloodthorn", true }, { "item_orchid", true }, { "item_sheepstick", true } })); var LinkenBreakerMenu = Factory.MenuWithTexture("Linken Breaker", "item_sphere"); LinkenBreakerToggler = LinkenBreakerMenu.Item("Use: ", new AbilityToggler(new Dictionary <string, bool> { { "skywrath_mage_ancient_seal", false }, { "skywrath_mage_arcane_bolt", true }, { "item_sheepstick", true }, { "item_rod_of_atos", true }, { "item_bloodthorn", true }, { "item_orchid", true }, { "item_cyclone", true }, { "item_force_staff", true } })); LinkenBreakerChanger = LinkenBreakerMenu.Item("Priority: ", new PriorityChanger(new List <string> { { "skywrath_mage_ancient_seal" }, { "skywrath_mage_arcane_bolt" }, { "item_sheepstick" }, { "item_rod_of_atos" }, { "item_bloodthorn" }, { "item_orchid" }, { "item_cyclone" }, { "item_force_staff" } })); var AntimageBreakerMenu = Factory.MenuWithTexture("Antimage Breaker", "antimage_spell_shield"); AntimageBreakerToggler = AntimageBreakerMenu.Item("Use: ", new AbilityToggler(new Dictionary <string, bool> { { "skywrath_mage_ancient_seal", false }, { "skywrath_mage_arcane_bolt", true }, { "item_rod_of_atos", true }, { "item_cyclone", true }, { "item_force_staff", true } })); AntimageBreakerChanger = AntimageBreakerMenu.Item("Priority: ", new PriorityChanger(new List <string> { { "skywrath_mage_ancient_seal" }, { "skywrath_mage_arcane_bolt" }, { "item_rod_of_atos" }, { "item_cyclone" }, { "item_force_staff" } })); var BladeMailMenu = Factory.MenuWithTexture("Blade Mail", "item_blade_mail"); BladeMailItem = BladeMailMenu.Item("Cancel Combo", true); BladeMailItem.Item.SetTooltip("Cancel Combo if there is enemy Blade Mail"); EulBladeMailItem = BladeMailMenu.Item("Use Eul", true); EulBladeMailItem.Item.SetTooltip("Use Eul if there is BladeMail with ULT"); var ConcussiveShotMenu = Factory.MenuWithTexture("Smart Concussive Shot", "skywrath_mage_concussive_shot"); WWithoutFailItem = ConcussiveShotMenu.Item("Without Fail", true); WTargetItem = ConcussiveShotMenu.Item("Use Only Target", true); WTargetItem.Item.SetTooltip("This only works with Combo"); WRadiusItem = ConcussiveShotMenu.Item("Use in Radius", new Slider(1400, 800, 1600)); WRadiusItem.Item.SetTooltip("This only works with Combo"); var DrawingMenu = Factory.Menu("Drawing"); TextItem = DrawingMenu.Item("Text", true); ComboRadiusItem = DrawingMenu.Item("Combo Stable Radius", true); ComboRadiusItem.Item.SetTooltip("I suggest making a combo in this radius"); WDrawItem = DrawingMenu.Item("Show W Target", true); ComboKeyItem = Factory.Item("Combo Key", new KeyBind('D')); AutoQKeyItem = Factory.Item("Auto Q Key", new KeyBind('F', KeyBindType.Toggle, false)); AutoQKeyItem.Item.SetValue(new KeyBind(AutoQKeyItem.Item.GetValue <KeyBind>().Key, KeyBindType.Toggle, false)); SpamKeyItem = Factory.Item("Spam Q Key", new KeyBind('Q')); SpamUnitItem = Factory.Item("Spam Q Units", true); SpamUnitItem.Item.SetTooltip("Creeps, Neutrals and Roshan"); MinDisInOrbwalk = Factory.Item("Min Distance in OrbWalk", new Slider(0, 0, 600)); TargetItem = Factory.Item("Target", new StringList("Lock", "Default")); ComboKeyItem.Item.ValueChanged += HotkeyChanged; var Key = KeyInterop.KeyFromVirtualKey((int)ComboKeyItem.Value.Key); Mode = new Mode(SkywrathMagePlus.Context, Key, this); SkywrathMagePlus.Context.Orbwalker.RegisterMode(Mode); Data = new Data(); LinkenBreaker = new LinkenBreaker(this); SpamMode = new SpamMode(this); AutoCombo = new AutoCombo(this); AutoDisable = new AutoDisable(this); UpdateMode = new UpdateMode(this); WithoutFail = new WithoutFail(this); AutoUsage = new AutoUsage(this); Renderer = new Renderer(this); }
public Config(VisagePlus visageplus) { VisagePlus = visageplus; 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_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"); LinkenBreakerToggler = LinkenBreakerMenu.Item("Use: ", 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_cyclone", true }, { "item_force_staff", true } })); LinkenBreakerChanger = LinkenBreakerMenu.Item("Priority: ", new PriorityChanger(new List <string> { { "visage_soul_assumption" }, { "item_sheepstick" }, { "item_rod_of_atos" }, { "item_bloodthorn" }, { "item_orchid" }, { "item_cyclone" }, { "item_force_staff" } })); var AntimageBreakerMenu = Factory.MenuWithTexture("Antimage Breaker", "antimage_spell_shield"); AntimageBreakerToggler = AntimageBreakerMenu.Item("Use: ", new AbilityToggler(new Dictionary <string, bool> { { "visage_soul_assumption", true }, { "item_rod_of_atos", true }, { "item_cyclone", true }, { "item_force_staff", true } })); AntimageBreakerChanger = AntimageBreakerMenu.Item("Priority: ", new PriorityChanger(new List <string> { { "visage_soul_assumption" }, { "item_rod_of_atos" }, { "item_cyclone" }, { "item_force_staff" } })); var AutoUsageMenu = Factory.Menu("Auto Usage"); KillStealItem = AutoUsageMenu.Item("Auto Kill Steal", true); KillStealToggler = AutoUsageMenu.Item("Use: ", new AbilityToggler(new Dictionary <string, bool> { { "item_dagon_5", true }, { "visage_soul_assumption", true } })); AutoSoulAssumptionItem = AutoUsageMenu.Item("Auto Soul Assumption", true); var FamiliarsLastHitMenu = Factory.Menu("Familiars Last Hit"); LastHitItem = FamiliarsLastHitMenu.Item("LastHit Key", new KeyBind('W', KeyBindType.Toggle, false)); CommonAttackItem = FamiliarsLastHitMenu.Item("Common Attack", true); var DrawingMenu = Factory.Menu("Drawing"); 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')); MinDisInOrbwalk = Factory.Item("Min Distance in OrbWalk", new Slider(0, 0, 600)); FollowKeyItem = Factory.Item("Follow Key", new KeyBind('E', KeyBindType.Toggle, false)); FamiliarsLowHPItem = Factory.Item("Familiars Low HP %", new Slider(30, 0, 80)); 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; var Key = KeyInterop.KeyFromVirtualKey((int)ComboKeyItem.Value.Key); Mode = new Mode(VisagePlus.Context, Key, this); VisagePlus.Context.Orbwalker.RegisterMode(Mode); LinkenBreaker = new LinkenBreaker(this); FamiliarsCombo = new FamiliarsCombo(this); FamiliarsFollow = new FamiliarsFollow(this); FamiliarsLastHit = new FamiliarsLastHit(this); FamiliarsLowHP = new FamiliarsLowHP(this); AutoUsage = new AutoUsage(this); UpdateMode = new UpdateMode(this); Renderer = new Renderer(this); }