1. I added support for craft formula replacements in the default mod by setting the output value of the fuel to the "decremented input" return value of get_craft_result rather than the input stack with one item removed:
Code: Select all
(around line 1500)
local fuel = nil
local cooked = nil
local fuellist = inv:get_list("fuel")
local srclist = inv:get_list("src")
--to--
local fuel = nil
local afterfuel
local cooked = nil
local fuellist = inv:get_list("fuel")
local srclist = inv:get_list("src")
fuel = minetest.get_craft_result({method = "fuel", width = 1, items = fuellist})
--to--
fuel, afterfuel = minetest.get_craft_result({method = "fuel", width = 1, items = fuellist})
local stack = inv:get_stack("fuel", 1)
stack:take_item()
inv:set_stack("fuel", 1, stack)
--to--
inv:set_stack("fuel", 1, afterfuel.items[1])
Code: Select all
(line 103)
minetest.register_craft({
type = "fuel",
recipe = "bucket:bucket_lava",
burntime = 60,
})
--to--
minetest.register_craft({
type = "fuel",
recipe = "bucket:bucket_lava",
burntime = 60,
replacements = {{"bucket:bucket_lava", "bucket:bucket_empty"}},
})