30 private int $dimension,
31 private array $targetBiomes,
32 private float $amount,
33 private int $replacementIndex
36 public function getBiome() : int{ return $this->biome; }
38 public function getDimension() : int{ return $this->dimension; }
45 public function getAmount() : float{ return $this->amount; }
47 public function getReplacementIndex() : int{ return $this->replacementIndex; }
49 public static function read(ByteBufferReader $in) : self{
50 $biome = LE::readSignedShort($in);
51 $dimension = VarInt::readSignedInt($in);
53 $targetBiomeCount = VarInt::readUnsignedInt($in);
54 for($i = 0; $i < $targetBiomeCount; ++$i){
55 $targetBiomes[] = LE::readSignedShort($in);
57 $amount = LE::readFloat($in);
58 $replacementIndex = LE::readUnsignedInt($in);
59 return new self($biome, $dimension, $targetBiomes, $amount, $replacementIndex);
62 public function write(ByteBufferWriter $out) : void{
63 LE::writeSignedShort($out, $this->biome);
64 VarInt::writeSignedInt($out, $this->dimension);
65 VarInt::writeUnsignedInt($out, count($this->targetBiomes));
66 foreach($this->targetBiomes as $biome){
67 LE::writeSignedShort($out, $biome);
69 LE::writeFloat($out, $this->amount);
70 LE::writeUnsignedInt($out, $this->replacementIndex);