Sonar: [squid:S3776] make the method easier
This commit is contained in:
@@ -268,7 +268,7 @@ public class ChunkDataPacket implements SCPacket {
|
||||
this.skyLight.set(bx, by, bz, skyLight);
|
||||
}
|
||||
|
||||
void writeToNetStream(final NetOutputStream netOutputStream) {
|
||||
private int getBitsPerBlock() {
|
||||
int bitsPerBlock = 4;
|
||||
if (palette.size() > 15) {
|
||||
if (palette.size() <= 31)
|
||||
@@ -281,15 +281,12 @@ public class ChunkDataPacket implements SCPacket {
|
||||
bitsPerBlock = 8;
|
||||
}
|
||||
|
||||
// <Palette>
|
||||
netOutputStream.writeUnsignedByte(bitsPerBlock); // Bits Per Block
|
||||
netOutputStream.writeVarInt(palette.size()); // Size of palette
|
||||
palette.forEach(netOutputStream::writeVarInt); // Palette
|
||||
// </Palette>
|
||||
// <Data Array>
|
||||
final int dataLength = (4096/*16*16*16*/ * bitsPerBlock) / 64/*size of long in bits*/;
|
||||
netOutputStream.writeVarInt(dataLength); // Size of Data Array
|
||||
// <Array>
|
||||
return bitsPerBlock;
|
||||
}
|
||||
|
||||
private void writePalette(final int bitsPerBlock,
|
||||
final NetOutputStream netOutputStream) {
|
||||
|
||||
long value = 0;
|
||||
int lastPos = 0;
|
||||
boolean fairy = false;
|
||||
@@ -324,6 +321,21 @@ public class ChunkDataPacket implements SCPacket {
|
||||
}
|
||||
}
|
||||
netOutputStream.writeLong(value);
|
||||
}
|
||||
|
||||
void writeToNetStream(final NetOutputStream netOutputStream) {
|
||||
final int bitsPerBlock = getBitsPerBlock();
|
||||
|
||||
// <Palette>
|
||||
netOutputStream.writeUnsignedByte(bitsPerBlock); // Bits Per Block
|
||||
netOutputStream.writeVarInt(palette.size()); // Size of palette
|
||||
palette.forEach(netOutputStream::writeVarInt); // Palette
|
||||
// </Palette>
|
||||
// <Data Array>
|
||||
final int dataLength = (4096/*16*16*16*/ * bitsPerBlock) / 64/*size of long in bits*/;
|
||||
netOutputStream.writeVarInt(dataLength); // Size of Data Array
|
||||
// <Array>
|
||||
writePalette(bitsPerBlock, netOutputStream);
|
||||
// </Array>
|
||||
// </Data Array>
|
||||
// <Block Light>
|
||||
|
||||
Reference in New Issue
Block a user