mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-09-06 17:59:48 +00:00
Generalize runtime block data serialization
we want to reuse this code for item type data
This commit is contained in:
@ -24,10 +24,10 @@ declare(strict_types=1);
|
||||
namespace pocketmine\block;
|
||||
|
||||
use pocketmine\block\utils\LeverFacing;
|
||||
use pocketmine\data\runtime\block\BlockDataReader;
|
||||
use pocketmine\data\runtime\block\BlockDataReaderHelper;
|
||||
use pocketmine\data\runtime\block\BlockDataWriter;
|
||||
use pocketmine\data\runtime\block\BlockDataWriterHelper;
|
||||
use pocketmine\data\runtime\RuntimeDataReader;
|
||||
use pocketmine\data\runtime\RuntimeDataWriter;
|
||||
use pocketmine\data\runtime\RuntimeEnumDeserializer;
|
||||
use pocketmine\data\runtime\RuntimeEnumSerializer;
|
||||
use pocketmine\item\Item;
|
||||
use pocketmine\math\Axis;
|
||||
use pocketmine\math\Facing;
|
||||
@ -49,13 +49,13 @@ class Lever extends Flowable{
|
||||
|
||||
public function getRequiredStateDataBits() : int{ return 4; }
|
||||
|
||||
protected function decodeState(BlockDataReader $r) : void{
|
||||
$this->facing = BlockDataReaderHelper::readLeverFacing($r);
|
||||
protected function decodeState(RuntimeDataReader $r) : void{
|
||||
$this->facing = RuntimeEnumDeserializer::readLeverFacing($r);
|
||||
$this->activated = $r->readBool();
|
||||
}
|
||||
|
||||
protected function encodeState(BlockDataWriter $w) : void{
|
||||
BlockDataWriterHelper::writeLeverFacing($w, $this->facing);
|
||||
protected function encodeState(RuntimeDataWriter $w) : void{
|
||||
RuntimeEnumSerializer::writeLeverFacing($w, $this->facing);
|
||||
$w->writeBool($this->activated);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user