From f17dc1363008dbc7f2d8faccb72e560bbf17223d Mon Sep 17 00:00:00 2001 From: C1ffisme Date: Thu, 14 Apr 2016 09:18:14 -0500 Subject: [PATCH] Put the node definition search where it belongs When people just want to get water, it could be a bit of an annoyance to search every time you punch water. Now you only search if the node isn't liquid. --- mods/bucket/init.lua | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/mods/bucket/init.lua b/mods/bucket/init.lua index bb233685..0f1850a8 100644 --- a/mods/bucket/init.lua +++ b/mods/bucket/init.lua @@ -119,7 +119,6 @@ minetest.register_craftitem("bucket:bucket_empty", { local node = minetest.get_node(pointed_thing.under) local liquiddef = bucket.liquids[node.name] local item_count = user:get_wielded_item():get_count() - local node_def = minetest.registered_nodes[node.name] if liquiddef ~= nil and liquiddef.itemname ~= nil @@ -154,14 +153,17 @@ minetest.register_craftitem("bucket:bucket_empty", { minetest.add_node(pointed_thing.under, {name="air"}) return ItemStack(giving_back) - elseif node_def then - -- Buckets will run a node's on_punch function if it is not liquid. - if node_def.on_punch then - node_def.on_punch( - pointed_thing.under, - minetest.get_node(pointed_thing.under), - user, - pointed_thing) + else + local node_def = minetest.registered_nodes[node.name] + if node_def then + -- Buckets will run a node's on_punch function if it is not liquid. + if node_def.on_punch then + node_def.on_punch( + pointed_thing.under, + minetest.get_node(pointed_thing.under), + user, + pointed_thing) + end end end end,