pocketmine\level\Level::getChunk PHP Method

getChunk() public method

Gets the Chunk object
public getChunk ( integer $x, integer $z, boolean $create = false ) : pocketmine\level\format\FullChunk | pocketmine\level\format\Chunk
$x integer
$z integer
$create boolean Whether to generate the chunk if it does not exist
return pocketmine\level\format\FullChunk | pocketmine\level\format\Chunk
    public function getChunk(int $x, int $z, bool $create = false)
    {
        if (isset($this->chunks[$index = Level::chunkHash($x, $z)])) {
            return $this->chunks[$index];
        } elseif ($this->loadChunk($x, $z, $create)) {
            return $this->chunks[$index];
        }
        return null;
    }

Usage Example

 public function onActivate(Level $level, Player $player, Block $block, Block $target, $face, $fx, $fy, $fz)
 {
     $entity = null;
     $chunk = $level->getChunk($block->getX() >> 4, $block->getZ() >> 4);
     if (!$chunk instanceof FullChunk) {
         return false;
     }
     $nbt = new Compound("", ["Pos" => new Enum("Pos", [new Double("", $block->getX() + 0.5), new Double("", $block->getY()), new Double("", $block->getZ() + 0.5)]), "Motion" => new Enum("Motion", [new Double("", 0), new Double("", 0), new Double("", 0)]), "Rotation" => new Enum("Rotation", [new Float("", lcg_value() * 360), new Float("", 0)])]);
     $entity = Entity::createEntity($this->meta, $chunk, $nbt);
     if ($entity instanceof Entity) {
         if ($player->isSurvival()) {
             --$this->count;
         }
         $entity->spawnToAll();
         return true;
     }
     return false;
 }
All Usage Examples Of pocketmine\level\Level::getChunk
Level