List> groups = new ArrayList(); List tempStack = new ArrayList(); for(int i = 0; i < tab.tablist.size(); i++) { ResourceLocation modItems = new ResourceLocation(References.MODID, "tabs/" + tab.tablist.get(i).itemlocation); System.out.print("\nItem Location: " + tab.tablist.get(i).itemlocation); tempStack.clear(); try{ itemJson = Minecraft.getMinecraft().getResourceManager().getResource(modItems).getInputStream(); itemJsonReader = new InputStreamReader(itemJson, "UTF-8"); item = itemBuilder.create().fromJson(itemJsonReader, TopLevelItemEntry.class); for(int j = 0; j < item.items.size(); j++) { ItemNBTManager nbt = new ItemNBTManager(); if(item.items.get(j).display != null) { ItemStack genericItem = ItemStack.loadItemStackFromNBT(ItemNBTManager.defineItemDefaults(item.items.get(j).id, item.items.get(j).Count, item.items.get(j).Damage)); genericItem.setTagInfo("display", nbt.setDisplay(item.items.get(j).display.Name, item.items.get(j).display.Lore)); tempStack.add(genericItem); bishopItemRegistry.add(genericItem); } } groups.add(tempStack); }catch (IOException e) {e.printStackTrace();} //- Outputs every value for(int i = 0; i < groups.size(); i++) for(int j = 0; j < groups.get(i).size(); j++) System.out.print("\nGroupItems: " + groups.get(i).get(j).getDisplayName());