private void LoadCustomRefills() { _customRefills = RefillParser.Parse(PluginDirectory); if (_customRefills.Count == 0) { return; } var refillMenu = MenuPlugin.AddChild(PluginSettingsRootMenu, "Refill Currency", Settings.RefillCurrency); MenuPlugin.AddChild(refillMenu, "Currency Tab", Settings.CurrencyStashTab); MenuPlugin.AddChild(refillMenu, "Allow Have More", Settings.AllowHaveMore); foreach (var refill in _customRefills) { RangeNode <int> amountOption; if (!Settings.CustomRefillOptions.TryGetValue(refill.MenuName, out amountOption)) { amountOption = new RangeNode <int>(0, 0, refill.StackSize); Settings.CustomRefillOptions.Add(refill.MenuName, amountOption); } amountOption.Max = refill.StackSize; refill.AmountOption = amountOption; MenuPlugin.AddChild(refillMenu, refill.MenuName, amountOption); } _settingsListNodes.Add(Settings.CurrencyStashTab); }
private void LoadCustomFilters() { var filterPath = Path.Combine(PluginDirectory, FITERS_CONFIG_FILE); var filtersLines = File.ReadAllLines(filterPath); var unused = new FilterParser(); _customFilters = FilterParser.Parse(filtersLines); var submenu = new Dictionary <string, MenuItem>(); foreach (var customFilter in _customFilters) { ListIndexNode indexNode; if (!Settings.CustomFilterOptions.TryGetValue(customFilter.Name, out indexNode)) { indexNode = new ListIndexNode { Value = "Ignore", Index = -1 }; Settings.CustomFilterOptions.Add(customFilter.Name, indexNode); } var parentMenu = PluginSettingsRootMenu; if (!string.IsNullOrEmpty(customFilter.SubmenuName)) { if (!submenu.TryGetValue(customFilter.SubmenuName, out parentMenu)) { parentMenu = MenuPlugin.AddChild(PluginSettingsRootMenu, customFilter.SubmenuName); submenu.Add(customFilter.SubmenuName, parentMenu); } } MenuPlugin.AddChild(parentMenu, customFilter.Name, indexNode); customFilter.StashIndexNode = indexNode; _settingsListNodes.Add(indexNode); } }