diff options
author | Mattes D <github@xoft.cz> | 2015-03-24 13:09:41 +0100 |
---|---|---|
committer | Mattes D <github@xoft.cz> | 2015-03-24 13:09:41 +0100 |
commit | e5a7a730ed4f26eae896c56391bf3d2b5fecb852 (patch) | |
tree | 0209c1567f60af60999f3aeeb513a72f9eab2743 /src/Protocol/ChunkDataSerializer.cpp | |
parent | Merge pull request #1775 from tommysanterre/terrainheightfix (diff) | |
parent | Added VarInt64, normalized cPacketizer datatype names. (diff) | |
download | cuberite-e5a7a730ed4f26eae896c56391bf3d2b5fecb852.tar cuberite-e5a7a730ed4f26eae896c56391bf3d2b5fecb852.tar.gz cuberite-e5a7a730ed4f26eae896c56391bf3d2b5fecb852.tar.bz2 cuberite-e5a7a730ed4f26eae896c56391bf3d2b5fecb852.tar.lz cuberite-e5a7a730ed4f26eae896c56391bf3d2b5fecb852.tar.xz cuberite-e5a7a730ed4f26eae896c56391bf3d2b5fecb852.tar.zst cuberite-e5a7a730ed4f26eae896c56391bf3d2b5fecb852.zip |
Diffstat (limited to '')
-rw-r--r-- | src/Protocol/ChunkDataSerializer.cpp | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/src/Protocol/ChunkDataSerializer.cpp b/src/Protocol/ChunkDataSerializer.cpp index 5d080656d..60fd5f935 100644 --- a/src/Protocol/ChunkDataSerializer.cpp +++ b/src/Protocol/ChunkDataSerializer.cpp @@ -187,11 +187,11 @@ void cChunkDataSerializer::Serialize47(AString & a_Data, int a_ChunkX, int a_Chu // Create the packet: cByteBuffer Packet(512 KiB); - Packet.WriteVarInt(0x21); // Packet id (Chunk Data packet) - Packet.WriteBEInt(a_ChunkX); - Packet.WriteBEInt(a_ChunkZ); - Packet.WriteBool(true); // "Ground-up continuous", or rather, "biome data present" flag - Packet.WriteBEUShort(0xffff); // We're aways sending the full chunk with no additional data, so the bitmap is 0xffff + Packet.WriteVarInt32(0x21); // Packet id (Chunk Data packet) + Packet.WriteBEInt32(a_ChunkX); + Packet.WriteBEInt32(a_ChunkZ); + Packet.WriteBool(true); // "Ground-up continuous", or rather, "biome data present" flag + Packet.WriteBEUInt16(0xffff); // We're aways sending the full chunk with no additional data, so the bitmap is 0xffff // Write the chunk size: const int BiomeDataSize = cChunkDef::Width * cChunkDef::Width; @@ -201,15 +201,15 @@ void cChunkDataSerializer::Serialize47(AString & a_Data, int a_ChunkX, int a_Chu sizeof(m_BlockSkyLight) + // Block sky light BiomeDataSize // Biome data ); - Packet.WriteVarInt(ChunkSize); + Packet.WriteVarInt32(ChunkSize); // Write the block types to the packet: for (size_t Index = 0; Index < cChunkDef::NumBlocks; Index++) { BLOCKTYPE BlockType = m_BlockTypes[Index] & 0xFF; NIBBLETYPE BlockMeta = m_BlockMetas[Index / 2] >> ((Index & 1) * 4) & 0x0f; - Packet.WriteByte((unsigned char)(BlockType << 4) | BlockMeta); - Packet.WriteByte((unsigned char)(BlockType >> 4)); + Packet.WriteBEUInt8(static_cast<unsigned char>(BlockType << 4) | BlockMeta); + Packet.WriteBEUInt8(static_cast<unsigned char>(BlockType >> 4)); } // Write the rest: @@ -234,8 +234,8 @@ void cChunkDataSerializer::Serialize47(AString & a_Data, int a_ChunkX, int a_Chu else { AString PostData; - Buffer.WriteVarInt((UInt32)Packet.GetUsedSpace() + 1); - Buffer.WriteVarInt(0); + Buffer.WriteVarInt32(static_cast<UInt32>(Packet.GetUsedSpace() + 1)); + Buffer.WriteVarInt32(0); Buffer.ReadAll(PostData); Buffer.CommitRead(); |