Fix item collection

Broken since 5.3.0-dev

Co-authored-by: SmallJoker <mk939@ymail.com>
This commit is contained in:
sfan5 2020-05-29 19:14:06 +02:00 committed by SmallJoker
parent c8f7cae2c8
commit 56f5b18dae
1 changed files with 7 additions and 4 deletions

View File

@ -340,10 +340,13 @@ function cart_entity:on_step(dtime)
if self.punched then
-- Collect dropped items
for _, obj_ in pairs(minetest.get_objects_inside_radius(pos, 1)) do
if not obj_:is_player() and
obj_:get_luaentity() and
not obj_:get_luaentity().physical_state and
obj_:get_luaentity().name == "__builtin:item" then
local ent = obj_:get_luaentity()
-- Careful here: physical_state and disable_physics are item-internal APIs
if ent and ent.name == "__builtin:item" and ent.physical_state then
-- Check API to support 5.2.0 and older
if ent.disable_physics then
ent:disable_physics()
end
obj_:set_attach(self.object, "", {x=0, y=0, z=0}, {x=0, y=0, z=0})
self.attached_items[#self.attached_items + 1] = obj_