diff --git a/mappings/net/minecraft/world/chunk/ChunkNibbleArray.mapping b/mappings/net/minecraft/world/chunk/ChunkNibbleArray.mapping index 8ac4d26e36..c43981704d 100644 --- a/mappings/net/minecraft/world/chunk/ChunkNibbleArray.mapping +++ b/mappings/net/minecraft/world/chunk/ChunkNibbleArray.mapping @@ -1,15 +1,25 @@ CLASS net/minecraft/class_2804 net/minecraft/world/chunk/ChunkNibbleArray + COMMENT A chunk nibble array is an array of nibbles for each block position in + COMMENT a chunk. It is most often used to store light data. + COMMENT + COMMENT

A {@index nibble} is 4 bits, storing an integer from {@code 0} to + COMMENT {@code 15}. It takes half the space of a byte. + COMMENT + COMMENT

The nibbles are stored in an X-Z-Y major order; in the backing array, + COMMENT the indices increases by first increasing X, then Z, and finally Y. FIELD field_12783 bytes [B FIELD field_31403 BYTES_LENGTH I FIELD field_31404 COPY_BLOCK_SIZE I + FIELD field_31405 NIBBLE_BITS I METHOD (I)V ARG 1 size METHOD ([B)V ARG 1 bytes METHOD method_12137 asByteArray ()[B - METHOD method_12138 divideByTwo (I)I + METHOD method_12138 getArrayIndex (I)I ARG 1 n METHOD method_12139 get (III)I + COMMENT {@return the integer value of a nibble, in {@code [0, 15]}} ARG 1 x ARG 2 y ARG 3 z @@ -22,10 +32,26 @@ CLASS net/minecraft/class_2804 net/minecraft/world/chunk/ChunkNibbleArray METHOD method_12142 set (II)V ARG 1 index ARG 2 value + METHOD method_12143 occupiesSmallerBits (I)Z + COMMENT {@return if the nibble at {@code n} is stored in the less + COMMENT significant (smaller) 4 bits of the byte in the backing array} + ARG 1 n + COMMENT the index of the nibble, not the array index METHOD method_12144 copy ()Lnet/minecraft/class_2804; METHOD method_12145 set (IIII)V + COMMENT Sets the value of a nibble. + COMMENT + COMMENT

If the {@code value} has bits outside of the lowest 4 set to {@code 1}, + COMMENT (value is outside of {@code [0, 15]), the extraneous bits are discarded. ARG 1 x ARG 2 y ARG 3 z ARG 4 value METHOD method_12146 isUninitialized ()Z + METHOD method_35320 bottomToString (I)Ljava/lang/String; + COMMENT {@return a hexademical string representation of the {@code y=0} level of + COMMENT this array} + COMMENT + COMMENT

It is useful for debugging the grid nibble array. + ARG 1 unused + COMMENT unused diff --git a/mappings/net/minecraft/world/chunk/GridNibbleArray.mapping b/mappings/net/minecraft/world/chunk/GridNibbleArray.mapping new file mode 100644 index 0000000000..15a0981cf3 --- /dev/null +++ b/mappings/net/minecraft/world/chunk/GridNibbleArray.mapping @@ -0,0 +1,11 @@ +CLASS net/minecraft/class_4298 net/minecraft/world/chunk/GridNibbleArray + COMMENT A specialized chunk nibble array that ignores the Y parameters and only + COMMENT stores the nibbles for a 16 × 16 horizontal chunk slice. + COMMENT + COMMENT

When it is {@linkplain #toByteArray() converted to a byte array}, it + COMMENT fills each Y-level of the returned array with the same nibbles it stores. + FIELD field_31707 INDICES_PER_Y I + COMMENT The number of array indices each Y-level uses in a chunk nibble array. + METHOD (Lnet/minecraft/class_2804;I)V + ARG 1 array + ARG 2 y