Block::readStateFromWorld() now returns the block object that should be used for the target position

this enables changing the block type completely if the situation calls for it.
This commit is contained in:
Dylan K. Taylor
2022-07-16 00:37:32 +01:00
parent b3f8b5ff37
commit 4f2f9b4352
19 changed files with 67 additions and 20 deletions

View File

@ -59,13 +59,15 @@ class Lectern extends Transparent{
$w->writeBool($this->producingSignal);
}
public function readStateFromWorld() : void{
public function readStateFromWorld() : Block{
parent::readStateFromWorld();
$tile = $this->position->getWorld()->getTile($this->position);
if($tile instanceof TileLectern){
$this->viewedPage = $tile->getViewedPage();
$this->book = $tile->getBook();
}
return $this;
}
public function writeStateToWorld() : void{