From 022c9d502839c0300167640fab5d705c929180c6 Mon Sep 17 00:00:00 2001 From: MobiusDevelopment <8391001+MobiusDevelopment@users.noreply.github.com> Date: Sun, 8 Jan 2023 13:50:02 +0000 Subject: [PATCH] Removed stream usage from RangeSortByHp affect scope. --- .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ .../affectscope/RangeSortByHp.java | 25 +++++++++++++------ 26 files changed, 468 insertions(+), 182 deletions(-) diff --git a/L2J_Mobius_01.0_Ertheia/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_01.0_Ertheia/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_01.0_Ertheia/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_01.0_Ertheia/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_02.5_Underground/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_02.5_Underground/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_02.5_Underground/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_02.5_Underground/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_03.0_Helios/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_03.0_Helios/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_04.0_GrandCrusade/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_05.0_Salvation/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_05.5_EtinasFate/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_06.0_Fafurion/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_07.0_PreludeOfWar/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_08.2_Homunculus/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_09.2_ReturnOfTheQueenAnt/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_10.2_MasterClass/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_10.3_MasterClass/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_10.3_MasterClass/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_10.3_MasterClass/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_10.3_MasterClass/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_Classic_1.0/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_Classic_1.0/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_Classic_1.0/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_Classic_1.0/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_Classic_1.5_AgeOfSplendor/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_Classic_1.5_AgeOfSplendor/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_Classic_1.5_AgeOfSplendor/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_Classic_1.5_AgeOfSplendor/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_Classic_2.0_Saviors/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_Classic_2.5_Zaken/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_Classic_2.5_Zaken/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_Classic_2.5_Zaken/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_Classic_2.5_Zaken/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_Classic_2.7_Antharas/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_Classic_2.7_Antharas/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_Classic_2.7_Antharas/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_Classic_2.7_Antharas/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_Classic_2.8_SevenSigns/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_Classic_2.8_SevenSigns/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_Classic_2.8_SevenSigns/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_Classic_2.8_SevenSigns/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_Classic_2.9.5_Saviors/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_Classic_2.9.5_Saviors/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_Classic_2.9.5_Saviors/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_Classic_2.9.5_Saviors/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_Classic_2.9_SecretOfEmpire/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_Classic_2.9_SecretOfEmpire/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_Classic_2.9_SecretOfEmpire/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_Classic_2.9_SecretOfEmpire/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_Classic_3.0_TheKamael/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_Classic_Interlude/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_Essence_4.2_DwellingOfSpirits/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_Essence_5.2_FrostLord/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_Essence_6.2_Vanguard/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override diff --git a/L2J_Mobius_Essence_6.3_Crusader/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java b/L2J_Mobius_Essence_6.3_Crusader/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java index e37ec748af..8e0937cc8b 100644 --- a/L2J_Mobius_Essence_6.3_Crusader/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java +++ b/L2J_Mobius_Essence_6.3_Crusader/dist/game/data/scripts/handlers/targethandlers/affectscope/RangeSortByHp.java @@ -16,6 +16,8 @@ */ package handlers.targethandlers.affectscope; +import java.util.ArrayList; +import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.concurrent.atomic.AtomicInteger; @@ -33,7 +35,7 @@ import org.l2jmobius.gameserver.model.skill.targets.AffectScope; /** * Range sorted by lowest to highest hp percent affect scope implementation. - * @author Nik + * @author Nik, Mobius */ public class RangeSortByHp implements IAffectScopeHandler { @@ -82,12 +84,21 @@ public class RangeSortByHp implements IAffectScopeHandler } // Sort from lowest hp to highest hp. - //@formatter:off - result.stream() - .sorted(Comparator.comparingInt(Creature::getCurrentHpPercent)) - .limit(affectLimit > 0 ? affectLimit : Long.MAX_VALUE) - .forEach(action); - //@formatter:on + final List sortedList = new ArrayList<>(result); + Collections.sort(sortedList, Comparator.comparingInt(Creature::getCurrentHpPercent)); + + int count = 0; + final int limit = (affectLimit > 0) ? affectLimit : Integer.MAX_VALUE; + for (Creature c : sortedList) + { + if (count >= limit) + { + break; + } + + count++; + action.accept(c); + } } @Override