From d43b79f4d2c4eb214f63c465e73c494a6d00ece1 Mon Sep 17 00:00:00 2001 From: wsor4035 <24964441+wsor4035@users.noreply.github.com> Date: Mon, 1 May 2023 20:00:15 -0400 Subject: [PATCH] fix decoration ids being invalid when mods clear the registered decorations --- init.lua | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/init.lua b/init.lua index 1cf1663..1e5eebe 100644 --- a/init.lua +++ b/init.lua @@ -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)