Addition of inventory getPaperdollItemCount method.

Contributed by Sahar.
This commit is contained in:
MobiusDevelopment
2020-06-14 22:52:11 +00:00
parent 01bb078cdd
commit 860d393948
30 changed files with 180 additions and 15 deletions

View File

@ -211,6 +211,6 @@ public class ArmorSet
*/
public long getPiecesCount(PlayerInstance player, Function<ItemInstance, Integer> idProvider)
{
return player.getInventory().getPaperdollItems(item -> _requiredItems.contains(idProvider.apply(item))).size();
return player.getInventory().getPaperdollItemCount(item -> _requiredItems.contains(idProvider.apply(item)));
}
}

View File

@ -2212,4 +2212,15 @@ public abstract class Inventory extends ItemContainer
}
return Arrays.stream(_paperdoll).filter(filter).collect(Collectors.toCollection(LinkedList::new));
}
@SafeVarargs
public final long getPaperdollItemCount(Predicate<ItemInstance>... filters)
{
Predicate<ItemInstance> filter = Objects::nonNull;
for (Predicate<ItemInstance> additionalFilter : filters)
{
filter = filter.and(additionalFilter);
}
return Arrays.stream(_paperdoll).filter(filter).count();
}
}