if meta:get_int("cook_time") < result.time / speed then
return
end
- local result = minetest.get_craft_result({method = "cooking", width = 1, items = inv:get_list("src")})
+ local result
+ local afterfuel
+ result, afterfuel = minetest.get_craft_result({method = "cooking", width = 1, items = inv:get_list("src")})
if result and result.item then
meta:set_int("cook_time", 0)
-- check if there's room for output in "dst" list
if inv:room_for_item("dst", result.item) then
- srcstack = inv:get_stack("src", 1)
- srcstack:take_item()
- inv:set_stack("src", 1, srcstack)
+ inv:set_stack("src", 1, afterfuel.items[1])
inv:add_item("dst", result.item)
end
end
local inv = meta:get_inventory()
if not inv:is_empty("src") then
local fuellist = inv:get_list("src")
- local fuel = minetest.get_craft_result(
+ local fuel
+ local afterfuel
+ fuel, afterfuel = minetest.get_craft_result(
{method = "fuel", width = 1,
items = fuellist})
if not fuel or fuel.time == 0 then
end
meta:set_int("burn_time", fuel.time)
meta:set_int("burn_totaltime", fuel.time)
- local stack = inv:get_stack("src", 1)
- stack:take_item()
- inv:set_stack("src", 1, stack)
+ inv:set_stack("src", 1, afterfuel.items[1])
technic.swap_node(pos, "technic:"..ltier.."_generator_active")
meta:set_int(tier.."_EU_supply", data.supply)
else