Introduce TileFactory

This commit is contained in:
Dylan K. Taylor
2019-01-07 00:20:24 +00:00
parent 7d827a1c65
commit 78cb6445a5
26 changed files with 220 additions and 176 deletions

View File

@ -35,7 +35,7 @@ use pocketmine\math\Facing;
use pocketmine\math\Vector3;
use pocketmine\Player;
use pocketmine\tile\Bed as TileBed;
use pocketmine\tile\Tile;
use pocketmine\tile\TileFactory;
use pocketmine\utils\TextFormat;
class Bed extends Transparent{
@ -88,7 +88,7 @@ class Bed extends Transparent{
parent::writeStateToWorld();
//extra block properties storage hack
/** @var TileBed $tile */
$tile = Tile::create(TileBed::class, $this->getLevel(), $this->asVector3());
$tile = TileFactory::create(TileBed::class, $this->getLevel(), $this->asVector3());
$tile->setColor($this->color);
$this->level->addTile($tile);
}

View File

@ -30,7 +30,7 @@ use pocketmine\math\Facing;
use pocketmine\math\Vector3;
use pocketmine\Player;
use pocketmine\tile\Chest as TileChest;
use pocketmine\tile\Tile;
use pocketmine\tile\TileFactory;
class Chest extends Transparent{
@ -95,7 +95,7 @@ class Chest extends Transparent{
if(parent::place($item, $blockReplace, $blockClicked, $face, $clickVector, $player)){
/** @var TileChest $tile */
$tile = Tile::createFromItem(TileChest::class, $this->getLevel(), $this->asVector3(), $item);
$tile = TileFactory::createFromItem(TileChest::class, $this->getLevel(), $this->asVector3(), $item);
$this->level->addTile($tile);
if($pair instanceof TileChest){

View File

@ -31,7 +31,7 @@ use pocketmine\math\Facing;
use pocketmine\math\Vector3;
use pocketmine\Player;
use pocketmine\tile\EnchantTable as TileEnchantingTable;
use pocketmine\tile\Tile;
use pocketmine\tile\TileFactory;
class EnchantingTable extends Transparent{
@ -43,7 +43,7 @@ class EnchantingTable extends Transparent{
public function place(Item $item, Block $blockReplace, Block $blockClicked, int $face, Vector3 $clickVector, Player $player = null) : bool{
if(parent::place($item, $blockReplace, $blockClicked, $face, $clickVector, $player)){
$this->level->addTile(Tile::createFromItem(TileEnchantingTable::class, $this->getLevel(), $this->asVector3(), $item));
$this->level->addTile(TileFactory::createFromItem(TileEnchantingTable::class, $this->getLevel(), $this->asVector3(), $item));
return true;
}

View File

@ -30,7 +30,7 @@ use pocketmine\math\Facing;
use pocketmine\math\Vector3;
use pocketmine\Player;
use pocketmine\tile\EnderChest as TileEnderChest;
use pocketmine\tile\Tile;
use pocketmine\tile\TileFactory;
class EnderChest extends Chest{
@ -66,7 +66,7 @@ class EnderChest extends Chest{
}
if(Block::place($item, $blockReplace, $blockClicked, $face, $clickVector, $player)){
$this->level->addTile(Tile::createFromItem(TileEnderChest::class, $this->getLevel(), $this->asVector3(), $item));
$this->level->addTile(TileFactory::createFromItem(TileEnderChest::class, $this->getLevel(), $this->asVector3(), $item));
return true;
}

View File

@ -29,7 +29,7 @@ use pocketmine\math\Facing;
use pocketmine\math\Vector3;
use pocketmine\Player;
use pocketmine\tile\FlowerPot as TileFlowerPot;
use pocketmine\tile\Tile;
use pocketmine\tile\TileFactory;
class FlowerPot extends Flowable{
@ -69,7 +69,7 @@ class FlowerPot extends Flowable{
}
if(parent::place($item, $blockReplace, $blockClicked, $face, $clickVector, $player)){
$this->level->addTile(Tile::createFromItem(TileFlowerPot::class, $this->getLevel(), $this->asVector3(), $item));
$this->level->addTile(TileFactory::createFromItem(TileFlowerPot::class, $this->getLevel(), $this->asVector3(), $item));
return true;
}

View File

@ -30,7 +30,7 @@ use pocketmine\math\Facing;
use pocketmine\math\Vector3;
use pocketmine\Player;
use pocketmine\tile\Furnace as TileFurnace;
use pocketmine\tile\Tile;
use pocketmine\tile\TileFactory;
class Furnace extends Solid{
@ -100,7 +100,7 @@ class Furnace extends Solid{
$this->facing = Facing::opposite($player->getHorizontalFacing());
}
if(parent::place($item, $blockReplace, $blockClicked, $face, $clickVector, $player)){
$this->level->addTile(Tile::createFromItem(TileFurnace::class, $this->getLevel(), $this->asVector3(), $item));
$this->level->addTile(TileFactory::createFromItem(TileFurnace::class, $this->getLevel(), $this->asVector3(), $item));
return true;
}

View File

@ -29,7 +29,7 @@ use pocketmine\math\Facing;
use pocketmine\math\Vector3;
use pocketmine\Player;
use pocketmine\tile\ItemFrame as TileItemFrame;
use pocketmine\tile\Tile;
use pocketmine\tile\TileFactory;
use function lcg_value;
class ItemFrame extends Flowable{
@ -87,7 +87,7 @@ class ItemFrame extends Flowable{
$this->facing = $face;
if(parent::place($item, $blockReplace, $blockClicked, $face, $clickVector, $player)){
$this->level->addTile(Tile::createFromItem(TileItemFrame::class, $this->getLevel(), $this->asVector3(), $item));
$this->level->addTile(TileFactory::createFromItem(TileItemFrame::class, $this->getLevel(), $this->asVector3(), $item));
return true;
}

View File

@ -29,7 +29,7 @@ use pocketmine\math\Facing;
use pocketmine\math\Vector3;
use pocketmine\Player;
use pocketmine\tile\Sign as TileSign;
use pocketmine\tile\Tile;
use pocketmine\tile\TileFactory;
use function floor;
class SignPost extends Transparent{
@ -84,7 +84,7 @@ class SignPost extends Transparent{
}
if($ret){
$this->level->addTile(Tile::createFromItem(TileSign::class, $this->getLevel(), $this->asVector3(), $item));
$this->level->addTile(TileFactory::createFromItem(TileSign::class, $this->getLevel(), $this->asVector3(), $item));
return true;
}
}

View File

@ -31,7 +31,7 @@ use pocketmine\math\Facing;
use pocketmine\math\Vector3;
use pocketmine\Player;
use pocketmine\tile\Skull as TileSkull;
use pocketmine\tile\Tile;
use pocketmine\tile\TileFactory;
use function floor;
class Skull extends Flowable{
@ -73,7 +73,7 @@ class Skull extends Flowable{
public function writeStateToWorld() : void{
parent::writeStateToWorld();
/** @var TileSkull $tile */
$tile = Tile::create(TileSkull::class, $this->getLevel(), $this->asVector3());
$tile = TileFactory::create(TileSkull::class, $this->getLevel(), $this->asVector3());
$tile->setRotation($this->rotation);
$tile->setType($this->type);
$this->level->addTile($tile);

View File

@ -31,7 +31,7 @@ use pocketmine\math\Facing;
use pocketmine\math\Vector3;
use pocketmine\Player;
use pocketmine\tile\Banner as TileBanner;
use pocketmine\tile\Tile;
use pocketmine\tile\TileFactory;
use function floor;
class StandingBanner extends Transparent{
@ -85,7 +85,7 @@ class StandingBanner extends Transparent{
}
if($ret){
$this->level->addTile(Tile::createFromItem(TileBanner::class, $this->getLevel(), $this->asVector3(), $item));
$this->level->addTile(TileFactory::createFromItem(TileBanner::class, $this->getLevel(), $this->asVector3(), $item));
return true;
}
}