33 public function __construct(
36 private Block $centerPointCeilingVariant,
37 private Block $edgePointCeilingVariant,
38 private Block $wallVariant
40 parent::__construct($identifier, $name);
43 public function getPlacementBlock(
Block $blockReplace,
Block $blockClicked,
int $face,
Vector3 $clickVector) :
Block{
45 $result = $face === Facing::DOWN ?
46 $blockReplace->
getSide(Facing::UP)->getSupportType(Facing::DOWN) === SupportType::CENTER ?
47 $this->centerPointCeilingVariant :
48 $this->edgePointCeilingVariant
55 return $clickedFace ===
Facing::DOWN ? clone $this->centerPointCeilingVariant : clone $this->wallVariant;