diff --git a/src/pocketmine/Server.php b/src/pocketmine/Server.php index f60675df0..92d5a1f46 100644 --- a/src/pocketmine/Server.php +++ b/src/pocketmine/Server.php @@ -1525,7 +1525,7 @@ class Server{ $this->logger->info($this->getLanguage()->translateString("pocketmine.server.start", [TextFormat::AQUA . $this->getVersion() . TextFormat::RESET])); - $this->scheduler = new ServerScheduler(); + $this->scheduler = new ServerScheduler($this->logger); if(($poolSize = $this->getProperty("settings.async-workers", "auto")) === "auto"){ $poolSize = 2; diff --git a/src/pocketmine/scheduler/ServerScheduler.php b/src/pocketmine/scheduler/ServerScheduler.php index a71111217..99b28c4d0 100644 --- a/src/pocketmine/scheduler/ServerScheduler.php +++ b/src/pocketmine/scheduler/ServerScheduler.php @@ -29,10 +29,12 @@ namespace pocketmine\scheduler; use pocketmine\plugin\Plugin; use pocketmine\plugin\PluginException; -use pocketmine\Server; use pocketmine\utils\ReversePriorityQueue; class ServerScheduler{ + /** @var \Logger */ + private $logger; + /** * @var ReversePriorityQueue */ @@ -49,7 +51,8 @@ class ServerScheduler{ /** @var int */ protected $currentTick = 0; - public function __construct(){ + public function __construct(\Logger $logger){ + $this->logger = $logger; $this->queue = new ReversePriorityQueue(); } @@ -197,8 +200,8 @@ class ServerScheduler{ try{ $task->run($this->currentTick); }catch(\Throwable $e){ - Server::getInstance()->getLogger()->critical("Could not execute task " . $task->getTaskName() . ": " . $e->getMessage()); - Server::getInstance()->getLogger()->logException($e); + $this->logger->critical("Could not execute task " . $task->getTaskName() . ": " . $e->getMessage()); + $this->logger->logException($e); } $task->timings->stopTiming(); }