@@ -17,32 +17,20 @@ bool PluginManager::PluginExists(std::string plugin_name)
1717 return (pluginsMap.find (plugin_name) != pluginsMap.end ());
1818}
1919
20- void PluginManager::LoadPlugins ()
20+ void PluginManager::LoadPlugins (std::string directory = " " )
2121{
22- if (!Files::ExistsPath (" addons/swiftly/plugins" ))
23- Files::CreateDirectory (" addons/swiftly/plugins" );
22+ if (!Files::ExistsPath (" addons/swiftly/plugins" + directory ))
23+ Files::CreateDirectory (" addons/swiftly/plugins" + directory );
2424
25- std::vector<std::string> plugins = Files::FetchDirectories (" addons/swiftly/plugins" );
25+ std::vector<std::string> plugins = Files::FetchDirectories (" addons/swiftly/plugins" + directory );
2626 for (std::string folder : plugins)
2727 {
2828 // Skips over disabled
2929 if (folder.find (" disabled" ) != std::string::npos)
3030 continue ;
3131
3232 if (folder.find (" [" ) == 0 )
33- {
34- std::vector<std::string> subFolders = Files::FetchDirectories (folder);
35- for (std::string subFolder : subFolders)
36- {
37- std::string plugin_base_path = " addons/swiftly/plugins/" + folder + " /" ;
38- std::string plugin_name = replace (subFolder, plugin_base_path, " " );
39-
40- plugin_name = replace (plugin_name, WIN_LINUX (" \\ " , " /" ), " " );
41-
42- LoadPlugin (plugin_name);
43- }
44-
45- }
33+ LoadPlugins (directory + " /" + folder);
4634 else
4735 {
4836 folder = replace (folder, " addons/swiftly/plugins" , " " );
0 commit comments