public function place(Item $item, Block $block, Block $target, $face, $fx, $fy, $fz, Player $player = null)
{
if ($face !== 0) {
$faces = [2 => 2, 3 => 3, 4 => 4, 5 => 5];
if (!isset($faces[$face])) {
$this->meta = floor(($player->yaw + 180) * 16 / 360 + 0.5) & 0xf;
$this->getLevel()->setBlock($block, Block::get(Item::SIGN_POST, $this->meta), true);
return true;
} else {
$this->meta = $faces[$face];
$this->getLevel()->setBlock($block, Block::get(Item::WALL_SIGN, $this->meta), true);
return true;
}
}
return false;
}