63 lines
1.7 KiB
Lua
63 lines
1.7 KiB
Lua
PyuTestCore.registered_lootboxes = {}
|
|
PyuTestCore.make_lootbox = function (name, dname, items)
|
|
local id = name.."_lootbox"
|
|
minetest.register_node(id, {
|
|
description = Translate(dname .. " Lootbox"),
|
|
groups = {
|
|
choppy = PyuTestCore.BLOCK_NORMAL,
|
|
not_in_creative_inventory = 1
|
|
},
|
|
tiles = {"pyutest-crate.png"},
|
|
sounds = PyuTestCore.make_node_sounds(),
|
|
drop = "",
|
|
after_destruct = function (pos)
|
|
for _, v in pairs(items) do
|
|
minetest.add_item(pos, v)
|
|
end
|
|
|
|
minetest.sound_play("lootbox_unlock", {
|
|
pos = pos,
|
|
gain = 1
|
|
})
|
|
minetest.remove_node(pos)
|
|
end
|
|
})
|
|
PyuTestCore.registered_lootboxes[name] = {
|
|
id = id,
|
|
items = items
|
|
}
|
|
end
|
|
|
|
PyuTestCore.make_lootbox("pyutest_core:trash", "Trash", {
|
|
ItemStack("pyutest_core:deadbush 6"),
|
|
ItemStack("pyutest_core:bone 3"),
|
|
ItemStack("pyutest_core:ash 2")
|
|
})
|
|
|
|
PyuTestCore.make_lootbox("pyutest_core:resource", "Resource", {
|
|
ItemStack("pyutest_core:gunpowder 3"),
|
|
ItemStack("pyutest_core:stick 4"),
|
|
ItemStack("pyutest_core:sugar 2"),
|
|
ItemStack("pyutest_core:tree_sapling 3"),
|
|
ItemStack("pyutest_core:apple 3"),
|
|
ItemStack("pyutest_core:string 5")
|
|
})
|
|
|
|
PyuTestCore.make_lootbox("pyutest_core:griefer", "Griefer's Dream", {
|
|
ItemStack("pyutest_core:tnt 3"),
|
|
ItemStack("pyutest_core:bomb 2")
|
|
})
|
|
|
|
PyuTestCore.make_lootbox("pyutest_core:lighting", "Lighting", {
|
|
ItemStack("pyutest_core:light 2"),
|
|
ItemStack("pyutest_core:torch 5")
|
|
})
|
|
|
|
PyuTestCore.make_lootbox("pyutest_core:color", "Color", {
|
|
ItemStack("pyutest_core:green_dye 2"),
|
|
ItemStack("pyutest_core:pink_dye 3"),
|
|
ItemStack("pyutest_core:white_dye 1"),
|
|
ItemStack("pyutest_core:black_dye 3"),
|
|
ItemStack("pyutest_core:brown_dye 2")
|
|
})
|