Пример #1
0
        private void AddSortOption(string title, MouseEvent onclick)
        {
            var option = new UITextOption(title);

            option.OnClick += onclick;
            list.Add(option);
        }
Пример #2
0
        public override void OnInitialize()
        {
            var confirmation = new UITextOption("Are you sure?");

            confirmation.TextColor = Color.Red;
            confirmation.Top.Set(Main.instance.invBottom + topOffset, 0);
            confirmation.Left.Set(506, 0); // magic number because vanilla does it the same way lmao
            confirmation.OnMouseDown += onclick;
            Append(confirmation);
        }
Пример #3
0
        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);
        }