- Added API for configuring categories
- Added display for categories above page
- Reduced height of page by 1 row to make room for categories
- Added L/R scroll through when there are more categories than columns
- Added pre-filter methods for categories and uncategorised items
- Added categories for (most) items in the default game
Co-authored-by: Oversword <bionc:oversword.co.uk>
Set unified_inventory_lite = true in minetest.conf to enable.
This mode reduces the feature-set of the mod as follows:
* no bags
* no waypoints,
* no home/go-home buttons,
* no set-day/-night buttons,
* smaller creative/craft guide inventory pages (4x6 instead of 8x10)
* fewer paging buttons
* smaller search field
* move "Result: foo" to below the crafting guide grid.
* Move main "tab" buttons to the right, below the search and paging buttons.
* Made "tab" buttons able to use to 2 rows if necessary (max 8 buttons)
When the craft guide is showing a craft, the output slot is now a button,
which causes the craft guide to show ways in which that output can be
used. This mirrors the way input slots are buttons that show recipes
for the selected ingredient. Usages of an item can be iterated through
in the same way as recipes for the item. This incidentally offers some
ability to retrace one's steps through a crafting chain, without storing
actual history.
Extend the representative-item logic to handle ingredients specified
as the intersection of multiple groups. Also add mangling of item
button content, because comma for a multi-group ingredient is getting
formspec-escaped and then not de-escaped.
Alloy cooking recipes have quantities for the ingredients, which need to
be shown. The buttons on which the ingredients are shown don't natively
support showing an item count, so hack it up with the label facility.
Also, the button names, supporting clicking to see recipes recursively,
need to be based only on the item name part of the ingredient, dropping
the quantity part.
The refill slot was only putting as many items as possible in a
stack, which does nothing for tools. Tools could benefit from repair,
recharging, or other behaviour depending on the type of tool. Change the
default refill behaviour to repair mechanical wear as well as fully
stacking. Because other kinds of refill will require knowledge of the
metadata format, they can't be directly handled here. So add an on_refill
hook, that tool definitions can supply to plug in appropriate behaviour.
Keep the current inventory search string when performing inventory
form actions other than searching. This means the player's input is
not lost if the player breaks off from entering it to switch pages,
or if the player absent-mindedly ends text input with <return>.