TabooLib v4.55
+ 对插件本体进行大面积整改,将一些过失或不再更新的工具类转移至 TabooLibDeprecated.jar 中。 + 对 SimpleCommandBuilder 进行了微调,动态注册后的命令前缀将显示为注册插件。 + 对 SimpleVersionControl 进行了微调,允许在 translate 类中选择所属插件。 + 对 ItemBuilder 进行了微调,允许使用 ItemStack 作为构造参数。 + ...
This commit is contained in:
@@ -4,9 +4,11 @@ import com.google.common.collect.Lists;
|
||||
import com.google.common.collect.Maps;
|
||||
import com.ilummc.tlib.TLib;
|
||||
import com.ilummc.tlib.annotations.Dependency;
|
||||
import com.ilummc.tlib.dependency.TDependencyLoader;
|
||||
import com.ilummc.tlib.inject.TDependencyInjector;
|
||||
import com.ilummc.tlib.resources.TLocale;
|
||||
import me.skymc.taboolib.bstats.Metrics;
|
||||
import me.skymc.taboolib.deprecated.TabooLibDeprecated;
|
||||
import me.skymc.taboolib.fileutils.FileUtils;
|
||||
import me.skymc.taboolib.listener.TListener;
|
||||
import me.skymc.taboolib.listener.TListenerHandler;
|
||||
@@ -32,11 +34,13 @@ import java.util.*;
|
||||
@TListener
|
||||
public class TabooLibLoader implements Listener {
|
||||
|
||||
static TabooLibDeprecated tabooLibDeprecated;
|
||||
static Map<String, List<Class>> pluginClasses = Maps.newHashMap();
|
||||
static List<Loader> loaders = Lists.newArrayList();
|
||||
|
||||
static void setup() {
|
||||
testInternet();
|
||||
setupAddons();
|
||||
setupDataFolder();
|
||||
setupDatabase();
|
||||
setupLibraries();
|
||||
@@ -44,15 +48,24 @@ public class TabooLibLoader implements Listener {
|
||||
|
||||
static void register() {
|
||||
setupClasses();
|
||||
loadClasses();
|
||||
registerListener();
|
||||
registerMetrics();
|
||||
loadClasses();
|
||||
try {
|
||||
tabooLibDeprecated = new TabooLibDeprecated();
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
static void unregister() {
|
||||
unloadClasses();
|
||||
}
|
||||
|
||||
public static TabooLibDeprecated getTabooLibDeprecated() {
|
||||
return tabooLibDeprecated;
|
||||
}
|
||||
|
||||
public static Optional<List<Class>> getPluginClasses(Plugin plugin) {
|
||||
return Optional.ofNullable(pluginClasses.get(plugin.getName()));
|
||||
}
|
||||
@@ -84,6 +97,14 @@ public class TabooLibLoader implements Listener {
|
||||
metrics.addCustomChart(new Metrics.SingleLineChart("plugins_using_taboolib", () -> Math.toIntExact(Arrays.stream(Bukkit.getPluginManager().getPlugins()).filter(plugin -> plugin.getDescription().getDepend().contains("TabooLib")).count())));
|
||||
}
|
||||
|
||||
static void setupAddons() {
|
||||
TabooLib.instance().saveResource("Addons/TabooLibDeprecated.jar", true);
|
||||
File file = new File(TabooLib.instance().getDataFolder(), "Addons");
|
||||
if (file.exists()) {
|
||||
Arrays.stream(file.listFiles()).forEach(listFile -> TDependencyLoader.addToPath(TabooLib.instance(), listFile));
|
||||
}
|
||||
}
|
||||
|
||||
static void setupDataFolder() {
|
||||
Main.setPlayerDataFolder(FileUtils.folder(Main.getInst().getConfig().getString("DATAURL.PLAYER-DATA")));
|
||||
Main.setServerDataFolder(FileUtils.folder(Main.getInst().getConfig().getString("DATAURL.SERVER-DATA")));
|
||||
|
||||
Reference in New Issue
Block a user