public void writeCustomNBT(NBTTagCompound par1NBTTagCompound) {
par1NBTTagCompound.setIntArray(TAG_LEVELS, ArrayUtils.toPrimitive(levels.toArray(new Integer[levels.size()])));
par1NBTTagCompound.setIntArray(TAG_ENCHANTS, ArrayUtils.toPrimitive(enchantments.toArray(new Integer[enchantments.size()])));
NBTTagCompound totalAspectsCmp = new NBTTagCompound();
totalAspects.writeToNBT(totalAspectsCmp);
NBTTagCompound currentAspectsCmp = new NBTTagCompound();
currentAspects.writeToNBT(currentAspectsCmp);
par1NBTTagCompound.setBoolean(TAG_WORKING, working);
par1NBTTagCompound.setTag(TAG_TOTAL_ASPECTS, totalAspectsCmp);
par1NBTTagCompound.setTag(TAG_CURRENT_ASPECTS, currentAspectsCmp);
NBTTagList var2 = new NBTTagList();
for (int var3 = 0; var3 < inventorySlots.length; ++var3) {
if (inventorySlots[var3] != null) {
NBTTagCompound var4 = new NBTTagCompound();
var4.setByte("Slot", (byte) var3);
inventorySlots[var3].writeToNBT(var4);
var2.appendTag(var4);
}
}
par1NBTTagCompound.setTag("Items", var2);