summaryrefslogtreecommitdiff
path: root/technic/technic/tools/tree_tap.lua
diff options
context:
space:
mode:
authorVanessa Ezekowitz <vanessaezekowitz@gmail.com>2016-04-01 20:02:19 -0400
committerVanessa Ezekowitz <vanessaezekowitz@gmail.com>2016-04-01 21:09:33 -0400
commitda66780a569712c23ae4f2996cfb4608a9f9d69d (patch)
tree217556029a78bc23ad4564720afc86de97228a04 /technic/technic/tools/tree_tap.lua
parent615b22df4d423aded3613db7716943a2f389b047 (diff)
downloaddreambuilder_modpack-da66780a569712c23ae4f2996cfb4608a9f9d69d.tar
dreambuilder_modpack-da66780a569712c23ae4f2996cfb4608a9f9d69d.tar.gz
dreambuilder_modpack-da66780a569712c23ae4f2996cfb4608a9f9d69d.tar.bz2
dreambuilder_modpack-da66780a569712c23ae4f2996cfb4608a9f9d69d.tar.xz
dreambuilder_modpack-da66780a569712c23ae4f2996cfb4608a9f9d69d.zip
copy all standard Dreambuilder mods in from the old subgame
(exactly as last supplied there, updates to these mods will follow later)
Diffstat (limited to 'technic/technic/tools/tree_tap.lua')
-rw-r--r--technic/technic/tools/tree_tap.lua75
1 files changed, 75 insertions, 0 deletions
diff --git a/technic/technic/tools/tree_tap.lua b/technic/technic/tools/tree_tap.lua
new file mode 100644
index 0000000..e84fe33
--- /dev/null
+++ b/technic/technic/tools/tree_tap.lua
@@ -0,0 +1,75 @@
+
+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 pos = pointed_thing.under
+ if minetest.is_protected(pos, user:get_player_name()) then
+ minetest.record_protection_violation(pos, user:get_player_name())
+ return
+ end
+ local node = minetest.get_node(pos)
+ local node_name = node.name
+ if node_name ~= "moretrees:rubber_tree_trunk" then
+ return
+ end
+ node.name = "moretrees:rubber_tree_trunk_empty"
+ minetest.swap_node(pos, node)
+ 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
+ return itemstack
+ end,
+})
+
+minetest.register_craft({
+ output = "technic:treetap",
+ recipe = {
+ {"pipeworks:tube_1", "group:wood", "default:stick"},
+ {"", "default:stick", "default:stick"}
+ },
+})
+
+minetest.register_craftitem("technic:raw_latex", {
+ description = S("Raw Latex"),
+ inventory_image = "technic_raw_latex.png",
+})
+
+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"),
+ inventory_image = "technic_rubber.png",
+})
+
+minetest.register_abm({
+ nodenames = {"moretrees:rubber_tree_trunk_empty"},
+ interval = 60,
+ chance = 15,
+ action = function(pos, node)
+ if minetest.find_node_near(pos, (moretrees and moretrees.leafdecay_radius) or 5, {"moretrees:rubber_tree_leaves"}) then
+ node.name = "moretrees:rubber_tree_trunk"
+ minetest.swap_node(pos, node)
+ end
+ end
+})
+