diff --git a/mods/bucket/init.lua b/mods/bucket/init.lua index d725466b..7366bbf3 100644 --- a/mods/bucket/init.lua +++ b/mods/bucket/init.lua @@ -100,4 +100,5 @@ minetest.register_craft({ type = "fuel", recipe = "bucket:bucket_lava", burntime = 60, + replacements = {{"bucket:bucket_lava", "bucket:bucket_empty"}}, }) diff --git a/mods/default/init.lua b/mods/default/init.lua index 39437813..471c266c 100644 --- a/mods/default/init.lua +++ b/mods/default/init.lua @@ -1455,9 +1455,10 @@ minetest.register_abm({ local srclist = inv:get_list("src") local cooked = nil + local aftercooked if srclist then - cooked = minetest.get_craft_result({method = "cooking", width = 1, items = srclist}) + cooked, aftercooked = minetest.get_craft_result({method = "cooking", width = 1, items = srclist}) end local was_active = false @@ -1472,9 +1473,7 @@ minetest.register_abm({ -- Put result in "dst" list inv:add_item("dst", cooked.item) -- take stuff from "src" list - srcstack = inv:get_stack("src", 1) - srcstack:take_item() - inv:set_stack("src", 1, srcstack) + inv:set_stack("src", 1, aftercooked.items[1]) else print("Could not insert '"..cooked.item:to_string().."'") end @@ -1499,6 +1498,7 @@ minetest.register_abm({ end local fuel = nil + local afterfuel local cooked = nil local fuellist = inv:get_list("fuel") local srclist = inv:get_list("src") @@ -1507,7 +1507,7 @@ minetest.register_abm({ cooked = minetest.get_craft_result({method = "cooking", width = 1, items = srclist}) end if fuellist then - fuel = minetest.get_craft_result({method = "fuel", width = 1, items = fuellist}) + fuel, afterfuel = minetest.get_craft_result({method = "fuel", width = 1, items = fuellist}) end if fuel.time <= 0 then @@ -1529,9 +1529,7 @@ minetest.register_abm({ meta:set_string("fuel_totaltime", fuel.time) meta:set_string("fuel_time", 0) - local stack = inv:get_stack("fuel", 1) - stack:take_item() - inv:set_stack("fuel", 1, stack) + inv:set_stack("fuel", 1, afterfuel.items[1]) end, })