mirror of
https://github.com/pmmp/PocketMine-MP.git
synced 2025-05-17 11:18:52 +00:00
Drop PluginLoader from Plugin, expose path instead
we already had this anyway, and it's already being reflected into. Instead of DevTools checking for FolderPluginLoader instances, it could just check if the file is a directory instead.
This commit is contained in:
parent
3de604ef95
commit
2a42e2c75d
@ -259,10 +259,8 @@ class CrashDump{
|
||||
}
|
||||
|
||||
if(file_exists($filePath)){
|
||||
$reflection = new \ReflectionClass(PluginBase::class);
|
||||
$file = $reflection->getProperty("file");
|
||||
foreach($this->server->getPluginManager()->getPlugins() as $plugin){
|
||||
$filePath = Filesystem::cleanPath($file->getValue($plugin));
|
||||
$filePath = Filesystem::cleanPath($plugin->getFile());
|
||||
if(str_starts_with($frameCleanPath, $filePath)){
|
||||
$this->data->plugin = $plugin->getName();
|
||||
break;
|
||||
|
@ -34,7 +34,7 @@ use pocketmine\Server;
|
||||
*/
|
||||
interface Plugin{
|
||||
|
||||
public function __construct(PluginLoader $loader, Server $server, PluginDescription $description, string $dataFolder, string $file, string $resourceFolder);
|
||||
public function __construct(Server $server, PluginDescription $description, string $dataFolder, string $file, string $resourceFolder);
|
||||
|
||||
public function isEnabled() : bool;
|
||||
|
||||
@ -59,7 +59,7 @@ interface Plugin{
|
||||
|
||||
public function getLogger() : \AttachableLogger;
|
||||
|
||||
public function getPluginLoader() : PluginLoader;
|
||||
public function getFile() : string;
|
||||
|
||||
public function getScheduler() : TaskScheduler;
|
||||
|
||||
|
@ -59,7 +59,6 @@ abstract class PluginBase implements Plugin, CommandExecutor{
|
||||
private TaskScheduler $scheduler;
|
||||
|
||||
public function __construct(
|
||||
private PluginLoader $loader,
|
||||
private Server $server,
|
||||
private PluginDescription $description,
|
||||
private string $dataFolder,
|
||||
@ -311,14 +310,10 @@ abstract class PluginBase implements Plugin, CommandExecutor{
|
||||
return $this->description->getFullName();
|
||||
}
|
||||
|
||||
protected function getFile() : string{
|
||||
public function getFile() : string{
|
||||
return $this->file;
|
||||
}
|
||||
|
||||
public function getPluginLoader() : PluginLoader{
|
||||
return $this->loader;
|
||||
}
|
||||
|
||||
public function getScheduler() : TaskScheduler{
|
||||
return $this->scheduler;
|
||||
}
|
||||
|
@ -220,7 +220,7 @@ class PluginManager{
|
||||
* @var Plugin $plugin
|
||||
* @see Plugin::__construct()
|
||||
*/
|
||||
$plugin = new $mainClass($loader, $this->server, $description, $dataFolder, $prefixed, $prefixed . "/resources/");
|
||||
$plugin = new $mainClass($this->server, $description, $dataFolder, $prefixed, $prefixed . "/resources/");
|
||||
$this->plugins[$plugin->getDescription()->getName()] = $plugin;
|
||||
|
||||
return $plugin;
|
||||
|
Loading…
x
Reference in New Issue
Block a user