facing = $face; if($blockClicked instanceof EndRod && $blockClicked->facing === $this->facing){ $this->facing = Facing::opposite($face); } return parent::place($tx, $item, $blockReplace, $blockClicked, $face, $clickVector, $player); } public function isSolid() : bool{ return true; } public function getLightLevel() : int{ return 14; } /** * @return AxisAlignedBB[] */ protected function recalculateCollisionBoxes() : array{ $myAxis = Facing::axis($this->facing); $bb = AxisAlignedBB::one(); foreach([Axis::Y, Axis::Z, Axis::X] as $axis){ if($axis === $myAxis){ continue; } $bb->squash($axis, 6 / 16); } return [$bb]; } }