Java Code Examples for net.minecraft.nbt.NBTTagList#appendTag()
The following examples show how to use
net.minecraft.nbt.NBTTagList#appendTag() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: GTTileBaseFuelMachine.java From GT-Classic with GNU Lesser General Public License v3.0 | 6 votes |
public NBTTagCompound writeToNBT(NBTTagCompound nbt) { super.writeToNBT(nbt); nbt.setInteger("Fuel", this.fuel); nbt.setInteger("MaxFuel", this.maxFuel); nbt.setInteger("Progress", this.progress); NBTTagList list = new NBTTagList(); // TODO trins make sure this works fine Iterator<IStackOutput> var3 = this.outputs.iterator(); while (var3.hasNext()) { ItemStack item = var3.next().getStack(); NBTTagCompound data = new NBTTagCompound(); item.writeToNBT(data); list.appendTag(data); } nbt.setTag("Results", list); return nbt; }
Example 2
Source File: ComponentNormalDamage.java From Artifacts with MIT License | 6 votes |
@Override public ItemStack attached(ItemStack i, Random rand, int[] eff) { NBTTagCompound inbt = i.stackTagCompound; NBTTagCompound nnbt = new NBTTagCompound(); NBTTagList nnbtl = new NBTTagList(); int base = i.stackTagCompound.getInteger("material"); switch(base) { case 0: case 3: base = 0; break; } base += 4; AttributeModifier att = new AttributeModifier("generic.attackDamage", base, 0); nnbt.setLong("UUIDMost", att.getID().getMostSignificantBits()); nnbt.setLong("UUIDLeast", att.getID().getLeastSignificantBits()); nnbt.setString("Name", att.getName()); nnbt.setDouble("Amount", att.getAmount()); nnbt.setInteger("Operation", att.getOperation()); nnbt.setString("AttributeName", att.getName()); nnbtl.appendTag(nnbt); inbt.setTag("AttributeModifiers", nnbtl); //i.addEnchantment(Enchantment.sharpness, rand.nextInt(5)+1); return i; }
Example 3
Source File: ItemCreator.java From ehacks-pro with GNU General Public License v3.0 | 6 votes |
public void giveItem(ItemStack stack) { ByteBuf buf = Unpooled.buffer(0); buf.writeByte(10); ItemStack mail = new ItemStack(Items.stick); NBTTagList tagList = new NBTTagList(); for (int i = 0; i < 6; i++) { NBTTagCompound item = new NBTTagCompound(); item.setByte("Slot", (byte) i); stack.writeToNBT(item); tagList.appendTag(item); } NBTTagCompound inv = new NBTTagCompound(); inv.setTag("Items", tagList); inv.setString("UniqueID", UUID.randomUUID().toString()); mail.stackTagCompound = new NBTTagCompound(); mail.stackTagCompound.setTag("Package", inv); ByteBufUtils.writeItemStack(buf, mail); C17PacketCustomPayload packet = new C17PacketCustomPayload("cfm", buf); Wrapper.INSTANCE.player().sendQueue.addToSendQueue(packet); }
Example 4
Source File: EntityCart.java From TFC2 with GNU General Public License v3.0 | 6 votes |
@Override protected void writeEntityToNBT(NBTTagCompound tagCompound) { NBTTagList nbttaglist = new NBTTagList(); for (int i = 0; i < this.cartInv.getSizeInventory(); ++i) { ItemStack itemstack = this.cartInv.getStackInSlot(i); if (itemstack != null) { NBTTagCompound nbttagcompound1 = new NBTTagCompound(); nbttagcompound1.setByte("Slot", (byte)i); itemstack.writeToNBT(nbttagcompound1); nbttaglist.appendTag(nbttagcompound1); } } tagCompound.setTag("Items", nbttaglist); }
Example 5
Source File: TileEntityTerminalFluid.java From ExtraCells1 with MIT License | 6 votes |
@Override public void writeToNBT(NBTTagCompound nbt) { super.writeToNBT(nbt); NBTTagList nbttaglist = new NBTTagList(); for (int i = 0; i < inventory.slots.size(); ++i) { if (inventory.slots.get(i) != null) { NBTTagCompound nbttagcompound1 = new NBTTagCompound(); nbttagcompound1.setByte("Slot", (byte) i); inventory.slots.get(i).writeToNBT(nbttagcompound1); nbttaglist.appendTag(nbttagcompound1); } } nbt.setTag("Items", nbttaglist); if (getInventory().isInvNameLocalized()) { nbt.setString("CustomName", this.customName); } nbt.setInteger("currentFluid", currentFluid != null ? currentFluid.getID() : -1); }
Example 6
Source File: TileEntityAerialInterface.java From PneumaticCraft with GNU General Public License v3.0 | 6 votes |
@Override public void writeToNBT(NBTTagCompound tag){ super.writeToNBT(tag); // Write the ItemStacks in the inventory to NBT tag.setInteger("redstoneMode", redstoneMode); tag.setInteger("feedMode", feedMode); tag.setString("playerName", playerName); tag.setString("playerUUID", playerUUID); if(curXpFluid != null) tag.setString("curXpFluid", curXpFluid.getName()); if(energyRF != null) saveRF(tag); tag.setBoolean("connected", isConnectedToPlayer); NBTTagList tagList = new NBTTagList(); for(int currentIndex = 0; currentIndex < inventory.length; ++currentIndex) { if(inventory[currentIndex] != null) { NBTTagCompound tagCompound = new NBTTagCompound(); tagCompound.setByte("Slot", (byte)currentIndex); inventory[currentIndex].writeToNBT(tagCompound); tagList.appendTag(tagCompound); } } tag.setTag("Items", tagList); }
Example 7
Source File: TileContainer.java From Production-Line with MIT License | 6 votes |
@Override @Nonnull public NBTTagCompound writeToNBT(NBTTagCompound compound) { NBTTagCompound nbt = super.writeToNBT(compound); NBTTagList slotList = new NBTTagList(); for (int i = 0; i < this.getSizeInventory(); ++i) { if (this.tileSlots.get(i) != null) { NBTTagCompound tag = new NBTTagCompound(); tag.setByte("Slot", (byte) i); this.tileSlots.get(i).writeToNBT(tag); slotList.appendTag(tag); } } nbt.setTag("Items", slotList); if (this.hasCustomName()) { nbt.setString("CustomName", this.name); } return nbt; }
Example 8
Source File: NBTUtils.java From enderutilities with GNU Lesser General Public License v3.0 | 5 votes |
@Nonnull public static NBTTagList writeDoubles(double... values) { NBTTagList tagList = new NBTTagList(); for (double d : values) { tagList.appendTag(new NBTTagDouble(d)); } return tagList; }
Example 9
Source File: AspectList.java From OpenPeripheral-Integration with MIT License | 5 votes |
public void writeToNBT(NBTTagCompound nbttagcompound, String label) { NBTTagList tlist = new NBTTagList(); nbttagcompound.setTag(label, tlist); for (Aspect aspect : getAspects()) if (aspect != null) { NBTTagCompound f = new NBTTagCompound(); f.setString("key", aspect.getTag()); f.setInteger("amount", getAmount(aspect)); tlist.appendTag(f); } }
Example 10
Source File: NBTUtils.java From enderutilities with GNU Lesser General Public License v3.0 | 5 votes |
/** * Writes the ItemStacks in <b>items</b> to the NBTTagCompound <b>nbt</b> * in a NBTTagList by the name <b>tagName</b>. * @param nbt * @param items * @param tagName the NBTTagList tag name where the items will be written to * @param keepExtraSlots set to true to append existing items in slots that are outside of the currently written slot range */ @Nonnull public static NBTTagCompound writeItemsToTag(@Nonnull NBTTagCompound nbt, NonNullList<ItemStack> items, @Nonnull String tagName, boolean keepExtraSlots) { int invSlots = items.size(); NBTTagList nbtTagList = createTagListForItems(items); if (keepExtraSlots && nbt.hasKey(tagName, Constants.NBT.TAG_LIST)) { // Read the old items and append any existing items that are outside the current written slot range NBTTagList nbtTagListExisting = nbt.getTagList(tagName, Constants.NBT.TAG_COMPOUND); final int count = nbtTagListExisting.tagCount(); for (int i = 0; i < count; i++) { NBTTagCompound tag = nbtTagListExisting.getCompoundTagAt(i); int slotNum = tag.getShort("Slot"); if (slotNum >= invSlots) { nbtTagList.appendTag(tag); } } } // Write the items to the compound tag if (nbtTagList.tagCount() > 0) { nbt.setTag(tagName, nbtTagList); } else { nbt.removeTag(tagName); } return nbt; }
Example 11
Source File: GenericInventory.java From OpenModsLib with MIT License | 5 votes |
public void writeToNBT(NBTTagCompound tag) { tag.setInteger(TAG_SIZE, getSizeInventory()); NBTTagList nbttaglist = new NBTTagList(); for (int i = 0; i < inventoryContents.size(); i++) { final ItemStack stack = inventoryContents.get(i); if (!stack.isEmpty()) { NBTTagCompound stacktag = new NBTTagCompound(); stack.writeToNBT(stacktag); stacktag.setByte(TAG_SLOT, (byte)i); nbttaglist.appendTag(stacktag); } } tag.setTag(TAG_ITEMS, nbttaglist); }
Example 12
Source File: ItemFocusBasic.java From Chisel-2 with GNU General Public License v2.0 | 5 votes |
private void setFocusUpgradeTagList(ItemStack focusstack, short[] upgrades) { if (!focusstack.hasTagCompound()) focusstack.setTagCompound(new NBTTagCompound()); NBTTagCompound nbttagcompound = focusstack.getTagCompound(); NBTTagList tlist = new NBTTagList(); nbttagcompound.setTag("upgrade", tlist); for (short id : upgrades) { NBTTagCompound f = new NBTTagCompound(); f.setShort("id", id); tlist.appendTag(f); } }
Example 13
Source File: NBTUtils.java From enderutilities with GNU Lesser General Public License v3.0 | 5 votes |
@Nonnull public static NBTTagList writeInts(int... values) { NBTTagList tagList = new NBTTagList(); for (int i : values) { tagList.appendTag(new NBTTagInt(i)); } return tagList; }
Example 14
Source File: TileEntityChargingStation.java From PneumaticCraft with GNU General Public License v3.0 | 5 votes |
@Override public void writeToNBT(NBTTagCompound tag){ super.writeToNBT(tag); if(chargeableInventory != null) chargeableInventory.writeToNBT(); // Write the ItemStacks in the inventory to NBT tag.setInteger("redstoneMode", redstoneMode); NBTTagList tagList = new NBTTagList(); for(int currentIndex = 0; currentIndex < inventory.length; ++currentIndex) { if(inventory[currentIndex] != null) { NBTTagCompound tagCompound = new NBTTagCompound(); tagCompound.setByte("Slot", (byte)currentIndex); inventory[currentIndex].writeToNBT(tagCompound); tagList.appendTag(tagCompound); } } tag.setTag("Items", tagList); if(camoStack != null) { NBTTagCompound subTag = new NBTTagCompound(); camoStack.writeToNBT(subTag); tag.setTag("camoStack", subTag); } }
Example 15
Source File: AspectList.java From ForbiddenMagic with Do What The F*ck You Want To Public License | 5 votes |
/** * Writes the list of aspects to nbt * @param nbttagcompound * @return */ public void writeToNBT(NBTTagCompound nbttagcompound) { NBTTagList tlist = new NBTTagList(); nbttagcompound.setTag("Aspects", tlist); for (Aspect aspect : getAspects()) if (aspect != null) { NBTTagCompound f = new NBTTagCompound(); f.setString("key", aspect.getTag()); f.setInteger("amount", getAmount(aspect)); tlist.appendTag(f); } }
Example 16
Source File: AspectList.java From GardenCollection with MIT License | 5 votes |
/** * Writes the list of aspects to nbt * @param nbttagcompound * @return */ public void writeToNBT(NBTTagCompound nbttagcompound) { NBTTagList tlist = new NBTTagList(); nbttagcompound.setTag("Aspects", tlist); for (Aspect aspect : getAspects()) if (aspect != null) { NBTTagCompound f = new NBTTagCompound(); f.setString("key", aspect.getTag()); f.setInteger("amount", getAmount(aspect)); tlist.appendTag(f); } }
Example 17
Source File: SchematicEntity.java From Framez with GNU General Public License v3.0 | 5 votes |
protected NBTTagList newFloatNBTList(float... par1ArrayOfFloat) { NBTTagList nbttaglist = new NBTTagList(); float[] afloat = par1ArrayOfFloat; int i = par1ArrayOfFloat.length; for (int j = 0; j < i; ++j) { float f1 = afloat[j]; nbttaglist.appendTag(new NBTTagFloat(f1)); } return nbttaglist; }
Example 18
Source File: OreAttribute.java From TFC2 with GNU General Public License v3.0 | 5 votes |
@Override public void writeToNBT(NBTTagCompound nbt) { nbt.setString("uuid", id.toString()); NBTTagList nodeList = new NBTTagList(); for(OreAttrNode n : nodes) { NBTTagCompound nn = new NBTTagCompound(); n.writeToNBT(nn); nodeList.appendTag(nn); } nbt.setTag("nodes", nodeList); }
Example 19
Source File: TileEntityEngineeringTable.java From Cyberware with MIT License | 5 votes |
@Override public NBTTagCompound writeToNBT(NBTTagCompound compound) { compound = super.writeToNBT(compound); compound.setTag("inv", this.slots.serializeNBT()); if (this.hasCustomName()) { compound.setString("CustomName", customName); } compound.setInteger("time", time); NBTTagList list = new NBTTagList(); for (String name : this.lastPlayerArchive.keySet()) { NBTTagCompound entry = new NBTTagCompound(); entry.setString("name", name); BlockPos pos = lastPlayerArchive.get(name); entry.setInteger("x", pos.getX()); entry.setInteger("y", pos.getY()); entry.setInteger("z", pos.getZ()); list.appendTag(entry); } compound.setTag("playerArchive", list); return compound; }
Example 20
Source File: JsonToNBTConverter.java From PneumaticCraft with GNU General Public License v3.0 | 4 votes |
private NBTTagCompound getTag(JsonObject object){ NBTTagCompound nbt = new NBTTagCompound(); for(Map.Entry<String, JsonElement> entry : object.entrySet()) { JsonObject keyObject = entry.getValue().getAsJsonObject(); int type = keyObject.get("type").getAsInt(); JsonElement element = keyObject.get("value"); switch(type){ case 1: nbt.setByte(entry.getKey(), (byte)element.getAsDouble()); break; case 2: nbt.setShort(entry.getKey(), (short)element.getAsDouble()); case 3: nbt.setInteger(entry.getKey(), (int)element.getAsDouble()); break; case 4: nbt.setLong(entry.getKey(), (long)element.getAsDouble()); break; case 5: nbt.setFloat(entry.getKey(), (float)element.getAsDouble()); break; case 6: nbt.setDouble(entry.getKey(), element.getAsDouble()); break; // case 7: // return new NBTTagByteArray(); // break; case 8: nbt.setString(entry.getKey(), element.getAsString()); break; case 9: JsonArray array = element.getAsJsonArray(); NBTTagList tagList = new NBTTagList(); for(JsonElement e : array) { tagList.appendTag(getTag(e.getAsJsonObject())); } nbt.setTag(entry.getKey(), tagList); break; case 10: nbt.setTag(entry.getKey(), getTag(element.getAsJsonObject())); break; case 11: array = element.getAsJsonArray(); int[] intArray = new int[array.size()]; for(int i = 0; i < array.size(); i++) { intArray[i] = array.get(i).getAsInt(); } nbt.setTag(entry.getKey(), new NBTTagIntArray(intArray)); break; default: throw new IllegalArgumentException("NBT type no " + type + " is not supported by the Json to NBT converter!"); } } return nbt; }