check if additional items already registered

master
A. Demant 2019-02-06 17:01:13 +01:00
parent b7c20c32eb
commit 0282370f39
2 changed files with 13 additions and 9 deletions

12
api.lua
View File

@ -44,7 +44,11 @@ M.add_treasure=function(name,tdef)
end
M.add_drop=function(name,drop_def)
if drop_def.name == nil then
if drop_def.items == nil then
return
end
if minetest.registered_items[drop_def.items[1]:split(" ")[1]] == nil then
print(dump2(drop_def.items[1]:split(" ")[1]))
return
end
if drop_def.rarety == nil then
@ -59,9 +63,9 @@ M.add_drop=function(name,drop_def)
M.add_treasure(name,tdef)
else
local tdef={}
tdef.drop=table.copy(minetest.registered_items[name])
table.insert(tdef.drop,drop_def)
minetest.override_item(name,tdef)
tdef=table.copy(minetest.registered_items[name])
table.insert(tdef.drop.items,math.random(1,#tdef.drop.items),drop_def)
minetest.register_node(":"..name,tdef)
end
end

View File

@ -1,6 +1,6 @@
treasures.add_treasure("treasures:treasure1", {
description = "".. core.colorize("#BFFFFF", "Wooden loot crate\n")..core.colorize("#A0A0A0", "tier: 2 (uncommon)"),
tiles = {"minerdream_treasure1.png"},
tiles = {"treasures_treasure1.png"},
groups = {cracky = 3, choppy = 3},
drop = {
max_items = 5,
@ -21,7 +21,7 @@ treasures.add_treasure("treasures:treasure1", {
treasures.add_treasure("treasures:treasure2", {
description = "".. core.colorize("#00FFFF", "Sturdy wooden loot crate\n")..core.colorize("#A0A0A0", "tier: 3 (almost rare)"),
tiles = {"minerdream_treasure2.png"},
tiles = {"treasures_treasure2.png"},
groups = {cracky = 2, choppy = 2},
drop = {
max_items = 5,
@ -41,7 +41,7 @@ treasures.add_treasure("treasures:treasure2", {
treasures.add_treasure("treasures:treasure3", {
description = "".. core.colorize("#40FF80", "Reinforced wooden loot crate\n")..core.colorize("#A0A0A0", "tier: 4 (rare)"),
tiles = {"minerdream_treasure3.png"},
tiles = {"treasures_treasure3.png"},
groups = {cracky = 1, choppy = 1},
drop = {
max_items = 5,
@ -57,7 +57,7 @@ treasures.add_treasure("treasures:treasure3", {
treasures.add_treasure("treasures:treasure4", {
description = "".. core.colorize("#0040FF", "Well-reinforced wooden loot crate\n")..core.colorize("#A0A0A0", "tier: 5 (extra rare)"),
tiles = {"minerdream_treasure4.png"},
tiles = {"treasures_treasure4.png"},
groups = {cracky = 4, choppy = 1},
drop = {
max_items = 5,
@ -72,7 +72,7 @@ treasures.add_treasure("treasures:treasure4", {
treasures.add_treasure("treasures:treasure5", {
description = "".. core.colorize("#00FF00", "Steel loot crate\n")..core.colorize("#A0A0A0", "tier: 6 (epic)"),
tiles = {"minerdream_treasure5.png"},
tiles = {"treasures_treasure5.png"},
groups = {cracky = 5},
drop = {
max_items = 5,