mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-06-27 21:59:52 +00:00
Catch exceptions on level generation
This commit is contained in:
parent
f46473bbe8
commit
e8ad828498
@ -1142,6 +1142,7 @@ class Server{
|
|||||||
$provider = LevelProviderManager::getProviderByName($providerName = "mcregion");
|
$provider = LevelProviderManager::getProviderByName($providerName = "mcregion");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
try{
|
||||||
$path = $this->getDataPath() . "worlds/" . $name . "/";
|
$path = $this->getDataPath() . "worlds/" . $name . "/";
|
||||||
/** @var \pocketmine\level\format\LevelProvider $provider */
|
/** @var \pocketmine\level\format\LevelProvider $provider */
|
||||||
$provider::generate($path, $name, $seed, $generator, $options);
|
$provider::generate($path, $name, $seed, $generator, $options);
|
||||||
@ -1150,6 +1151,13 @@ class Server{
|
|||||||
$this->levels[$level->getId()] = $level;
|
$this->levels[$level->getId()] = $level;
|
||||||
|
|
||||||
$level->initLevel();
|
$level->initLevel();
|
||||||
|
}catch(\Exception $e){
|
||||||
|
$this->logger->error("Could not generate level \"" . $name . "\": " . $e->getMessage());
|
||||||
|
if($this->logger instanceof MainLogger){
|
||||||
|
$this->logger->logException($e);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
$this->getPluginManager()->callEvent(new LevelInitEvent($level));
|
$this->getPluginManager()->callEvent(new LevelInitEvent($level));
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user