- function minetest.handle_node_drops(pos, drops, digger)
- if not digger or not digger:is_player() then
- return
- end
- local inv = digger:get_inventory()
- if inv then
- for _, item in ipairs(drops) do
- item = ItemStack(item):get_name()
- if not inv:contains_item("main", item) then
- inv:add_item("main", item)
- end
+-- Don't pick up if the item is already in the inventory
+function minetest.handle_node_drops(pos, drops, digger)
+ if not digger or not digger:is_player() or
+ not creative.is_enabled_for(digger:get_player_name()) then
+ return
+ end
+ local inv = digger:get_inventory()
+ if inv then
+ for _, item in ipairs(drops) do
+ item = ItemStack(item):get_name()
+ if not inv:contains_item("main", item) then
+ inv:add_item("main", item)