fix decoration ids being invalid when mods clear the registered decorations

This commit is contained in:
wsor4035 2023-05-01 20:00:15 -04:00
parent 288870bc8d
commit d43b79f4d2
1 changed files with 11 additions and 4 deletions

View File

@ -213,10 +213,16 @@ if moretrees.enable_poplar then
minetest.register_decoration(translate_biome_defs(moretrees.poplar_small_biome_2, "popular", 5))
end
for k, v in pairs(deco_ids) do
deco_ids[k] = minetest.get_decoration_id(v)
end
minetest.set_gen_notify("decoration", deco_ids)
--[[
this is purposefully wrapped in a on mods loaded callback to that it gets the proper ids
if other mods clear the registered decorations
]]
minetest.register_on_mods_loaded(function()
for k, v in pairs(deco_ids) do
deco_ids[k] = minetest.get_decoration_id(v)
end
minetest.set_gen_notify("decoration", deco_ids)
end)
minetest.register_on_generated(function(minp, maxp, blockseed)
local g = minetest.get_mapgen_object("gennotify")
@ -234,6 +240,7 @@ minetest.register_on_generated(function(minp, maxp, blockseed)
--minetest.chat_send_all("yay")
local timer = minetest.get_node_timer({x=pos.x, y=pos.y+1, z=pos.z})
timer:start(math.random(2,10))
--minetest.chat_send_all("generated")
--minetest.set_node(pos, {name="default:stone"})
end
end)