public function SignSpawn($text, $pos)
{
if ($this->getServer()->getDefaultLevel()->isChunkGenerated($pos[0], $pos[2])) {
$this->getServer()->getDefaultLevel()->generateChunk($pos[0], $pos[1]);
}
$chunk = $this->getServer()->getDefaultLevel()->getChunk($pos[0] >> 4, $pos[2] >> 4, true);
$nbt = new Compound("", [new String("Text1", $text[0]), new String("Text2", $text[1]), new String("Text3", $text[2]), new String("Text4", $text[3]), new String("id", Tile::SIGN), new Int("x", (int) $pos[0]), new Int("y", (int) $pos[1]), new Int("z", (int) $pos[2])]);
if (!$chunk instanceof FullChunk) {
break;
}
$entities = $this->getServer()->getDefaultLevel()->getEntities();
foreach ($entities as $tile) {
if (!$tile instanceof Tile) {
continue;
}
if ($tile->x != $pos[0] or $tile->y != $pos[1] or $tile->z != $pos[2]) {
continue;
}
$tile->close();
}
$id = $this->list[$pos[0] . "." . $pos[1] . "." . $pos[2]]['id'];
$damage = $this->list[$pos[0] . "." . $pos[1] . "." . $pos[2]]['damage'];
$this->getServer()->getDefaultLevel()->setBlock(new Vector3($pos[0], $pos[1], $pos[2]), Block::get($id, $damage), false, true);
$sign = new Sign($chunk, $nbt);
$sign->saveNBT();
$this->getServer()->getDefaultLevel()->addTile($sign);
}