Cristiano Magro
2021-09-03 6194cf7610bbdc63ec635522ed81f0b1d798785e
wrench/init.lua
@@ -24,10 +24,7 @@
local function get_meta_type(name, metaname)
   local def = wrench.registered_nodes[name]
   if not def or not def.metas or not def.metas[metaname] then
      return nil
   end
   return def.metas[metaname]
   return def and def.metas and def.metas[metaname] or nil
end
local function get_pickup_name(name)
@@ -42,6 +39,14 @@
   local data = itemstack:get_meta():get_string("data")
   data = (data ~= "" and data) or   itemstack:get_metadata()
   data = minetest.deserialize(data)
   if not data then
      minetest.remove_node(pos)
      minetest.log("error", placer:get_player_name().." wanted to place "..
            name.." at "..minetest.pos_to_string(pos)..
            ", but it had no data.")
      minetest.log("verbose", "itemstack: "..itemstack:to_string())
      return true
   end
   minetest.set_node(pos, {name = data.name, param2 = node.param2})
   for name, value in pairs(data.metas) do
      local meta_type = get_meta_type(data.name, name)
@@ -115,7 +120,7 @@
         return
      end
      local meta = minetest.get_meta(pos)
      if def.owned then
      if def.owned and not minetest.check_player_privs(placer, "protection_bypass") then
         local owner = meta:get_string("owner")
         if owner and owner ~= player_name then
            minetest.log("action", player_name..