diff --git a/3d_armor/api.lua b/3d_armor/api.lua index 4fd1900..0ddd78c 100644 --- a/3d_armor/api.lua +++ b/3d_armor/api.lua @@ -196,8 +196,10 @@ armor.init_player_armor = function(self, player) end, allow_put = function(inv, listname, index, stack, player) local def = stack:get_definition() or {} + local allowed = 0 for _, element in pairs(armor.elements) do if def.groups["armor_"..element] then + allowed = 1 for i = 1, 6 do local item = inv:get_stack("armor", i):get_name() if minetest.get_item_group(item, "armor_"..element) > 0 then @@ -206,7 +208,7 @@ armor.init_player_armor = function(self, player) end end end - return 1 + return allowed end, allow_take = function(inv, listname, index, stack, player) return stack:get_count()