runelite-client: split plugin loading from plugin start so that plugins can access configuration on start

This commit is contained in:
Adam
2017-07-09 17:38:34 -04:00
parent 2aba47d1c3
commit 3ac8d9df67
2 changed files with 11 additions and 3 deletions

View File

@@ -121,13 +121,18 @@ public class RuneLite
eventBus.register(menuManager);
// Load the plugins, but does not start them yet.
// This will initialize configuration
pluginManager = new PluginManager(this);
pluginManager.loadAll();
pluginManager.loadPlugins();
// Plugins have registered their config, so set default config
// to main settings
configManager.loadDefault();
// Start plugins
pluginManager.start();
renderer = new OverlayRenderer();
loadSession();

View File

@@ -64,15 +64,15 @@ public class PluginManager
private final RuneLite runelite;
private ServiceManager manager;
private final List<Plugin> plugins = new ArrayList<>();
public PluginManager(RuneLite runelite)
{
this.runelite = runelite;
}
public void loadAll()
public void loadPlugins()
{
List<Plugin> plugins = new ArrayList<>();
plugins.add(new Boosts());
plugins.add(new OpponentInfo());
plugins.add(new FPS());
@@ -101,7 +101,10 @@ public class PluginManager
logger.info("Loading developer plugins");
plugins.add(new DevTools());
}
}
public void start()
{
// Add plugin listeners
for (Plugin plugin : plugins)
{