public override void ProcessTriggers(TriggersSet triggersSet) { base.ProcessTriggers(triggersSet); if (DepositAll.JustPressed) { ChestUI.DepositAll(); } if (LootAll.JustPressed) { ChestUI.LootAll(); } if (QuickStack.JustPressed) { player.QuickStackAllChests(); ChestUI.QuickStack(); } if (Restock.JustPressed) { ChestUI.Restock(); } if (SortChest.JustPressed) { ItemSorting.SortChest(); } if (SortInventory.JustPressed) { ItemSorting.SortInventory(); } }
public override void OnInitialize() { var header = new UIText("Sorting Options"); header.Top.Set(Main.instance.invBottom, 0); header.Left.Set(506 + 130, 0); // magic number because vanilla does it the same way lmao Append(header); list = new UIList(); list.Top.Set(Main.instance.invBottom + 30, 0); list.Left.Set(506 + 130, 0); list.Width.Set(400, 0); list.Height.Set(400, 0); list.ListPadding = 14; list.SetPadding(2); Append(list); AddSortOption("Default sort", (evt, elm) => ItemSorting.SortChest()); AddSortOption("Sort by ID", (evt, elm) => NewItemSorting.Sort(x => x.type, _reversed)); AddSortOption("Sort Alphabetically", (evt, elm) => NewItemSorting.Sort(x => x.Name, _reversed)); AddSortOption("Sort by rarity", (evt, elm) => NewItemSorting.Sort(x => x.rare, !_reversed)); AddSortOption("Sort by stack size", (evt, elm) => NewItemSorting.Sort(x => x.stack, !_reversed)); AddSortOption("Sort by value", (evt, elm) => NewItemSorting.Sort(x => x.value, !_reversed)); AddSortOption("Sort by damage", (evt, elm) => NewItemSorting.Sort(x => x.damage, !_reversed)); AddSortOption("Sort by defense", (evt, elm) => NewItemSorting.Sort(x => x.defense, !_reversed)); AddSortOption("Sort by Mod", new MouseEvent(ModCarusel)); AddSortOption("Sort randomly", (evt, elm) => NewItemSorting.Sort(x => Main.rand.NextFloat(), _reversed)); var option = new UITextOption("Reversed: No"); option.OnClick += (evt, elm) => { _reversed = !_reversed; option.SetText(_reversed ? "Reversed: Yes" : "Reversed: No"); }; list.Add(option); var searchbox = new UIBetterTextBox("search item", Color.White); searchbox.Top.Set(Main.instance.invBottom + 170, 0); searchbox.Left.Set(71, 0); searchbox.Width.Set(209, 0); searchbox.Height.Set(30, 0); searchbox.OnTextChanged += () => NewItemSorting.Sort(x => x.Name.ToLower().Contains(searchbox.currentString.ToLower()), true); Append(searchbox); }