Fixed extra data encoding

This commit is contained in:
Dylan K. Taylor 2016-12-04 17:46:56 +00:00
parent d74486a64a
commit a0cda3b45a

View File

@ -619,9 +619,16 @@ class GenericChunk implements Chunk{
$result .= $this->subChunks[$y]->networkSerialize(); $result .= $this->subChunks[$y]->networkSerialize();
} }
$result .= pack("v*", ...$this->heightMap) $result .= pack("v*", ...$this->heightMap)
. $this->biomeIds . $this->biomeIds
. "\x00" //border block array count (TODO) . chr(0); //border block array count (TODO)
. "\x00\x00\x00\x00"; //extra data array (TODO)
$extraData = new BinaryStream();
$extraData->putVarInt(count($this->extraData)); //WHY, Mojang, WHY
foreach($this->extraData as $key => $value){
$extraData->putVarInt($key);
$extraData->putLShort($value);
}
$result .= $extraData->getBuffer();
if(count($this->tiles) > 0){ if(count($this->tiles) > 0){
$nbt = new NBT(NBT::LITTLE_ENDIAN); $nbt = new NBT(NBT::LITTLE_ENDIAN);