Fix to the chainsaw. handle_node drops should no longer become nil.

This commit is contained in:
kpoppel 2013-06-12 22:08:23 +02:00
parent 802db28dc3
commit a27b59dde5
1 changed files with 10 additions and 3 deletions

View File

@ -138,6 +138,13 @@ if( minetest.get_modpath("growing_cactus") ~= nil ) then
timber_nodenames["growing_cactus:branch_xx"] = true
end
-- Support farming_plus if it is there
if( minetest.get_modpath("farming_plus") ~= nil ) then
if chainsaw_leaves == true then
timber_nodenames["farming_plus:cocoa_leaves"] = true
end
end
-- Table for saving what was sawed down
local produced
@ -145,6 +152,9 @@ local produced
chainsaw_dig_it = function(pos, player,current_charge)
local remaining_charge=current_charge
-- Save the currently installed dropping mechanism so we can restore it.
local original_handle_node_drops = minetest.handle_node_drops
-- A bit of trickery here: use a different node drop callback
-- and restore the original afterwards.
minetest.handle_node_drops = chainsaw_handle_node_drops
@ -195,9 +205,6 @@ chainsaw_handle_node_drops = function(pos, drops, digger)
end
end
-- Save the currently installed dropping mechanism so we can restore it.
local original_handle_node_drops = minetest.handle_node_drops
-- This function does all the hard work. Recursively we dig the node at hand
-- if it is in the table and then search the surroundings for more stuff to dig.
recursive_dig = function(pos, remaining_charge, player)