diff options
Diffstat (limited to 'mesecons')
-rw-r--r-- | mesecons/services.lua | 7 | ||||
-rw-r--r-- | mesecons/util.lua | 1 |
2 files changed, 8 insertions, 0 deletions
diff --git a/mesecons/services.lua b/mesecons/services.lua index 831f6f3..b1388ec 100644 --- a/mesecons/services.lua +++ b/mesecons/services.lua @@ -63,6 +63,13 @@ mesecon.on_dignode = function(pos, node) mesecon.execute_autoconnect_hooks_queue(pos, node) end +function mesecon.on_blastnode(pos, intensity) + local node = minetest.get_node(pos) + minetest.remove_node(pos) + mesecon.on_dignode(pos, node) + return minetest.get_node_drops(node.name, "") +end + minetest.register_on_placenode(mesecon.on_placenode) minetest.register_on_dignode(mesecon.on_dignode) diff --git a/mesecons/util.lua b/mesecons/util.lua index 39f5696..a22d664 100644 --- a/mesecons/util.lua +++ b/mesecons/util.lua @@ -178,6 +178,7 @@ end function mesecon.register_node(name, spec_common, spec_off, spec_on) spec_common.drop = spec_common.drop or name .. "_off" + spec_common.on_blast = spec_common.on_blast or mesecon.on_blastnode spec_common.__mesecon_basename = name spec_on.__mesecon_state = "on" spec_off.__mesecon_state = "off" |