aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--builtin/item.lua8
-rw-r--r--doc/lua_api.txt2
2 files changed, 8 insertions, 2 deletions
diff --git a/builtin/item.lua b/builtin/item.lua
index 0df0335d9..35ad9e6e4 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 2eec0b958..dda9f7bcd 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