BUG Fix: Lava as fuel for lava enabled buckets

master
daretmavi 2021-01-24 11:36:22 +01:00
parent e5957807b8
commit 1032aca6fc
2 changed files with 36 additions and 18 deletions

View File

@ -1,3 +1,8 @@
--------------------------------------------------
Ver. 6.1 [24.01.2021]
BUG Fix: Lava as fuel for lava enabled buckets
--------------------------------------------------
Ver. 6.0 [23.01.2021]

View File

@ -10,6 +10,7 @@ bucket = {}
bucket.empty = "bucket:bucket_empty" -- empty bucket name prefix
bucket.water = "bucket:bucket_water_uni" -- water bucket name prefix
bucket.lava = "bucket:bucket_lava_uni" -- lava bucket name prefix
bucket.default = {} -- default bucket names
bucket.default_material = minetest.settings:get("bucket_default_type") or "steel" -- default material for bucket
bucket.liquids = {} -- all buckets for defined liquid
@ -79,15 +80,20 @@ local craft_ingreds = {
}
}
-- Default bucket names
bucket.default.empty = bucket.empty.."_"..bucket.default_material
bucket.default.water = bucket.water.."_"..bucket.default_material
bucket.default.lava = bucket.lava.."_"..bucket.default_material
minetest.log(dump(bucket.default))
-- Bucket aliases - default bucket ist steel
minetest.register_alias("bucket", bucket.empty.."_"..bucket.default_material)
minetest.register_alias("bucket_water", bucket.water.."_"..bucket.default_material)
minetest.register_alias("bucket_lava", bucket.lava.."_"..bucket.default_material)
minetest.register_alias("bucket", bucket.default.empty)
minetest.register_alias("bucket_water", bucket.default.water)
minetest.register_alias("bucket_lava", bucket.default.lava)
-- for compatibility witk old bucket mod
minetest.register_alias("bucket:bucket_empty", bucket.empty.."_"..bucket.default_material)
minetest.register_alias("bucket:bucket_water", bucket.water.."_"..bucket.default_material)
minetest.register_alias("bucket:bucket_lava", bucket.lava.."_"..bucket.default_material)
minetest.register_alias("bucket:bucket_empty", bucket.default.empty)
minetest.register_alias("bucket:bucket_water", bucket.default.water)
minetest.register_alias("bucket:bucket_lava", bucket.default.lava)
-- set new recipe if enabled
local use_clasic_recipe = minetest.settings:get_bool("bucket_use_clasic_recipe", true)
@ -299,7 +305,7 @@ for mat_name, mat in pairs(craft_ingreds) do
-- Capitalise first character
local Name = mat_name:gsub("^%l", string.upper)
-- register all empty buckets
bucket_empty = bucket.empty.."_"..mat_name
local bucket_empty = bucket.empty.."_"..mat_name
minetest.register_craftitem(bucket_empty, {
description = S(Name.." ".."Empty Bucket"),
--inventory_image = "bucket.png",
@ -475,24 +481,31 @@ bucket.register_liquid(
----
-- TODO
minetest.register_craft({
type = "fuel",
recipe = bucket.lava,
burntime = 60,
replacements = {{bucket.lava, bucket.empty}},
})
for mat_name, mat in pairs(craft_ingreds) do
local bucket_empty = bucket.empty.."_"..mat_name
local bucket_lava = bucket.lava.."_"..mat_name
if mat["enabled"] and mat["groups"].get_lava==1 then
minetest.register_craft({
type = "fuel",
recipe = bucket_lava,
burntime = 60,
replacements = {{bucket_lava, bucket_empty}},
})
end
end
-- TODO
-- TODO - add more bucket types, check if lava is allowed
-- Register buckets as dungeon loot
if minetest.global_exists("dungeon_loot") then
dungeon_loot.register({
{name = bucket.empty, chance = 0.55},
{name = bucket.default.empty, chance = 0.55},
-- water in deserts/ice or above ground, lava otherwise
{name = bucket.water, chance = 0.45,
{name = bucket.default.water, chance = 0.45,
types = {"sandstone", "desert", "ice"}},
{name = bucket.water, chance = 0.45, y = {0, 32768},
{name = bucket.default.water, chance = 0.45, y = {0, 32768},
types = {"normal"}},
{name = bucket.lava, chance = 0.45, y = {-32768, -1},
{name = bucket.default.lava, chance = 0.45, y = {-32768, -1},
types = {"normal"}},
})
end