public AbilitiesMenu(Menu rootMenu) { var menu = new Menu("Abilities", "abilities"); AbilitiesColor = new AbilitiesColor(menu); Texture = new Texture(menu); var enabled = new MenuItem("abilitiesEnabled", "Enabled").SetValue(true); menu.AddItem(enabled); enabled.ValueChanged += (sender, args) => IsEnabled = args.GetNewValue <bool>(); IsEnabled = enabled.IsActive(); var sumDamage = new MenuItem("abilitiesSumDamage", "Sum damage").SetValue(true); sumDamage.SetTooltip("If enabled it will sum damage from all abilities otherwise only from one"); menu.AddItem(sumDamage); sumDamage.ValueChanged += (sender, args) => SumDamage = args.GetNewValue <bool>(); SumDamage = sumDamage.IsActive(); var showBorder = new MenuItem("abilitiesBorder", "Show border").SetValue(true); showBorder.SetTooltip("Show border when unit can be killed"); menu.AddItem(showBorder); showBorder.ValueChanged += (sender, args) => ShowBorder = args.GetNewValue <bool>(); ShowBorder = showBorder.IsActive(); var showWarningBorder = new MenuItem("abilitiesWarningBorder", "Show warning border").SetValue(true); showWarningBorder.SetTooltip( "Show texture and border when unit requires one more auto attack hit before he can be killed"); menu.AddItem(showWarningBorder); showWarningBorder.ValueChanged += (sender, args) => ShowWarningBorder = args.GetNewValue <bool>(); ShowWarningBorder = showWarningBorder.IsActive(); menu.AddItem( new MenuItem("abilitiesToggler", "Abilities:").SetValue( abilityToggler = new AbilityToggler(new Dictionary <string, bool>()))); menu.AddItem( new MenuItem("abilitiesPriority", "Order:").SetValue( priorityChanger = new PriorityChanger(new List <string>()))); rootMenu.AddSubMenu(menu); }
public AbilitiesMenu(MenuFactory factory) { var subFactory = factory.Menu("Abilities"); AbilitiesColor = new AbilitiesColor(subFactory); Texture = new Texture(subFactory); IsEnabled = subFactory.Item("Enabled", true); SumDamage = subFactory.Item("Sum damage", true); SumDamage.Item.SetTooltip("If enabled it will sum damage from all abilities otherwise only from one"); ShowBorder = subFactory.Item("Show border", true); ShowBorder.Item.SetTooltip("Show border when unit can be killed"); ShowWarningBorder = subFactory.Item("Show warning border", true); ShowWarningBorder.Item.SetTooltip( "Show texture and border when unit requires one more auto attack hit before he can be killed"); subFactory.Item("Abilities:", abilityToggler = new AbilityToggler(new Dictionary <string, bool>())); subFactory.Item("Order:", priorityChanger = new PriorityChanger(new List <string>())); }