summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--group.lua7
-rw-r--r--register.lua8
2 files changed, 9 insertions, 6 deletions
diff --git a/group.lua b/group.lua
index d888ef0..594bed2 100644
--- a/group.lua
+++ b/group.lua
@@ -1,6 +1,7 @@
unified_inventory.registered_group_items = {
mesecon_conductor_craftable = "mesecons:wire_00000000_off",
+ stone = "default:cobble",
wool = "wool:white",
}
@@ -21,7 +22,7 @@ end
-- Among equally-preferred items, we just pick the one with the
-- lexicographically earliest name.
-function compute_group_item(group_name)
+local function compute_group_item(group_name)
local candidate_items = {}
for itemname, itemdef in pairs(minetest.registered_items) do
if (itemdef.groups.not_in_creative_inventory or 0) == 0 and
@@ -40,8 +41,10 @@ function compute_group_item(group_name)
for _, item in ipairs(candidate_items) do
local pref
if item == unified_inventory.registered_group_items[group_name] then
+ pref = 4
+ elseif item == "default:"..group_name then
pref = 3
- elseif item:gsub("^[^:]+:", "") == group_name then
+ elseif item:gsub("^[^:]*:", "") == group_name then
pref = 2
else
pref = 1
diff --git a/register.lua b/register.lua
index a471e2b..131cbe2 100644
--- a/register.lua
+++ b/register.lua
@@ -156,17 +156,17 @@ local function stack_image_button(x, y, w, h, buttonname_prefix, item)
if name:sub(1, 6) == "group:" then
local group_name = name:sub(7)
local group_item = unified_inventory.get_group_item(group_name)
- show_group = not group_item.sole
+ show_is_group = not group_item.sole
displayitem = group_item.item or "unknown"
selectitem = group_item.sole and displayitem or name
end
- -- Hackily shift the count to the bottom right
- local shiftstr = "\n\n "
+ local label = string.format("\n\n%s%7d", show_is_group and "G" or " ", count):gsub(" 1$", " .")
+ if label == "\n\n ." then label = "" end
return string.format("item_image_button[%u,%u;%u,%u;%s;%s;%s]",
x, y, w, h,
minetest.formspec_escape(displayitem),
minetest.formspec_escape(buttonname_prefix..selectitem),
- count ~= 1 and shiftstr..tostring(count) or "")
+ label)
end
unified_inventory.register_page("craftguide", {