All pastes #32889 Raw Edit

Stuff

public text v1 · immutable
#32889 ·published 2005-12-07 23:39 UTC
rendered paste body
Index: C:/Development/l2j/eclipse/workspace/L2_GameserverSVN/java/net/sf/l2j/gameserver/util/KnownList.java
===================================================================
--- C:/Development/l2j/eclipse/workspace/L2_GameserverSVN/java/net/sf/l2j/gameserver/util/KnownList.java	(revision 1863)
+++ C:/Development/l2j/eclipse/workspace/L2_GameserverSVN/java/net/sf/l2j/gameserver/util/KnownList.java	(working copy)
@@ -29,11 +29,13 @@
 package net.sf.l2j.gameserver.util;
 
 import java.util.Collection;
+import java.util.Iterator;
 
 import javolution.util.FastCollection;
 import javolution.util.FastList;
 import javolution.util.FastSet;
 import javolution.util.FastCollection.Record;
+
 import net.sf.l2j.gameserver.model.L2Character;
 import net.sf.l2j.gameserver.model.L2MonsterInstance;
 import net.sf.l2j.gameserver.model.L2NpcInstance;
@@ -201,10 +203,10 @@
     {
         FastList<L2Character> allObjects = new FastList<L2Character>(); 
         
-        if (getKnownPlayers().size() > 0)       allObjects.addAll(getKnownPlayers());
-        if (getKnownMonsters().size() > 0)      allObjects.addAll(getKnownMonsters());
-        if (getKnownNpcs().size() > 0)          allObjects.addAll(getKnownNpcs());
-        if (getKnownCharacters().size() > 0)    allObjects.addAll(getKnownCharacters());
+        allObjects.addAll(addAllL2Character(getKnownPlayers()));
+        allObjects.addAll(addAllL2Character(getKnownMonsters()));
+        allObjects.addAll(addAllL2Character(getKnownNpcs()));
+        allObjects.addAll(addAllL2Character(getKnownCharacters()));
         
         return allObjects;
     }
@@ -228,11 +230,11 @@
     {
         FastList<L2Object> allObjects = new FastList<L2Object>(); 
         
-        if (getKnownPlayers().size() > 0)       allObjects.addAll(getKnownPlayers());
-        if (getKnownMonsters().size() > 0)      allObjects.addAll(getKnownMonsters());
-        if (getKnownNpcs().size() > 0)          allObjects.addAll(getKnownNpcs());
-        if (getOtherKnownObjects().size() > 0)  allObjects.addAll(getOtherKnownObjects());
-        if (getKnownCharacters().size() > 0)    allObjects.addAll(getKnownCharacters());
+        allObjects.addAll(addAllL2Object(getKnownPlayers()));
+        allObjects.addAll(addAllL2Object(getKnownMonsters()));
+        allObjects.addAll(addAllL2Object(getKnownNpcs()));
+        allObjects.addAll(addAllL2Object(getOtherKnownObjects()));
+        allObjects.addAll(addAllL2Object(getKnownCharacters()));
         
         return allObjects;
     }
@@ -315,4 +317,42 @@
     }
     
     public abstract void updateKnownObjects();
+    
+    private Collection<L2Character> addAllL2Character(Collection<? extends L2Character> col)
+    {
+        Collection<L2Character> newCol = new FastList<L2Character>(); 
+
+        if (col != null && col instanceof FastCollection && col.size() > 0)
+        {
+            Iterator<? extends L2Character> itr = col.iterator();
+            int pos = col.size();
+            L2Character obj;
+            while (--pos >= 0)
+            {
+                obj = itr.next();
+                if (obj != null) newCol.add(obj);
+            }
+        }
+
+        return newCol;
+    }
+    
+    private Collection<L2Object> addAllL2Object(Collection<? extends L2Object> col)
+    {
+        Collection<L2Object> newCol = new FastList<L2Object>(); 
+
+        if (col != null && col instanceof FastCollection && col.size() > 0)
+        {
+            Iterator<? extends L2Object> itr = col.iterator();
+            int pos = col.size();
+            L2Object obj;
+            while (--pos >= 0)
+            {
+                obj = itr.next();
+                if (obj != null) newCol.add(obj);
+            }
+        }
+
+        return newCol;
+    }
 }