Call on_rightclick from buckets
authorZeg9 <dazeg9@gmail.com>
Sat, 1 Jun 2013 11:40:02 +0000 (13:40 +0200)
committerPilzAdam <pilzadam@minetest.net>
Thu, 11 Jul 2013 00:30:47 +0000 (02:30 +0200)
mods/bucket/init.lua

index 5843bf77d325b532a0053cdc28719427be164bf5..c3f20b3a669b61fd59fabe8d513c273cdc20dd46 100644 (file)
@@ -44,6 +44,15 @@ function bucket.register_liquid(source, flowing, itemname, inventory_image, name
                                if pointed_thing.type ~= "node" then
                                        return
                                end
+                               
+                               -- Call on_rightclick if the pointed node defines it
+                               if user and not user:get_player_control().sneak then
+                                       local n = minetest.get_node(pointed_thing.under)
+                                       local nn = n.name
+                                       if minetest.registered_nodes[nn] and minetest.registered_nodes[nn].on_rightclick then
+                                               return minetest.registered_nodes[nn].on_rightclick(pointed_thing.under, n, user, itemstack) or itemstack
+                                       end
+                               end
 
                                local place_liquid = function(pos, node, source, flowing, fullness)
                                        if math.floor(fullness/128) == 1 or (not minetest.setting_getbool("liquid_finite")) then