d-stephane
2019-08-26 768fbecc641325eedcca6f1abcf5d1aec4a7e4f1
technic/tools/tree_tap.lua
@@ -1,15 +1,12 @@
local S = technic.getter
local mesecons_materials = minetest.get_modpath("mesecons_materials")
minetest.register_tool("technic:treetap", {
   description = S("Tree Tap"),
   inventory_image = "technic_tree_tap.png",
   on_use = function(itemstack, user, pointed_thing)
      if pointed_thing.type ~= "node" then
         return
      end
      local inv = user:get_inventory()
      if not inv:room_for_item("main", ItemStack("technic:raw_latex")) then
         return
      end
      local pos = pointed_thing.under
@@ -23,15 +20,17 @@
         return
      end
      node.name = "moretrees:rubber_tree_trunk_empty"
      inv:add_item("main", ItemStack("technic:raw_latex"))
      minetest.swap_node(pos, node)
      local item_wear = tonumber(itemstack:get_wear())
      item_wear = item_wear + 819
      if item_wear > 65535 then
         itemstack:clear()
         return itemstack
      minetest.handle_node_drops(pointed_thing.above, {"technic:raw_latex"}, user)
      if not technic.creative_mode then
         local item_wear = tonumber(itemstack:get_wear())
         item_wear = item_wear + 819
         if item_wear > 65535 then
            itemstack:clear()
            return itemstack
         end
         itemstack:set_wear(item_wear)
      end
      itemstack:set_wear(item_wear)
      return itemstack
   end,
})
@@ -43,17 +42,19 @@
      {"",               "default:stick", "default:stick"}
   },
})
minetest.register_craftitem("technic:raw_latex", {
   description = S("Raw Latex"),
   inventory_image = "technic_raw_latex.png",
})
minetest.register_craft({
   type = "cooking",
   output = "technic:rubber",
   recipe = "technic:raw_latex",
})
if mesecons_materials then
   minetest.register_craft({
      type = "cooking",
      recipe = "technic:raw_latex",
      output = "mesecons_materials:glue",
   })
end
minetest.register_craftitem("technic:rubber", {
   description = S("Rubber Fiber"),
@@ -61,6 +62,7 @@
})
minetest.register_abm({
   label = "Tools: tree tap",
   nodenames = {"moretrees:rubber_tree_trunk_empty"},
   interval = 60,
   chance = 15,