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

@ -53,13 +53,15 @@ abstract class BaseBanner extends Transparent{
parent::__construct($idInfo, $name, $breakInfo);
}
public function readStateFromWorld() : void{
public function readStateFromWorld() : Block{
parent::readStateFromWorld();
$tile = $this->position->getWorld()->getTile($this->position);
if($tile instanceof TileBanner){
$this->color = $tile->getBaseColor();
$this->setPatterns($tile->getPatterns());
}
return $this;
}
public function writeStateToWorld() : void{