diff --git a/cache/src/main/java/net/runelite/cache/ItemDumper.java b/cache/src/main/java/net/runelite/cache/ItemDumper.java index 7a4c84986f..04cc560e4a 100644 --- a/cache/src/main/java/net/runelite/cache/ItemDumper.java +++ b/cache/src/main/java/net/runelite/cache/ItemDumper.java @@ -36,7 +36,9 @@ import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.io.PrintWriter; +import java.util.ArrayList; import java.util.HashSet; +import java.util.List; import java.util.Set; import net.runelite.cache.definitions.ItemDefinition; import net.runelite.cache.definitions.loaders.ItemLoader; @@ -50,6 +52,7 @@ public class ItemDumper private final File cache, out, java; private final Gson gson; private ItemLoader loader; + private final List items = new ArrayList<>(); public ItemDumper(File cache, File out, File java) { @@ -97,7 +100,7 @@ public class ItemDumper public void dump() throws IOException { - for (ItemDefinition def : loader.getItems()) + for (ItemDefinition def : items) { out.mkdirs(); java.io.File targ = new java.io.File(out, def.id + ".json"); @@ -120,7 +123,7 @@ public class ItemDumper fw.println("package net.runelite.api;"); fw.println(""); fw.println("public final class ItemID {"); - for (ItemDefinition def : loader.getItems()) + for (ItemDefinition def : items) { if (def.name.equalsIgnoreCase("NULL")) continue; diff --git a/cache/src/main/java/net/runelite/cache/NpcDumper.java b/cache/src/main/java/net/runelite/cache/NpcDumper.java index c18ec8e556..02911828b9 100644 --- a/cache/src/main/java/net/runelite/cache/NpcDumper.java +++ b/cache/src/main/java/net/runelite/cache/NpcDumper.java @@ -36,7 +36,9 @@ import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.io.PrintWriter; +import java.util.ArrayList; import java.util.HashSet; +import java.util.List; import java.util.Set; import net.runelite.cache.definitions.NpcDefinition; import net.runelite.cache.definitions.loaders.NpcLoader; @@ -50,6 +52,7 @@ public class NpcDumper private final File cache, out, java; private final Gson gson; private NpcLoader loader; + private final List npcs = new ArrayList<>(); public NpcDumper(File cache, File out, File java) { @@ -90,14 +93,15 @@ public class NpcDumper for (net.runelite.cache.fs.File f : archive.getFiles()) { - loader.load(f.getFileId(), new InputStream(f.getContents())); + NpcDefinition npc = loader.load(f.getFileId(), new InputStream(f.getContents())); + npcs.add(npc); } } } public void dump() throws IOException { - for (NpcDefinition def : loader.getNpcs()) + for (NpcDefinition def : npcs) { out.mkdirs(); java.io.File targ = new java.io.File(out, def.id + ".json"); @@ -120,7 +124,7 @@ public class NpcDumper fw.println("package net.runelite.api;"); fw.println(""); fw.println("public final class NpcID {"); - for (NpcDefinition def : loader.getNpcs()) + for (NpcDefinition def : npcs) { if (def.name.equalsIgnoreCase("NULL")) continue; diff --git a/cache/src/main/java/net/runelite/cache/definitions/loaders/ItemLoader.java b/cache/src/main/java/net/runelite/cache/definitions/loaders/ItemLoader.java index 7b8f6aca36..95a812041b 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/loaders/ItemLoader.java +++ b/cache/src/main/java/net/runelite/cache/definitions/loaders/ItemLoader.java @@ -30,8 +30,6 @@ package net.runelite.cache.definitions.loaders; -import java.util.ArrayList; -import java.util.List; import net.runelite.cache.definitions.ItemDefinition; import net.runelite.cache.io.InputStream; import org.slf4j.Logger; @@ -40,14 +38,8 @@ import org.slf4j.LoggerFactory; public class ItemLoader { private static final Logger logger = LoggerFactory.getLogger(ItemLoader.class); - private final List items = new ArrayList<>(); - public List getItems() - { - return items; - } - - public void load(int id, InputStream stream) + public ItemDefinition load(int id, InputStream stream) { ItemDefinition def = new ItemDefinition(id); @@ -62,7 +54,7 @@ public class ItemLoader this.decodeValues(opcode, def, stream); } - items.add(def); + return def; } private void decodeValues(int opcode, ItemDefinition def, InputStream stream) diff --git a/cache/src/main/java/net/runelite/cache/definitions/loaders/NpcLoader.java b/cache/src/main/java/net/runelite/cache/definitions/loaders/NpcLoader.java index 69aa79ac69..f2cced76c1 100644 --- a/cache/src/main/java/net/runelite/cache/definitions/loaders/NpcLoader.java +++ b/cache/src/main/java/net/runelite/cache/definitions/loaders/NpcLoader.java @@ -27,11 +27,8 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ - package net.runelite.cache.definitions.loaders; -import java.util.ArrayList; -import java.util.List; import net.runelite.cache.definitions.NpcDefinition; import net.runelite.cache.io.InputStream; import org.slf4j.Logger; @@ -40,16 +37,11 @@ import org.slf4j.LoggerFactory; public class NpcLoader { private static final Logger logger = LoggerFactory.getLogger(NpcLoader.class); - private final List npcs = new ArrayList<>(); - public List getNpcs() - { - return npcs; - } - - public void load(int id, InputStream stream) + public NpcDefinition load(int id, InputStream stream) { NpcDefinition def = new NpcDefinition(id); + while (true) { int opcode = stream.readUnsignedByte(); @@ -60,7 +52,8 @@ public class NpcLoader this.decodeValues(opcode, def, stream); } - npcs.add(def); + + return def; } void decodeValues(int opcode, NpcDefinition def, InputStream stream)