forked from mtcontrib/pipeworks
improve handling of shapeless recipes in the autocrafter recipe filling function
This commit is contained in:
parent
51c5b63ee7
commit
f79956c0b6
@ -151,7 +151,17 @@ local function on_output_change(pos, inventory, stack)
|
|||||||
else
|
else
|
||||||
local input = minetest.get_craft_recipe(stack:get_name())
|
local input = minetest.get_craft_recipe(stack:get_name())
|
||||||
if not input.items or input.type ~= "normal" then return end
|
if not input.items or input.type ~= "normal" then return end
|
||||||
inventory:set_list("recipe", normalize(input.items))
|
local items, width = normalize(input.items), input.width
|
||||||
|
local item_idx, width_idx = 1, 1
|
||||||
|
for i = 1, 9 do
|
||||||
|
if width_idx <= width then
|
||||||
|
inventory:set_stack("recipe", i, items[item_idx])
|
||||||
|
item_idx = item_idx + 1
|
||||||
|
else
|
||||||
|
inventory:set_stack("recipe", i, ItemStack(""))
|
||||||
|
end
|
||||||
|
width_idx = (width_idx < 3) and (width_idx + 1) or 1
|
||||||
|
end
|
||||||
-- we'll set the output slot in after_recipe_change to the actual result of the new recipe
|
-- we'll set the output slot in after_recipe_change to the actual result of the new recipe
|
||||||
end
|
end
|
||||||
after_recipe_change(pos, inventory)
|
after_recipe_change(pos, inventory)
|
||||||
|
Loading…
Reference in New Issue
Block a user