Fixed an error that occurred when loading the plugin, because since paper build 404 the T2CodeLib was loaded only after OPSecurity
92 lines
3.7 KiB
Java
92 lines
3.7 KiB
Java
package net.t2code.opsecurity.system;
|
|
|
|
import lombok.Getter;
|
|
import net.t2code.opsecurity.Util;
|
|
import net.t2code.t2codelib.SPIGOT.api.messages.T2Ctemplate;
|
|
import org.bukkit.Bukkit;
|
|
import org.bukkit.plugin.java.JavaPlugin;
|
|
|
|
import java.io.File;
|
|
import java.util.List;
|
|
import java.util.logging.Level;
|
|
|
|
public final class Main extends JavaPlugin {
|
|
|
|
public static File getPath() {
|
|
return plugin.getDataFolder();
|
|
}
|
|
|
|
@Getter
|
|
private static Boolean t2codeLib = false;
|
|
@Getter
|
|
private static String version;
|
|
@Getter
|
|
private static List<String> autor;
|
|
@Getter
|
|
private static Main plugin;
|
|
|
|
@Override
|
|
public void onEnable() {
|
|
// Plugin startup logic
|
|
plugin = this;
|
|
autor = this.getDescription().getAuthors();
|
|
version = this.getDescription().getVersion();
|
|
if (pluginNotFound("T2CodeLib", 96388, Util.getRequiredT2CodeLibVersion())) return;
|
|
load();
|
|
|
|
|
|
}
|
|
private static void load(){
|
|
if (!Bukkit.getPluginManager().getPlugin("T2CodeLib").isEnabled()){
|
|
Bukkit.getScheduler().runTaskLaterAsynchronously(plugin, new Runnable() {
|
|
@Override
|
|
public void run() {
|
|
load();
|
|
}
|
|
},5L);
|
|
return;
|
|
}
|
|
t2codeLib = true;
|
|
Load.onLoad(plugin,autor,version);
|
|
}
|
|
|
|
@Override
|
|
public void onDisable() {
|
|
// Plugin shutdown logic
|
|
if (t2codeLib) T2Ctemplate.onDisable(Util.getPrefix(), autor, version, Util.getSpigot(), Util.getDiscord());
|
|
}
|
|
|
|
private static Boolean pluginNotFound(String pl, Integer spigotID, String ver) {
|
|
if (Bukkit.getPluginManager().getPlugin(pl) == null) {
|
|
plugin.getLogger().log(Level.SEVERE, "Plugin can not be loaded!");
|
|
Bukkit.getConsoleSender().sendMessage(Util.getPrefix() + " §e" + pl + " §4could not be found. Please download it here: "
|
|
+ "§6https://spigotmc.org/resources/" + pl + "." + spigotID + " §4to be able to use this plugin.");
|
|
Main.plugin.getPluginLoader().disablePlugin(Main.plugin);
|
|
return true;
|
|
} else {
|
|
String plVer = Bukkit.getPluginManager().getPlugin(pl).getDescription().getVersion();
|
|
if (ver.contains("_")) {
|
|
if (!plVer.equals(ver)) {
|
|
plugin.getLogger().log(Level.SEVERE, "Plugin can not be loaded!");
|
|
Bukkit.getConsoleSender().sendMessage(Util.getPrefix() + " §e" + pl + " §4is out of date! This plugin requires the version §2"
|
|
+ ver + " §4of §6" + pl + " §4Please use this version! Please download it here or contact us in Discord: §6https://spigotmc.org/resources/"
|
|
+ pl + "." + spigotID + " Or contact us in Discord: http://dc.t2code.net");
|
|
Main.plugin.getPluginLoader().disablePlugin(Main.plugin);
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
String[] split = plVer.split("_");
|
|
if (Double.parseDouble(split[0]) < Double.parseDouble(ver)) {
|
|
plugin.getLogger().log(Level.SEVERE, "Plugin can not be loaded!");
|
|
Bukkit.getConsoleSender().sendMessage(Util.getPrefix() + " §e" + pl + " §4is out of date! This plugin requires at least version §2"
|
|
+ ver + " §4of §6" + pl + " §4Please update it here: §6https://spigotmc.org/resources/" + pl + "." + spigotID
|
|
+ " §4to use this version of " + plugin.getDescription().getName() + ".");
|
|
Main.plugin.getPluginLoader().disablePlugin(Main.plugin);
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
}
|
|
}
|