CLASS net/minecraft/class_2540 net/minecraft/network/PacketByteBuf COMMENT A packet byte buf is a specialized byte buf with utility methods adapted COMMENT to Minecraft's protocol. It has serialization and deserialization of COMMENT custom objects. COMMENT COMMENT
Object Type | read method | write method | COMMENT
---|---|---|
Codec-based | {@link #decode(Codec)} | {@link #encode(Codec, Object)} | COMMENT
{@code byte[]} | {@link #readByteArray()} | {@link #writeByteArray(byte[])} | COMMENT
{@code int[]} | {@link #readIntArray()} | {@link #writeIntArray(int[])} | COMMENT
{@code long[]} | {@link #readLongArray(long[])} | {@link #writeLongArray(long[])} | COMMENT
{@link BlockPos} | {@link #readBlockPos()} | {@link #writeBlockPos(BlockPos)} | COMMENT
{@link ChunkSectionPos} | {@link #readChunkSectionPos()} | No write method is available | COMMENT
{@link Text} | {@link #readText()} | {@link #writeText(Text)} | COMMENT
{@link Enum} | {@link #readEnumConstant(Class)} | {@link #writeEnumConstant(Enum)} | COMMENT
{@index VarInt} | {@link #readVarInt()} | {@link #writeVarInt(int)} | COMMENT
{@index VarLong} | {@link #readVarLong()} | {@link #writeVarLong(long)} | COMMENT
{@link UUID} | {@link #readUuid()} | {@link #writeUuid(UUID)} | COMMENT
{@link NbtCompound} | {@link #readNbt()} | {@link #writeNbt(NbtCompound)} | COMMENT
{@link ItemStack} | {@link #readItemStack()} | {@link #writeItemStack(ItemStack)} | COMMENT
{@link String} | {@link #readString()} | {@link #writeString(String)} | COMMENT
{@link Identifier} | {@link #readIdentifier()} | {@link #writeIdentifier(Identifier)} | COMMENT
{@link Date} | {@link #readDate()} | {@link #writeDate(Date)} | COMMENT
{@link BlockHitResult} | {@link #readBlockHitResult()} | {@link #writeBlockHitResult(BlockHitResult)} | COMMENT
All {@code read} and {@code write} methods throw {@link COMMENT IndexOutOfBoundsException} if there is not enough bytes to be read or COMMENT not enough space to write. FIELD field_11695 parent Lio/netty/buffer/ByteBuf; METHOD method_10787 readIntArray ()[I COMMENT Reads an array of primitive ints from this buf. The array first has a COMMENT var int indicating its length, followed by the var int entries. The array COMMENT does not have a length limit. COMMENT COMMENT @implNote An int array has the same format as a list of ints. COMMENT COMMENT @see #readIntArray(int) COMMENT @see #writeIntArray(int[]) COMMENT @return the read byte array METHOD method_10788 writeString (Ljava/lang/String;I)Lnet/minecraft/class_2540; COMMENT Writes a string to this buf. A string is represented by a byte array of COMMENT its UTF-8 data. That byte array can have a maximum length of COMMENT {@code maxLength}. COMMENT COMMENT @return this buf, for chaining COMMENT @throws io.netty.handler.codec.EncoderException if the byte array of the COMMENT string to write is longer than {@code maxLength} COMMENT @see #readString() COMMENT @see #readString(int) COMMENT @see #writeString(String) ARG 1 string COMMENT the string to write ARG 2 maxLength COMMENT the max length of the byte array METHOD method_10789 writeLongArray ([J)Lnet/minecraft/class_2540; COMMENT Writes an array of primitive longs to this buf. The array first has a COMMENT var int indicating its length, followed by the regular long (not var COMMENT long) values. COMMENT COMMENT @see #readLongArray(long[]) COMMENT @return this buf, for chaining ARG 1 array COMMENT the array to write METHOD method_10790 readUuid ()Ljava/util/UUID; COMMENT Reads a UUID (universally unique identifier) from this buf. A UUID is COMMENT represented by two regular longs. COMMENT COMMENT @return the read UUID COMMENT @see #writeUuid(UUID) METHOD method_10791 writeVarLong (J)Lnet/minecraft/class_2540; COMMENT Writes a single var long to this buf. COMMENT COMMENT
Compared to regular longs, var longs may use less bytes when COMMENT representing smaller positive numbers. COMMENT COMMENT @return this buf, for chaining COMMENT @see #readVarLong() ARG 1 value COMMENT the value to write METHOD method_10792 readVarLong ()J COMMENT Reads a single var long from this buf. COMMENT COMMENT @return the value read COMMENT @see #writeVarLong(long) METHOD method_10793 writeItemStack (Lnet/minecraft/class_1799;)Lnet/minecraft/class_2540; COMMENT Writes an item stack to this buf. An item stack is represented by a COMMENT boolean indicating whether it exists; if it exists, it is followed by COMMENT a var int for its raw id, a byte for its count, and an NBT compound for COMMENT its tag. COMMENT COMMENT @return this buf, for chaining COMMENT @see #readItemStack() ARG 1 stack COMMENT the stack to write METHOD method_10794 writeNbt (Lnet/minecraft/class_2487;)Lnet/minecraft/class_2540; COMMENT Writes an NBT compound to this buf. The binary representation of NBT is COMMENT handled by {@link net.minecraft.nbt.NbtIo}. If {@code compound} is {@code COMMENT null}, it is treated as an NBT null. COMMENT COMMENT @return this buf, for chaining COMMENT @throws io.netty.handler.codec.EncoderException if the NBT cannot be COMMENT written COMMENT @see #readNbt() COMMENT @see #readUnlimitedNbt() COMMENT @see #readNbt(NbtTagSizeTracker) ARG 1 compound COMMENT the compound to write METHOD method_10795 readByteArray ()[B COMMENT Reads an array of primitive bytes from this buf. The array first has a COMMENT var int indicating its length, followed by the actual bytes. The array COMMENT does not have a length limit. COMMENT COMMENT @see #readByteArray(int) COMMENT @see #writeByteArray(byte[]) COMMENT @return the read byte array METHOD method_10796 writeDate (Ljava/util/Date;)Lnet/minecraft/class_2540; COMMENT Writes a date to this buf. A date is represented by its time, a regular COMMENT long. COMMENT COMMENT @return this buf, for chaining COMMENT @see #readDate() ARG 1 date COMMENT the date to write METHOD method_10797 writeUuid (Ljava/util/UUID;)Lnet/minecraft/class_2540; COMMENT Writes a UUID (universally unique identifier) to this buf. A UUID is COMMENT represented by two regular longs. COMMENT COMMENT @return this buf, for chaining COMMENT @see #readUuid() ARG 1 uuid COMMENT the UUID to write METHOD method_10798 readNbt ()Lnet/minecraft/class_2487; COMMENT Reads an NBT compound from this buf. The binary representation of NBT is COMMENT handled by {@link net.minecraft.nbt.NbtIo}. If an NBT null is encountered, COMMENT this method returns {@code null}. The compound can have a maximum size of COMMENT {@code 2097152} bytes. COMMENT COMMENT @return the read compound, may be {@code null} COMMENT @throws io.netty.handler.codec.EncoderException if the NBT cannot be read COMMENT @throws RuntimeException if the compound exceeds the allowed maximum size COMMENT @see #writeNbt(NbtCompound) COMMENT @see #readUnlimitedNbt() COMMENT @see #readNbt(NbtTagSizeTracker) METHOD method_10799 readIntArray (I)[I COMMENT Reads an array of primitive ints from this buf. The array first has a COMMENT var int indicating its length, followed by the var int entries. The array COMMENT has a length limit given by {@code maxSize}. COMMENT COMMENT @implNote An int array has the same format as a list of ints. COMMENT COMMENT @see #readIntArray() COMMENT @see #writeIntArray(int[]) COMMENT @return the read byte array COMMENT @throws io.netty.handler.codec.DecoderException if the read array has a COMMENT length over {@code maxSize} ARG 1 maxSize COMMENT the max length of the read array METHOD method_10800 readString (I)Ljava/lang/String; COMMENT Reads a string from this buf. A string is represented by a byte array of COMMENT its UTF-8 data. The string can have a maximum length of {@code maxLength}. COMMENT COMMENT @return the string read COMMENT @throws io.netty.handler.codec.DecoderException if the string read COMMENT is longer than {@code maxLength} COMMENT @see #readString() COMMENT @see #writeString(String) COMMENT @see #writeString(String, int) ARG 1 maxLength COMMENT the maximum length of the string read METHOD method_10801 readLongArray ([J)[J COMMENT Reads an array of primitive longs from this buf. The array first has a COMMENT var int indicating its length, followed by the regular long (not var COMMENT long) values. The array does not have a length limit. COMMENT COMMENT
Only when {@code toArray} is not {@code null} and {@code COMMENT toArray.length} equals to the length var int read will the {@code COMMENT toArray} be reused and returned; otherwise, a new array COMMENT of proper size is created. COMMENT COMMENT @see #writeLongArray(long[]) COMMENT @see #readLongArray(long[], int) COMMENT @return the read long array ARG 1 toArray COMMENT the array to reuse METHOD method_10802 readDate ()Ljava/util/Date; COMMENT Reads a date from this buf. A date is represented by its time, a regular COMMENT long. COMMENT COMMENT @return the read date COMMENT @see #writeDate(Date) METHOD method_10803 readByteArray (I)[B COMMENT Reads an array of primitive bytes from this buf. The array first has a COMMENT var int indicating its length, followed by the actual bytes. The array COMMENT has a length limit given by {@code maxSize}. COMMENT COMMENT @see #readByteArray() COMMENT @see #writeByteArray(byte[]) COMMENT @return the read byte array COMMENT @throws io.netty.handler.codec.DecoderException if the read array has a COMMENT length over {@code maxSize} ARG 1 maxSize COMMENT the max length of the read array METHOD method_10804 writeVarInt (I)Lnet/minecraft/class_2540; COMMENT Writes a single var int to this buf. COMMENT COMMENT
Compared to regular ints, var ints may use less bytes (ranging from 1 COMMENT to 5, where regular ints use 4) when representing smaller positive COMMENT numbers. COMMENT COMMENT @return this buf, for chaining COMMENT @see #readVarInt() COMMENT @see #getVarIntLength(int) ARG 1 value COMMENT the value to write METHOD method_10805 writeText (Lnet/minecraft/class_2561;)Lnet/minecraft/class_2540; COMMENT Writes a text to this buf. A text is represented by a JSON string with COMMENT max length {@code 262144}. COMMENT COMMENT @return this buf, for chaining COMMENT @throws io.netty.handler.codec.EncoderException if the JSON string COMMENT written exceeds {@code 262144} in length COMMENT @see #readText() ARG 1 text COMMENT the text to write METHOD method_10806 writeIntArray ([I)Lnet/minecraft/class_2540; COMMENT Writes an array of primitive ints to this buf. The array first has a COMMENT var int indicating its length, followed by the var int entries. COMMENT COMMENT @implNote An int array has the same format as a list of ints. COMMENT COMMENT @see #readIntArray(int) COMMENT @see #writeIntArray(int[]) COMMENT @return this buf, for chaining ARG 1 array COMMENT the array to write METHOD method_10807 writeBlockPos (Lnet/minecraft/class_2338;)Lnet/minecraft/class_2540; COMMENT Writes a block position to this buf. A block position is represented by COMMENT a regular long. COMMENT COMMENT @return this buf, for chaining COMMENT @see #readBlockPos() ARG 1 pos COMMENT the pos to write METHOD method_10808 readText ()Lnet/minecraft/class_2561; COMMENT Reads a text from this buf. A text is represented by a JSON string with COMMENT max length {@code 262144}. COMMENT COMMENT @return the read text COMMENT @throws io.netty.handler.codec.DecoderException if the JSON string read COMMENT exceeds {@code 262144} in length COMMENT @see #writeText(Text) METHOD method_10809 readLongArray ([JI)[J COMMENT Reads an array of primitive longs from this buf. The array first has a COMMENT var int indicating its length, followed by the regular long (not var COMMENT long) values. The array has a length limit of {@code maxSize}. COMMENT COMMENT
Only when {@code toArray} is not {@code null} and {@code
COMMENT toArray.length} equals to the length var int read will the {@code
COMMENT toArray} be reused and returned; otherwise, a new array
COMMENT of proper size is created.
COMMENT
COMMENT @see #writeLongArray(long[])
COMMENT @see #readLongArray(long[])
COMMENT @return the read long array
COMMENT @throws io.netty.handler.codec.DecoderException if the read array has a
COMMENT length over {@code maxSize}
ARG 1 toArray
COMMENT the array to reuse
ARG 2 maxSize
COMMENT the max length of the read array
METHOD method_10810 readIdentifier ()Lnet/minecraft/class_2960;
COMMENT Reads an identifier from this buf. An identifier is represented by its
COMMENT string form. The read identifier's string form can have a max length of
COMMENT {@code 32767}.
COMMENT
COMMENT @return the read identifier
COMMENT @throws io.netty.handler.codec.DecoderException if the identifier's
COMMENT string form is longer than {@code 32767}
COMMENT @see #writeIdentifier(Identifier)
METHOD method_10811 readBlockPos ()Lnet/minecraft/class_2338;
COMMENT Reads a block position from this buf. A block position is represented by
COMMENT a regular long.
COMMENT
COMMENT @return the read block pos
COMMENT @see #writeBlockPos(BlockPos)
METHOD method_10812 writeIdentifier (Lnet/minecraft/class_2960;)Lnet/minecraft/class_2540;
COMMENT Writes an identifier to this buf. An identifier is represented by its
COMMENT string form. The written identifier's byte array can have a max length of
COMMENT {@code 32767}.
COMMENT
COMMENT @return the read identifier
COMMENT @throws io.netty.handler.codec.EncoderException if the {@code id}'s
COMMENT byte array is longer than {@code 32767}
COMMENT @see #readIdentifier()
ARG 1 id
COMMENT the identifier to write
METHOD method_10813 writeByteArray ([B)Lnet/minecraft/class_2540;
COMMENT Writes an array of primitive bytes to this buf. The array first has a
COMMENT var int indicating its length, followed by the actual bytes.
COMMENT
COMMENT @see #readByteArray()
COMMENT @return this buf, for chaining
ARG 1 array
COMMENT the array to write
METHOD method_10814 writeString (Ljava/lang/String;)Lnet/minecraft/class_2540;
COMMENT Writes a string to this buf. A string is represented by a byte array of
COMMENT its UTF-8 data. That byte array can have a maximum length of
COMMENT {@code 32767}.
COMMENT
COMMENT @return this buf, for chaining
COMMENT @throws io.netty.handler.codec.EncoderException if the byte array of the
COMMENT string to write is longer than {@code 32767}
COMMENT @see #readString()
COMMENT @see #readString(int)
COMMENT @see #writeString(String, int)
ARG 1 string
COMMENT the string to write
METHOD method_10815 getVarIntLength (I)I
COMMENT Returns the number of bytes needed to encode {@code value} as a
COMMENT {@linkplain #writeVarInt(int) var int}. Guaranteed to be between {@code
COMMENT 1} and {@code 5}.
COMMENT
COMMENT @return the number of bytes a var int {@code value} uses
ARG 0 value
COMMENT the value to encode
METHOD method_10816 readVarInt ()I
COMMENT Reads a single var int from this buf.
COMMENT
COMMENT @return the value read
COMMENT @see #writeVarInt(int)
METHOD method_10817 writeEnumConstant (Ljava/lang/Enum;)Lnet/minecraft/class_2540;
COMMENT Writes an enum constant to this buf. An enum constant is represented
COMMENT by a var int indicating its ordinal.
COMMENT
COMMENT @return this buf, for chaining
COMMENT @see #readEnumConstant(Class)
ARG 1 instance
COMMENT the enum constant to write
METHOD method_10818 readEnumConstant (Ljava/lang/Class;)Ljava/lang/Enum;
COMMENT Reads an enum constant from this buf. An enum constant is represented
COMMENT by a var int indicating its ordinal.
COMMENT
COMMENT @return the read enum constant
COMMENT @see #writeEnumConstant(Enum)
ARG 1 enumClass
COMMENT the enum class, for constant lookup
METHOD method_10819 readItemStack ()Lnet/minecraft/class_1799;
COMMENT Reads an item stack from this buf. An item stack is represented by a
COMMENT boolean indicating whether it exists; if it exists, it is followed by
COMMENT a var int for its raw id, a byte for its count, and an NBT compound for
COMMENT its tag.
COMMENT
COMMENT @return the read item stack
COMMENT @see #writeItemStack(ItemStack)
METHOD method_17813 writeBlockHitResult (Lnet/minecraft/class_3965;)V
COMMENT Writes a block hit result to this buf. A block hit result is represented
COMMENT by a block position, a direction enum constant, 3 floats for the hit
COMMENT offset position, and a boolean for whether the hit was inside a block.
COMMENT
COMMENT @see #readBlockHitResult()
ARG 1 hitResult
COMMENT the block hit result to write
METHOD method_17814 readBlockHitResult ()Lnet/minecraft/class_3965;
COMMENT Reads a block hit result from this buf. A block hit result is represented
COMMENT by a block position, a direction enum constant, 3 floats for the hit
COMMENT offset position, and a boolean for whether the hit was inside a block.
COMMENT
COMMENT @return the read block hit result
COMMENT @see #writeBlockHitResult(BlockHitResult)
METHOD method_19456 readChunkSectionPos ()Lnet/minecraft/class_4076;
COMMENT Reads a chunk section position from this buf. A chunk section position is
COMMENT represented by a regular long.
COMMENT
COMMENT @return the read chunk section pos
METHOD method_19772 readString ()Ljava/lang/String;
COMMENT Reads a string from this buf. A string is represented by a byte array of
COMMENT its UTF-8 data. The string can have a maximum length of {@code 32767}.
COMMENT
COMMENT @return the string read
COMMENT @throws io.netty.handler.codec.DecoderException if the string read
COMMENT exceeds the maximum length
COMMENT @see #readString(int)
COMMENT @see #writeString(String)
COMMENT @see #writeString(String, int)
METHOD method_29171 decode (Lcom/mojang/serialization/Codec;)Ljava/lang/Object;
COMMENT Reads an object from this buf as a compound NBT with the given codec.
COMMENT
COMMENT @param