From 102aa97320000676ae98759dbbef85fd745b182d Mon Sep 17 00:00:00 2001 From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com> Date: Sun, 8 Jan 2023 14:01:22 +0000 Subject: [PATCH] Removed stream usage from ItemCrystallizationData. --- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- .../data/xml/ItemCrystallizationData.java | 19 +++++++++++++++---- .../holders/CrystallizationDataHolder.java | 2 +- 52 files changed, 416 insertions(+), 130 deletions(-) diff --git a/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_01.0_Ertheia/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_02.5_Underground/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_03.0_Helios/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_04.0_GrandCrusade/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_05.0_Salvation/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_05.5_EtinasFate/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_06.0_Fafurion/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_07.0_PreludeOfWar/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_08.2_Homunculus/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_10.2_MasterClass/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_10.3_MasterClass/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_Classic_1.0/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_Classic_1.0/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_Classic_1.0/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_Classic_1.0/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_Classic_1.0/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_Classic_1.0/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_Classic_1.0/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_Classic_1.0/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_Classic_1.5_AgeOfSplendor/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_Classic_1.5_AgeOfSplendor/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_Classic_1.5_AgeOfSplendor/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_Classic_1.5_AgeOfSplendor/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_Classic_1.5_AgeOfSplendor/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_Classic_1.5_AgeOfSplendor/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_Classic_1.5_AgeOfSplendor/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_Classic_1.5_AgeOfSplendor/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_Classic_2.0_Saviors/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_Classic_2.5_Zaken/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_Classic_2.5_Zaken/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_Classic_2.5_Zaken/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_Classic_2.5_Zaken/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_Classic_2.5_Zaken/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_Classic_2.5_Zaken/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_Classic_2.5_Zaken/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_Classic_2.5_Zaken/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_Classic_2.7_Antharas/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_Classic_2.7_Antharas/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_Classic_2.7_Antharas/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_Classic_2.7_Antharas/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_Classic_2.7_Antharas/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_Classic_2.7_Antharas/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_Classic_2.7_Antharas/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_Classic_2.7_Antharas/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_Classic_2.8_SevenSigns/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_Classic_2.8_SevenSigns/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_Classic_2.8_SevenSigns/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_Classic_2.8_SevenSigns/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_Classic_2.8_SevenSigns/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_Classic_2.8_SevenSigns/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_Classic_2.8_SevenSigns/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_Classic_2.8_SevenSigns/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_Classic_2.9.5_Saviors/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_Classic_2.9_SecretOfEmpire/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_Classic_2.9_SecretOfEmpire/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_Classic_2.9_SecretOfEmpire/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_Classic_2.9_SecretOfEmpire/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_Classic_2.9_SecretOfEmpire/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_Classic_2.9_SecretOfEmpire/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_Classic_2.9_SecretOfEmpire/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_Classic_2.9_SecretOfEmpire/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_Classic_3.0_TheKamael/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_Classic_Interlude/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_Essence_6.2_Vanguard/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } } diff --git a/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java b/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java index 82a4f3b07c..8608f2725a 100644 --- a/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java +++ b/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/data/xml/ItemCrystallizationData.java @@ -204,21 +204,32 @@ public class ItemCrystallizationData implements IXmlReader public List getCrystallizationRewards(Item item) { final List result = new ArrayList<>(); + final int crystalItemId = item.getTemplate().getCrystalItemId(); final CrystallizationDataHolder data = getCrystallizationData(item.getId()); if (data != null) { // If there are no crystals on the template, add such. - if (data.getItems().stream().noneMatch(i -> i.getId() == item.getTemplate().getCrystalItemId())) + boolean found = false; + final List items = data.getItems(); + for (ItemChanceHolder holder : items) { - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + if (holder.getId() == crystalItemId) + { + found = true; + break; + } + } + if (!found) + { + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } - result.addAll(data.getItems()); + result.addAll(items); } else { // Add basic crystal reward. - result.add(new ItemChanceHolder(item.getTemplate().getCrystalItemId(), 100, item.getCrystalCount())); + result.add(new ItemChanceHolder(crystalItemId, 100, item.getCrystalCount())); } return result; diff --git a/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java b/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java index 3065791b42..553f9f65a1 100644 --- a/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java +++ b/L2J_Mobius_Essence_6.3_Crusader/java/org/l2jmobius/gameserver/model/holders/CrystallizationDataHolder.java @@ -40,6 +40,6 @@ public class CrystallizationDataHolder public List getItems() { - return Collections.unmodifiableList(_items); + return _items; } }