diff --git a/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/model/ArmorSet.java b/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/model/ArmorSet.java index 283c5e5984..1eadae30e9 100644 --- a/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/model/ArmorSet.java +++ b/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/model/ArmorSet.java @@ -211,6 +211,6 @@ public class ArmorSet */ public long getPiecesCount(PlayerInstance player, Function idProvider) { - return player.getInventory().getPaperdollItems(item -> _requiredItems.contains(idProvider.apply(item))).size(); + return player.getInventory().getPaperdollItemCount(item -> _requiredItems.contains(idProvider.apply(item))); } } diff --git a/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java b/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java index 9ebd6a6d05..d3ae690656 100644 --- a/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java +++ b/L2J_Mobius_1.0_Ertheia/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java @@ -2206,4 +2206,15 @@ public abstract class Inventory extends ItemContainer } return Arrays.stream(_paperdoll).filter(filter).collect(Collectors.toCollection(LinkedList::new)); } + + @SafeVarargs + public final long getPaperdollItemCount(Predicate... filters) + { + Predicate filter = Objects::nonNull; + for (Predicate additionalFilter : filters) + { + filter = filter.and(additionalFilter); + } + return Arrays.stream(_paperdoll).filter(filter).count(); + } } diff --git a/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/model/ArmorSet.java b/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/model/ArmorSet.java index 283c5e5984..1eadae30e9 100644 --- a/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/model/ArmorSet.java +++ b/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/model/ArmorSet.java @@ -211,6 +211,6 @@ public class ArmorSet */ public long getPiecesCount(PlayerInstance player, Function idProvider) { - return player.getInventory().getPaperdollItems(item -> _requiredItems.contains(idProvider.apply(item))).size(); + return player.getInventory().getPaperdollItemCount(item -> _requiredItems.contains(idProvider.apply(item))); } } diff --git a/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java b/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java index 018fadb399..92390024b5 100644 --- a/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java +++ b/L2J_Mobius_2.5_Underground/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java @@ -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... filters) + { + Predicate filter = Objects::nonNull; + for (Predicate additionalFilter : filters) + { + filter = filter.and(additionalFilter); + } + return Arrays.stream(_paperdoll).filter(filter).count(); + } } diff --git a/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/model/ArmorSet.java b/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/model/ArmorSet.java index 283c5e5984..1eadae30e9 100644 --- a/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/model/ArmorSet.java +++ b/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/model/ArmorSet.java @@ -211,6 +211,6 @@ public class ArmorSet */ public long getPiecesCount(PlayerInstance player, Function idProvider) { - return player.getInventory().getPaperdollItems(item -> _requiredItems.contains(idProvider.apply(item))).size(); + return player.getInventory().getPaperdollItemCount(item -> _requiredItems.contains(idProvider.apply(item))); } } diff --git a/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java b/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java index 018fadb399..92390024b5 100644 --- a/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java +++ b/L2J_Mobius_3.0_Helios/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java @@ -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... filters) + { + Predicate filter = Objects::nonNull; + for (Predicate additionalFilter : filters) + { + filter = filter.and(additionalFilter); + } + return Arrays.stream(_paperdoll).filter(filter).count(); + } } diff --git a/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/model/ArmorSet.java b/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/model/ArmorSet.java index 283c5e5984..1eadae30e9 100644 --- a/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/model/ArmorSet.java +++ b/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/model/ArmorSet.java @@ -211,6 +211,6 @@ public class ArmorSet */ public long getPiecesCount(PlayerInstance player, Function idProvider) { - return player.getInventory().getPaperdollItems(item -> _requiredItems.contains(idProvider.apply(item))).size(); + return player.getInventory().getPaperdollItemCount(item -> _requiredItems.contains(idProvider.apply(item))); } } diff --git a/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java b/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java index 6e6e582cb4..bb9401f681 100644 --- a/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java +++ b/L2J_Mobius_4.0_GrandCrusade/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java @@ -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... filters) + { + Predicate filter = Objects::nonNull; + for (Predicate additionalFilter : filters) + { + filter = filter.and(additionalFilter); + } + return Arrays.stream(_paperdoll).filter(filter).count(); + } } diff --git a/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/ArmorSet.java b/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/ArmorSet.java index 283c5e5984..1eadae30e9 100644 --- a/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/ArmorSet.java +++ b/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/ArmorSet.java @@ -211,6 +211,6 @@ public class ArmorSet */ public long getPiecesCount(PlayerInstance player, Function idProvider) { - return player.getInventory().getPaperdollItems(item -> _requiredItems.contains(idProvider.apply(item))).size(); + return player.getInventory().getPaperdollItemCount(item -> _requiredItems.contains(idProvider.apply(item))); } } diff --git a/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java b/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java index 8f4fc10cbd..ecc3d52416 100644 --- a/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java +++ b/L2J_Mobius_5.0_Salvation/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java @@ -2225,4 +2225,15 @@ public abstract class Inventory extends ItemContainer } return Arrays.stream(_paperdoll).filter(filter).collect(Collectors.toCollection(LinkedList::new)); } + + @SafeVarargs + public final long getPaperdollItemCount(Predicate... filters) + { + Predicate filter = Objects::nonNull; + for (Predicate additionalFilter : filters) + { + filter = filter.and(additionalFilter); + } + return Arrays.stream(_paperdoll).filter(filter).count(); + } } diff --git a/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/ArmorSet.java b/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/ArmorSet.java index 6c2b212acd..461ceb4090 100644 --- a/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/ArmorSet.java +++ b/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/ArmorSet.java @@ -296,6 +296,6 @@ public class ArmorSet */ public long getPiecesCount(PlayerInstance player, Function idProvider) { - return player.getInventory().getPaperdollItems(item -> _requiredItems.contains(idProvider.apply(item))).size(); + return player.getInventory().getPaperdollItemCount(item -> _requiredItems.contains(idProvider.apply(item))); } } diff --git a/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java b/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java index 18abddcbb4..5a2850f4ad 100644 --- a/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java +++ b/L2J_Mobius_5.5_EtinasFate/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java @@ -2522,4 +2522,15 @@ public abstract class Inventory extends ItemContainer } return Arrays.stream(_paperdoll).filter(filter).collect(Collectors.toCollection(LinkedList::new)); } + + @SafeVarargs + public final long getPaperdollItemCount(Predicate... filters) + { + Predicate filter = Objects::nonNull; + for (Predicate additionalFilter : filters) + { + filter = filter.and(additionalFilter); + } + return Arrays.stream(_paperdoll).filter(filter).count(); + } } diff --git a/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/ArmorSet.java b/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/ArmorSet.java index 6c2b212acd..461ceb4090 100644 --- a/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/ArmorSet.java +++ b/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/ArmorSet.java @@ -296,6 +296,6 @@ public class ArmorSet */ public long getPiecesCount(PlayerInstance player, Function idProvider) { - return player.getInventory().getPaperdollItems(item -> _requiredItems.contains(idProvider.apply(item))).size(); + return player.getInventory().getPaperdollItemCount(item -> _requiredItems.contains(idProvider.apply(item))); } } diff --git a/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java b/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java index 18abddcbb4..5a2850f4ad 100644 --- a/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java +++ b/L2J_Mobius_6.0_Fafurion/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java @@ -2522,4 +2522,15 @@ public abstract class Inventory extends ItemContainer } return Arrays.stream(_paperdoll).filter(filter).collect(Collectors.toCollection(LinkedList::new)); } + + @SafeVarargs + public final long getPaperdollItemCount(Predicate... filters) + { + Predicate filter = Objects::nonNull; + for (Predicate additionalFilter : filters) + { + filter = filter.and(additionalFilter); + } + return Arrays.stream(_paperdoll).filter(filter).count(); + } } diff --git a/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/ArmorSet.java b/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/ArmorSet.java index 6c2b212acd..461ceb4090 100644 --- a/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/ArmorSet.java +++ b/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/ArmorSet.java @@ -296,6 +296,6 @@ public class ArmorSet */ public long getPiecesCount(PlayerInstance player, Function idProvider) { - return player.getInventory().getPaperdollItems(item -> _requiredItems.contains(idProvider.apply(item))).size(); + return player.getInventory().getPaperdollItemCount(item -> _requiredItems.contains(idProvider.apply(item))); } } diff --git a/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java b/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java index e5938d27a8..0852fe84eb 100644 --- a/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java +++ b/L2J_Mobius_7.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java @@ -2506,4 +2506,15 @@ public abstract class Inventory extends ItemContainer } return Arrays.stream(_paperdoll).filter(filter).collect(Collectors.toCollection(LinkedList::new)); } + + @SafeVarargs + public final long getPaperdollItemCount(Predicate... filters) + { + Predicate filter = Objects::nonNull; + for (Predicate additionalFilter : filters) + { + filter = filter.and(additionalFilter); + } + return Arrays.stream(_paperdoll).filter(filter).count(); + } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/ArmorSet.java b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/ArmorSet.java index 283c5e5984..1eadae30e9 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/ArmorSet.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/ArmorSet.java @@ -211,6 +211,6 @@ public class ArmorSet */ public long getPiecesCount(PlayerInstance player, Function idProvider) { - return player.getInventory().getPaperdollItems(item -> _requiredItems.contains(idProvider.apply(item))).size(); + return player.getInventory().getPaperdollItemCount(item -> _requiredItems.contains(idProvider.apply(item))); } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java index 018fadb399..92390024b5 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java @@ -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... filters) + { + Predicate filter = Objects::nonNull; + for (Predicate additionalFilter : filters) + { + filter = filter.and(additionalFilter); + } + return Arrays.stream(_paperdoll).filter(filter).count(); + } } diff --git a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/ArmorSet.java b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/ArmorSet.java index 283c5e5984..1eadae30e9 100644 --- a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/ArmorSet.java +++ b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/ArmorSet.java @@ -211,6 +211,6 @@ public class ArmorSet */ public long getPiecesCount(PlayerInstance player, Function idProvider) { - return player.getInventory().getPaperdollItems(item -> _requiredItems.contains(idProvider.apply(item))).size(); + return player.getInventory().getPaperdollItemCount(item -> _requiredItems.contains(idProvider.apply(item))); } } diff --git a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java index 018fadb399..92390024b5 100644 --- a/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java +++ b/L2J_Mobius_Classic_2.1_Zaken/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java @@ -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... filters) + { + Predicate filter = Objects::nonNull; + for (Predicate additionalFilter : filters) + { + filter = filter.and(additionalFilter); + } + return Arrays.stream(_paperdoll).filter(filter).count(); + } } diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/ArmorSet.java b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/ArmorSet.java index 283c5e5984..1eadae30e9 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/ArmorSet.java +++ b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/ArmorSet.java @@ -211,6 +211,6 @@ public class ArmorSet */ public long getPiecesCount(PlayerInstance player, Function idProvider) { - return player.getInventory().getPaperdollItems(item -> _requiredItems.contains(idProvider.apply(item))).size(); + return player.getInventory().getPaperdollItemCount(item -> _requiredItems.contains(idProvider.apply(item))); } } diff --git a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java index c947a8c7c3..082090fc10 100644 --- a/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java +++ b/L2J_Mobius_Classic_2.2_Antharas/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java @@ -2231,4 +2231,15 @@ public abstract class Inventory extends ItemContainer } return Arrays.stream(_paperdoll).filter(filter).collect(Collectors.toCollection(LinkedList::new)); } + + @SafeVarargs + public final long getPaperdollItemCount(Predicate... filters) + { + Predicate filter = Objects::nonNull; + for (Predicate additionalFilter : filters) + { + filter = filter.and(additionalFilter); + } + return Arrays.stream(_paperdoll).filter(filter).count(); + } } diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/ArmorSet.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/ArmorSet.java index 6c2b212acd..461ceb4090 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/ArmorSet.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/ArmorSet.java @@ -296,6 +296,6 @@ public class ArmorSet */ public long getPiecesCount(PlayerInstance player, Function idProvider) { - return player.getInventory().getPaperdollItems(item -> _requiredItems.contains(idProvider.apply(item))).size(); + return player.getInventory().getPaperdollItemCount(item -> _requiredItems.contains(idProvider.apply(item))); } } diff --git a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java index 20bd66e416..3cbac3a6eb 100644 --- a/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java +++ b/L2J_Mobius_Classic_2.3_SevenSigns/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java @@ -2522,4 +2522,15 @@ public abstract class Inventory extends ItemContainer } return Arrays.stream(_paperdoll).filter(filter).collect(Collectors.toCollection(LinkedList::new)); } + + @SafeVarargs + public final long getPaperdollItemCount(Predicate... filters) + { + Predicate filter = Objects::nonNull; + for (Predicate additionalFilter : filters) + { + filter = filter.and(additionalFilter); + } + return Arrays.stream(_paperdoll).filter(filter).count(); + } } diff --git a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/ArmorSet.java b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/ArmorSet.java index 6c2b212acd..461ceb4090 100644 --- a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/ArmorSet.java +++ b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/ArmorSet.java @@ -296,6 +296,6 @@ public class ArmorSet */ public long getPiecesCount(PlayerInstance player, Function idProvider) { - return player.getInventory().getPaperdollItems(item -> _requiredItems.contains(idProvider.apply(item))).size(); + return player.getInventory().getPaperdollItemCount(item -> _requiredItems.contains(idProvider.apply(item))); } } diff --git a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java index 20bd66e416..3cbac3a6eb 100644 --- a/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java +++ b/L2J_Mobius_Classic_2.4_SecretOfEmpire/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java @@ -2522,4 +2522,15 @@ public abstract class Inventory extends ItemContainer } return Arrays.stream(_paperdoll).filter(filter).collect(Collectors.toCollection(LinkedList::new)); } + + @SafeVarargs + public final long getPaperdollItemCount(Predicate... filters) + { + Predicate filter = Objects::nonNull; + for (Predicate additionalFilter : filters) + { + filter = filter.and(additionalFilter); + } + return Arrays.stream(_paperdoll).filter(filter).count(); + } } diff --git a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/ArmorSet.java b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/ArmorSet.java index 6c2b212acd..461ceb4090 100644 --- a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/ArmorSet.java +++ b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/ArmorSet.java @@ -296,6 +296,6 @@ public class ArmorSet */ public long getPiecesCount(PlayerInstance player, Function idProvider) { - return player.getInventory().getPaperdollItems(item -> _requiredItems.contains(idProvider.apply(item))).size(); + return player.getInventory().getPaperdollItemCount(item -> _requiredItems.contains(idProvider.apply(item))); } } diff --git a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java index ac18bd2dbd..54179297c1 100644 --- a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java +++ b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java @@ -2506,4 +2506,15 @@ public abstract class Inventory extends ItemContainer } return Arrays.stream(_paperdoll).filter(filter).collect(Collectors.toCollection(LinkedList::new)); } + + @SafeVarargs + public final long getPaperdollItemCount(Predicate... filters) + { + Predicate filter = Objects::nonNull; + for (Predicate additionalFilter : filters) + { + filter = filter.and(additionalFilter); + } + return Arrays.stream(_paperdoll).filter(filter).count(); + } } diff --git a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/ArmorSet.java b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/ArmorSet.java index 283c5e5984..1eadae30e9 100644 --- a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/ArmorSet.java +++ b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/ArmorSet.java @@ -211,6 +211,6 @@ public class ArmorSet */ public long getPiecesCount(PlayerInstance player, Function idProvider) { - return player.getInventory().getPaperdollItems(item -> _requiredItems.contains(idProvider.apply(item))).size(); + return player.getInventory().getPaperdollItemCount(item -> _requiredItems.contains(idProvider.apply(item))); } } diff --git a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java index 018fadb399..92390024b5 100644 --- a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java +++ b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/itemcontainer/Inventory.java @@ -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... filters) + { + Predicate filter = Objects::nonNull; + for (Predicate additionalFilter : filters) + { + filter = filter.and(additionalFilter); + } + return Arrays.stream(_paperdoll).filter(filter).count(); + } }