本文整理汇总了Java中cn.nukkit.nbt.tag.CompoundTag.putByteArray方法的典型用法代码示例。如果您正苦于以下问题:Java CompoundTag.putByteArray方法的具体用法?Java CompoundTag.putByteArray怎么用?Java CompoundTag.putByteArray使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类cn.nukkit.nbt.tag.CompoundTag
的用法示例。
在下文中一共展示了CompoundTag.putByteArray方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: createChunkSection
import cn.nukkit.nbt.tag.CompoundTag; //导入方法依赖的package包/类
public static ChunkSection createChunkSection(int y) {
CompoundTag nbt = new CompoundTag();
nbt.putByte("Y", y);
nbt.putByteArray("Blocks", new byte[4096]);
nbt.putByteArray("Data", new byte[2048]);
byte[] sl = new byte[2048];
Arrays.fill(sl, (byte) 0xff);
nbt.putByteArray("SkyLight", sl);
nbt.putByteArray("BlockLight", new byte[2048]);
return new ChunkSection(nbt);
}
示例2: toBinary
import cn.nukkit.nbt.tag.CompoundTag; //导入方法依赖的package包/类
@Override
public byte[] toBinary() {
CompoundTag nbt = this.getNBT().copy();
nbt.putInt("xPos", this.x);
nbt.putInt("zPos", this.z);
if (this.isGenerated()) {
nbt.putByteArray("Blocks", this.getBlockIdArray());
nbt.putByteArray("Data", this.getBlockDataArray());
nbt.putByteArray("SkyLight", this.getBlockSkyLightArray());
nbt.putByteArray("BlockLight", this.getBlockLightArray());
nbt.putIntArray("BiomeColors", this.getBiomeColorArray());
nbt.putIntArray("HeightMap", this.getHeightMapArray());
}
ArrayList<CompoundTag> entities = new ArrayList<>();
for (Entity entity : this.getEntities().values()) {
if (!(entity instanceof Player) && !entity.closed) {
entity.saveNBT();
entities.add(entity.namedTag);
}
}
ListTag<CompoundTag> entityListTag = new ListTag<>("Entities");
entityListTag.setAll(entities);
nbt.putList(entityListTag);
ArrayList<CompoundTag> tiles = new ArrayList<>();
for (BlockEntity blockEntity : this.getBlockEntities().values()) {
blockEntity.saveNBT();
tiles.add(blockEntity.namedTag);
}
ListTag<CompoundTag> tileListTag = new ListTag<>("TileEntities");
tileListTag.setAll(tiles);
nbt.putList(tileListTag);
BinaryStream extraData = new BinaryStream();
Map<Integer, Integer> extraDataArray = this.getBlockExtraDataArray();
extraData.putInt(extraDataArray.size());
for (Integer key : extraDataArray.keySet()) {
extraData.putInt(key);
extraData.putShort(extraDataArray.get(key));
}
nbt.putByteArray("ExtraData", extraData.getBuffer());
CompoundTag chunk = new CompoundTag("");
chunk.putCompound("Level", nbt);
try {
return Zlib.deflate(NBTIO.write(chunk, ByteOrder.BIG_ENDIAN), RegionLoader.COMPRESSION_LEVEL);
} catch (Exception e) {
throw new RuntimeException(e);
}
}