From: ShadowNinja Date: Tue, 7 Jan 2014 02:15:44 +0000 (-0500) Subject: Pass pointed_thing to after_place_node X-Git-Url: http://81.2.79.47:8989/gitweb/?a=commitdiff_plain;h=c46574f30f31fc186087f05d9100845d44319795;p=zefram%2Fminetest%2Fminetest_engine.git Pass pointed_thing to after_place_node --- diff --git a/builtin/item.lua b/builtin/item.lua index 0df0335d..35ad9e6e 100644 --- a/builtin/item.lua +++ b/builtin/item.lua @@ -272,7 +272,13 @@ function minetest.item_place_node(itemstack, placer, pointed_thing, param2) if def.after_place_node then -- Copy place_to because callback can modify it local place_to_copy = {x=place_to.x, y=place_to.y, z=place_to.z} - if def.after_place_node(place_to_copy, placer, itemstack) then + local pointed_thing_copy = { + type = pointed_thing.type, + under = pointed_thing.under, + above = pointed_thing.above + } + if def.after_place_node(place_to_copy, placer, itemstack, + pointed_thing_copy) then take_item = false end end diff --git a/doc/lua_api.txt b/doc/lua_api.txt index 2eec0b95..dda9f7bc 100644 --- a/doc/lua_api.txt +++ b/doc/lua_api.txt @@ -2188,7 +2188,7 @@ Node definition (register_node) ^ Node destructor; always called after removing node ^ default: nil - after_place_node = func(pos, placer, itemstack), + after_place_node = func(pos, placer, itemstack, pointed_thing), ^ Called after constructing node when node was placed using minetest.item_place_node / minetest.place_node ^ If return true no item is taken from itemstack