本文整理了Java中net.minecraft.item.ItemStack.serializeNBT()
方法的一些代码示例,展示了ItemStack.serializeNBT()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ItemStack.serializeNBT()
方法的具体详情如下:
包路径:net.minecraft.item.ItemStack
类名称:ItemStack
方法名:serializeNBT
暂无
代码示例来源:origin: AppliedEnergistics/Applied-Energistics-2
@Override
public void writeToPacket( final ByteBuf i )
{
final byte mask = (byte) ( ( this.getType( this.getStackSize() ) << 2 ) | ( this
.getType( this.getCountRequestable() ) << 4 ) | ( (byte) ( this.isCraftable() ? 1 : 0 ) << 6 ) | ( this.hasTagCompound() ? 1 : 0 ) << 7 );
i.writeByte( mask );
ByteBufUtils.writeTag( i, this.getDefinition().serializeNBT() );
this.putPacketValue( i, this.getStackSize() );
this.putPacketValue( i, this.getCountRequestable() );
}
代码示例来源:origin: P3pp3rF1y/AncientWarfare2
@Nonnull
@Override
public ItemStack[] getMatchingStacks() {
if (array == null) {
List<ItemStack> matchingStacks = Arrays.stream(super.getMatchingStacks()).map(s -> new ItemStack(s.serializeNBT())).collect(Collectors.toList());
matchingStacks.forEach(s -> s.setCount(count));
array = matchingStacks.toArray(new ItemStack[matchingStacks.size()]);
}
return array;
}
代码示例来源:origin: P3pp3rF1y/AncientWarfare2
@Override
public ItemStack[] getMatchingStacks() {
if (array == null) {
List<ItemStack> matchingStacks = Arrays.stream(super.getMatchingStacks()).map(s -> new ItemStack(s.serializeNBT())).collect(Collectors.toList());
matchingStacks.forEach(s -> s.setCount(count));
array = matchingStacks.toArray(new ItemStack[matchingStacks.size()]);
}
return array;
}
代码示例来源:origin: FTBTeam/FTB-Utilities
@Override
public NBTTagCompound editNBT(EntityPlayerMP player, NBTTagCompound info, String[] args)
{
info.setString("type", "item");
return player.getHeldItem(EnumHand.MAIN_HAND).serializeNBT();
}
}
代码示例来源:origin: ForestryMC/Binnie
@Override
public void syncToNBT(NBTTagCompound nbt) {
ItemStack stack = getStack();
nbt.setTag("Item", stack.serializeNBT());
}
代码示例来源:origin: mezz/JustEnoughItems
@Override
public void writePacketData(PacketBuffer buf) {
NBTTagCompound nbt = itemStack.serializeNBT();
buf.writeCompoundTag(nbt);
buf.writeVarInt(hotbarSlot);
}
代码示例来源:origin: mezz/JustEnoughItems
@Override
public void writePacketData(PacketBuffer buf) {
NBTTagCompound nbt = itemStack.serializeNBT();
buf.writeCompoundTag(nbt);
buf.writeEnumValue(giveMode);
}
代码示例来源:origin: Nividica/ThaumicEnergistics
@Override
public NBTTagList serializeNBT() {
NBTTagList nbt = new NBTTagList();
this.slots.forEach(slot -> nbt.appendTag(slot.serializeNBT()));
return nbt;
}
代码示例来源:origin: SquidDev-CC/plethora
@Override
public void setCosmeticItem(@Nonnull ItemStack stack, @Nonnull ItemStack cosmetic) {
NBTTagCompound tag = stack.getTagCompound();
if (tag == null) stack.setTagCompound(tag = new NBTTagCompound());
if (cosmetic.isEmpty()) {
tag.removeTag("cosmetic");
} else {
tag.setTag("cosmetic", cosmetic.serializeNBT());
}
}
代码示例来源:origin: SleepyTrousers/EnderIO
@Override
public void writeToNBT(@Nonnull NBTTagCompound nbtRoot) {
nbtRoot.setBoolean("isBlacklist", isBlacklist);
nbtRoot.setBoolean("sticky", sticky);
nbtRoot.setByte("speciesMode", (byte) speciesMode.ordinal());
int i = 0;
for (ItemStack item : items) {
if (item != null) {
nbtRoot.setTag("item" + i, item.serializeNBT());
}
i++;
}
}
代码示例来源:origin: raoulvdberge/refinedstorage
public static void setOutputSlot(ItemStack pattern, int slot, ItemStack stack) {
if (!pattern.hasTagCompound()) {
pattern.setTagCompound(new NBTTagCompound());
}
pattern.getTagCompound().setTag(String.format(NBT_OUTPUT_SLOT, slot), stack.serializeNBT());
}
代码示例来源:origin: raoulvdberge/refinedstorage
public NBTTagList writeToNbt() {
NBTTagList list = new NBTTagList();
for (Map.Entry<EnumFacing, Cover> entry : covers.entrySet()) {
NBTTagCompound tag = new NBTTagCompound();
tag.setInteger(NBT_DIRECTION, entry.getKey().ordinal());
tag.setTag(NBT_ITEM, entry.getValue().getStack().serializeNBT());
tag.setInteger(NBT_TYPE, entry.getValue().getType().ordinal());
list.appendTag(tag);
}
return list;
}
代码示例来源:origin: ldtteam/minecolonies
public static NBTTagCompound serialize(final IFactoryController controller, final SmeltableOre food)
{
final NBTTagCompound compound = new NBTTagCompound();
compound.setInteger(NBT_COUNT, food.count);
if (!ItemStackUtils.isEmpty(food.result))
{
compound.setTag(NBT_RESULT, food.result.serializeNBT());
}
return compound;
}
代码示例来源:origin: Esteemed-Innovation/Esteemed-Innovation
@Override
public NBTTagCompound writeToNBT(NBTTagCompound access) {
super.writeToNBT(access);
access.setInteger(MODE_KEY, mode.ordinal());
if (inventory != null) {
access.setTag(INV_KEY, inventory.serializeNBT());
}
return access;
}
代码示例来源:origin: raoulvdberge/refinedstorage
public static void setItem(ItemStack cover, ItemStack item) {
if (!cover.hasTagCompound()) {
cover.setTagCompound(new NBTTagCompound());
}
cover.getTagCompound().setTag(NBT_ITEM, item.serializeNBT());
}
代码示例来源:origin: raoulvdberge/refinedstorage
public static void setIcon(ItemStack stack, ItemStack icon) {
if (!stack.hasTagCompound()) {
stack.setTagCompound(new NBTTagCompound());
}
stack.getTagCompound().setTag(NBT_ICON, icon.serializeNBT());
}
代码示例来源:origin: SquidDev-CC/plethora
@Override
public void setStackInSlot(int slot, @Nonnull ItemStack stack) {
validateSlotIndex(slot);
NBTTagCompound tag = ItemBase.getTag(this.stack);
NBTTagCompound items = getItems(tag);
if (stack.isEmpty()) {
items.removeTag("item" + slot);
} else {
items.setTag("item" + slot, stack.serializeNBT());
}
tag.setShort(DIRTY, (short) (tag.getShort(DIRTY) | 1 << slot));
}
代码示例来源:origin: ForestryMC/ForestryMC
@Override
public NBTTagCompound writeToNBT(NBTTagCompound nbttagcompound) {
nbttagcompound = super.writeToNBT(nbttagcompound);
if (!fuel.isEmpty()) {
nbttagcompound.setTag("EngineFuelItemStack", fuel.serializeNBT());
}
nbttagcompound.setInteger("EngineBurnTime", burnTime);
nbttagcompound.setInteger("EngineTotalTime", totalBurnTime);
nbttagcompound.setInteger("AshProduction", ashProduction);
return nbttagcompound;
}
代码示例来源:origin: raoulvdberge/refinedstorage
static NBTTagCompound writePatternToNbt(ICraftingPattern pattern) {
NBTTagCompound tag = new NBTTagCompound();
tag.setTag(NBT_PATTERN_STACK, pattern.getStack().serializeNBT());
tag.setLong(NBT_PATTERN_CONTAINER_POS, pattern.getContainer().getPosition().toLong());
return tag;
}
代码示例来源:origin: McJtyMods/RFToolsControl
private void requestItem(ItemStack stack, int amount) {
sendServerCommand(RFToolsCtrlMessages.INSTANCE, CraftingStationTileEntity.CMD_REQUEST,
TypedMap.builder()
.put(PARAM_ITEMNAME, stack.getItem().getRegistryName().toString())
.put(PARAM_META, stack.getItemDamage())
.put(PARAM_NBT, stack.hasTagCompound() ? stack.serializeNBT().toString() : "")
.put(PARAM_AMOUNT, amount)
.build());
}
内容来源于网络,如有侵权,请联系作者删除!