levelId = $level->getId(); $this->chunk = $chunk->fastSerialize(); } public function onRun(){ if(!BlockFactory::isInit()){ BlockFactory::init(); } /** @var Chunk $chunk */ $chunk = Chunk::fastDeserialize($this->chunk); $chunk->recalculateHeightMap(); $chunk->populateSkyLight(); $chunk->setLightPopulated(); $this->chunk = $chunk->fastSerialize(); } public function onCompletion(Server $server){ $level = $server->getLevel($this->levelId); if($level !== null){ /** @var Chunk $chunk */ $chunk = Chunk::fastDeserialize($this->chunk); $level->generateChunkCallback($chunk->getX(), $chunk->getZ(), $chunk); } } }