From aa46e5c5e7285a8ac5c9e096a55c3fa02b90280e Mon Sep 17 00:00:00 2001
From: jordan4ibanez <jordan4ibanez@gmail.com>
Date: Sat, 15 Dec 2012 15:32:17 -0500
Subject: [PATCH] Fix item entity's collision with nodeboxes

---
 builtin/item_entity.lua | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/builtin/item_entity.lua b/builtin/item_entity.lua
index 2b12764f1..46415e538 100644
--- a/builtin/item_entity.lua
+++ b/builtin/item_entity.lua
@@ -84,8 +84,9 @@ minetest.register_entity("__builtin:item", {
 		local p = self.object:getpos()
 		p.y = p.y - 0.3
 		local nn = minetest.env:get_node(p).name
-		-- If node is not registered or node is walkably solid
-		if not minetest.registered_nodes[nn] or minetest.registered_nodes[nn].walkable then
+		-- If node is not registered or node is walkably solid and resting on nodebox
+		local v = self.object:getvelocity()
+		if not minetest.registered_nodes[nn] or minetest.registered_nodes[nn].walkable and v.y == 0 then
 			if self.physical_state then
 				self.object:setvelocity({x=0,y=0,z=0})
 				self.object:setacceleration({x=0, y=0, z=0})