summaryrefslogtreecommitdiff
path: root/tube_registration.lua
diff options
context:
space:
mode:
Diffstat (limited to 'tube_registration.lua')
-rw-r--r--tube_registration.lua12
1 files changed, 12 insertions, 0 deletions
diff --git a/tube_registration.lua b/tube_registration.lua
index a77154a..60d7ff8 100644
--- a/tube_registration.lua
+++ b/tube_registration.lua
@@ -113,6 +113,18 @@ local register_one_tube = function(name, tname, dropname, desc, plain, noctrs, e
connect_sides = {front = 1, back = 1, left = 1, right = 1, top = 1, bottom = 1},
priority = 50
},
+ on_punch = function(pos, node, player, pointed)
+ local playername = player:get_player_name()
+ if minetest.is_protected(pos, playername) and not minetest.check_player_privs(playername, {protection_bypass=true}) then
+ return minetest.node_punch(pos, node, player, pointed)
+ end
+ if pipeworks.check_and_wear_hammer(player) then
+ local wieldname = player:get_wielded_item():get_name()
+ pipeworks.logger(string.format("%s struck a tube at %s with %s to break it.", playername, minetest.pos_to_string(pos), wieldname))
+ pipeworks.break_tube(pos)
+ end
+ return minetest.node_punch(pos, node, player, pointed)
+ end,
after_place_node = pipeworks.after_place,
after_dig_node = pipeworks.after_dig,
on_rotate = false,