Remove count from item_image_button label,
item_image_buttons can now display properly item stacks
This commit is contained in:
parent
8f91abbfb8
commit
b3c6c92286
10
register.lua
10
register.lua
@ -168,11 +168,6 @@ unified_inventory.register_page("craft", {
|
|||||||
|
|
||||||
-- stack_image_button(): generate a form button displaying a stack of items
|
-- stack_image_button(): generate a form button displaying a stack of items
|
||||||
--
|
--
|
||||||
-- Normally a simple item_image_button[] is used. If the stack contains
|
|
||||||
-- more than one item, item_image_button[] doesn't have an option to
|
|
||||||
-- display an item count in the way that an inventory slot does, so
|
|
||||||
-- we have to fake it using the label facility.
|
|
||||||
--
|
|
||||||
-- The specified item may be a group. In that case, the group will be
|
-- The specified item may be a group. In that case, the group will be
|
||||||
-- represented by some item in the group, along with a flag indicating
|
-- represented by some item in the group, along with a flag indicating
|
||||||
-- that it's a group. If the group contains only one item, it will be
|
-- that it's a group. If the group contains only one item, it will be
|
||||||
@ -182,7 +177,7 @@ local function stack_image_button(x, y, w, h, buttonname_prefix, item)
|
|||||||
local name = item:get_name()
|
local name = item:get_name()
|
||||||
local count = item:get_count()
|
local count = item:get_count()
|
||||||
local show_is_group = false
|
local show_is_group = false
|
||||||
local displayitem = name
|
local displayitem = name.." "..count
|
||||||
local selectitem = name
|
local selectitem = name
|
||||||
if name:sub(1, 6) == "group:" then
|
if name:sub(1, 6) == "group:" then
|
||||||
local group_name = name:sub(7)
|
local group_name = name:sub(7)
|
||||||
@ -191,8 +186,7 @@ local function stack_image_button(x, y, w, h, buttonname_prefix, item)
|
|||||||
displayitem = group_item.item or "unknown"
|
displayitem = group_item.item or "unknown"
|
||||||
selectitem = group_item.sole and displayitem or name
|
selectitem = group_item.sole and displayitem or name
|
||||||
end
|
end
|
||||||
local label = string.format("\n\n%s%7d", show_is_group and " G\n" or " ", count):gsub(" 1$", " .")
|
local label = show_is_group and "G" or ""
|
||||||
if label == "\n\n ." then label = "" end
|
|
||||||
return string.format("item_image_button[%f,%f;%u,%u;%s;%s;%s]",
|
return string.format("item_image_button[%f,%f;%u,%u;%s;%s;%s]",
|
||||||
x, y, w, h,
|
x, y, w, h,
|
||||||
minetest.formspec_escape(displayitem),
|
minetest.formspec_escape(displayitem),
|
||||||
|
Loading…
Reference in New Issue
Block a user