From e5194fa7613f91d511ce557b0eaacfedf34ec763 Mon Sep 17 00:00:00 2001 From: Elias Fleckenstein Date: Tue, 22 Dec 2020 16:54:05 +0100 Subject: [PATCH] Initial Commit --- init.lua | 29 +++++++++++++++++++++++++++++ mod.conf | 4 ++++ 2 files changed, 33 insertions(+) create mode 100644 init.lua create mode 100644 mod.conf diff --git a/init.lua b/init.lua new file mode 100644 index 0000000..28941cc --- /dev/null +++ b/init.lua @@ -0,0 +1,29 @@ +local spawner_def = minetest.registered_nodes["mcl_mobspawners:spawner"] +spawner_def.on_place = nil + +minetest.override_item("mcl_mobspawners:spawner", { + after_place_node = function(pos, placer, itemstack, pointed_thing) + local meta = minetest.get_meta(pos) + local itemmeta = itemstack:get_meta() + meta:set_string("name", itemmeta:get_string("name")) + meta:set_string("description", itemmeta:get_string("description")) + local fields = itemmeta:to_table().fields + mcl_mobspawners.setup_spawner(pos, fields.Mob, fields.MinLight, fields.MaxLight, fields.MaxMobsInArea, fields.PlayerDistance, fields.YOffset) + end, + after_dig_node = function(pos, node, meta, digger) + local itemstack = ItemStack("mcl_mobspawners:spawner") + itemstack:get_meta():from_table(meta) + tt.reload_itemstack_description(itemstack) + minetest.add_item(pos, itemstack) + end +}) + +tt.register_snippet(function(itemstring, _, itemstack) + if itemstring ~= "mcl_mobspawners:spawner" or not itemstack then + return + end + local mob = itemstack:get_meta():get_string("Mob") + if mob ~= "" then + return "Mob type: " .. mob + end +end) diff --git a/mod.conf b/mod.conf new file mode 100644 index 0000000..da6ace7 --- /dev/null +++ b/mod.conf @@ -0,0 +1,4 @@ +name = drop_spawners +author = Fleckenstein +description = Make mob spawners diggable and placeable for all players +depends = mcl_mobspawners -- 2.44.0