Add files via upload
This commit is contained in:
@@ -16,16 +16,16 @@ import pers.xanadu.enderdragon.command.TabCompleter;
|
|||||||
import pers.xanadu.enderdragon.config.Config;
|
import pers.xanadu.enderdragon.config.Config;
|
||||||
import pers.xanadu.enderdragon.config.Lang;
|
import pers.xanadu.enderdragon.config.Lang;
|
||||||
import pers.xanadu.enderdragon.gui.GUIHolder;
|
import pers.xanadu.enderdragon.gui.GUIHolder;
|
||||||
import pers.xanadu.enderdragon.hook.Papi;
|
import pers.xanadu.enderdragon.hook.HookManager;
|
||||||
import pers.xanadu.enderdragon.listener.*;
|
import pers.xanadu.enderdragon.listener.*;
|
||||||
import pers.xanadu.enderdragon.listener.mythiclib.PlayerAttackListener;
|
import pers.xanadu.enderdragon.listener.mythiclib.PlayerAttackListener;
|
||||||
import pers.xanadu.enderdragon.manager.*;
|
import pers.xanadu.enderdragon.manager.*;
|
||||||
|
import pers.xanadu.enderdragon.maven.DependencyManager;
|
||||||
import pers.xanadu.enderdragon.metrics.Metrics;
|
import pers.xanadu.enderdragon.metrics.Metrics;
|
||||||
import pers.xanadu.enderdragon.nms.BossBar.I_BossBarManager;
|
import pers.xanadu.enderdragon.nms.BossBar.I_BossBarManager;
|
||||||
import pers.xanadu.enderdragon.nms.NMSItem.I_NMSItemManager;
|
import pers.xanadu.enderdragon.nms.NMSItem.I_NMSItemManager;
|
||||||
import pers.xanadu.enderdragon.nms.RespawnAnchor.I_RespawnAnchorManager;
|
import pers.xanadu.enderdragon.nms.RespawnAnchor.I_RespawnAnchorManager;
|
||||||
import pers.xanadu.enderdragon.nms.WorldData.I_WorldDataManager;
|
import pers.xanadu.enderdragon.nms.WorldData.I_WorldDataManager;
|
||||||
import pers.xanadu.enderdragon.task.DragonRespawnRunnable;
|
|
||||||
import pers.xanadu.enderdragon.util.NMSUtil;
|
import pers.xanadu.enderdragon.util.NMSUtil;
|
||||||
import pers.xanadu.enderdragon.util.Version;
|
import pers.xanadu.enderdragon.util.Version;
|
||||||
|
|
||||||
@@ -34,12 +34,11 @@ import java.util.ArrayList;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
import static pers.xanadu.enderdragon.util.MyUpdater.checkUpdate;
|
import static pers.xanadu.enderdragon.util.UpdateChecker.checkUpdate;
|
||||||
|
|
||||||
public final class EnderDragon extends JavaPlugin {
|
public final class EnderDragon extends JavaPlugin {
|
||||||
private static EnderDragon instance;
|
private static EnderDragon instance;
|
||||||
public static Plugin plugin;
|
public static Plugin plugin;
|
||||||
public static Server server;
|
|
||||||
public static PluginManager pm;
|
public static PluginManager pm;
|
||||||
public static File dataF;
|
public static File dataF;
|
||||||
public static File langF;
|
public static File langF;
|
||||||
@@ -54,14 +53,17 @@ public final class EnderDragon extends JavaPlugin {
|
|||||||
private I_RespawnAnchorManager i_respawnAnchorManager;
|
private I_RespawnAnchorManager i_respawnAnchorManager;
|
||||||
private static boolean finish = false;
|
private static boolean finish = false;
|
||||||
@Override
|
@Override
|
||||||
|
public void onLoad(){
|
||||||
|
plugin = this;
|
||||||
|
instance = this;
|
||||||
|
pm = Bukkit.getPluginManager();
|
||||||
|
loadConfig();
|
||||||
|
if(Config.expansion_groovy) DependencyManager.onEnable();
|
||||||
|
}
|
||||||
|
@Override
|
||||||
public void onEnable() {
|
public void onEnable() {
|
||||||
Lang.info("Enabling plugin...");
|
Lang.info("Enabling plugin...");
|
||||||
Lang.info("Author: Xanadu13");
|
Lang.info("Author: Xanadu13");
|
||||||
plugin = this;
|
|
||||||
instance = this;
|
|
||||||
server = plugin.getServer();
|
|
||||||
pm = Bukkit.getPluginManager();
|
|
||||||
loadConfig();
|
|
||||||
Version.init();
|
Version.init();
|
||||||
dragonManager = new DragonManager();
|
dragonManager = new DragonManager();
|
||||||
worldManager = new WorldManager();
|
worldManager = new WorldManager();
|
||||||
@@ -81,22 +83,22 @@ public final class EnderDragon extends JavaPlugin {
|
|||||||
TimerManager.enable();
|
TimerManager.enable();
|
||||||
registerEvents();
|
registerEvents();
|
||||||
registerCommands();
|
registerCommands();
|
||||||
handleHooks();
|
HookManager.init();
|
||||||
reloadAll();
|
reloadAll();
|
||||||
if(Config.advanced_setting_save_respawn_status) setRespawnStatus();
|
if(Config.advanced_setting_save_respawn_status) setRespawnStatus();
|
||||||
// if(Config.advanced_setting_glowing_fix) fixGlowing();
|
// if(Config.advanced_setting_glowing_fix) fixGlowing();
|
||||||
checkUpdate();
|
checkUpdate();
|
||||||
new Metrics(this,14850);
|
new Metrics(this,14850);
|
||||||
boolean out_of_date = false;
|
boolean out_of_date = false;
|
||||||
if(!"2.1.0".equals(Lang.version)){
|
if(!Version.lang.equals(Lang.version)){
|
||||||
out_of_date = true;
|
out_of_date = true;
|
||||||
Lang.warn(Lang.plugin_wrong_file_version.replace("{file_name}", Config.lang + ".yml"));
|
Lang.warn(Lang.plugin_wrong_file_version.replace("{file_name}", Config.lang + ".yml"));
|
||||||
}
|
}
|
||||||
if(!"2.1.0".equals(Config.version)){
|
if(!Version.config.equals(Config.version)){
|
||||||
out_of_date = true;
|
out_of_date = true;
|
||||||
Lang.warn(Lang.plugin_wrong_file_version.replace("{file_name}","config.yml"));
|
Lang.warn(Lang.plugin_wrong_file_version.replace("{file_name}","config.yml"));
|
||||||
}
|
}
|
||||||
if(!"2.1.0".equals(data.getString("version"))){
|
if(!Version.data.equals(data.getString("version"))){
|
||||||
out_of_date = true;
|
out_of_date = true;
|
||||||
Lang.warn(Lang.plugin_wrong_file_version.replace("{file_name}","data.yml"));
|
Lang.warn(Lang.plugin_wrong_file_version.replace("{file_name}","data.yml"));
|
||||||
}
|
}
|
||||||
@@ -107,12 +109,16 @@ public final class EnderDragon extends JavaPlugin {
|
|||||||
WorldManager.reload();
|
WorldManager.reload();
|
||||||
GlowManager.reload();
|
GlowManager.reload();
|
||||||
EnderDragon.getInstance().loadFiles();
|
EnderDragon.getInstance().loadFiles();
|
||||||
|
if(DependencyManager.isGroovyLoaded()) {
|
||||||
|
Config.saveDirectoryResource("expansion/groovy",false);
|
||||||
|
GroovyManager.reload();
|
||||||
|
}
|
||||||
BukkitRunnable runnable = new BukkitRunnable() {
|
BukkitRunnable runnable = new BukkitRunnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
if(!TaskManager.getCurrentTimeWithSpecialFormat().endsWith("0")) return;
|
if(!TaskManager.getCurrentTimeWithSpecialFormat().endsWith("0")) return;
|
||||||
this.cancel();
|
this.cancel();
|
||||||
DragonRespawnRunnable.reload();
|
TaskManager.reload();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
new BukkitRunnable() {
|
new BukkitRunnable() {
|
||||||
@@ -122,11 +128,8 @@ public final class EnderDragon extends JavaPlugin {
|
|||||||
this.cancel();
|
this.cancel();
|
||||||
DragonManager.reload();
|
DragonManager.reload();
|
||||||
GuiManager.loadGui();
|
GuiManager.loadGui();
|
||||||
if(Config.auto_respawn_enable){
|
|
||||||
TaskManager.reload();
|
|
||||||
runnable.runTaskTimer(plugin,0,1);
|
runnable.runTaskTimer(plugin,0,1);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}.runTaskTimer(plugin, 1, 5);
|
}.runTaskTimer(plugin, 1, 5);
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
@@ -135,10 +138,11 @@ public final class EnderDragon extends JavaPlugin {
|
|||||||
if(Config.advanced_setting_save_respawn_status){
|
if(Config.advanced_setting_save_respawn_status){
|
||||||
Bukkit.getWorlds().forEach(world -> {
|
Bukkit.getWorlds().forEach(world -> {
|
||||||
if(!Config.blacklist_worlds.contains(world.getName())){
|
if(!Config.blacklist_worlds.contains(world.getName())){
|
||||||
|
char split = data.options().pathSeparator();
|
||||||
if(EnderDragon.getInstance().getDragonManager().isRespawnRunning(world)){
|
if(EnderDragon.getInstance().getDragonManager().isRespawnRunning(world)){
|
||||||
data.set("respawn_fix."+world.getName(),true);
|
data.set("respawn_fix"+split+world.getName(),true);
|
||||||
}
|
}
|
||||||
else data.set("respawn_fix."+world.getName(),false);
|
else data.set("respawn_fix"+split+world.getName(),false);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -166,24 +170,20 @@ public final class EnderDragon extends JavaPlugin {
|
|||||||
GuiManager.disable();
|
GuiManager.disable();
|
||||||
instance.unregisterCommands();
|
instance.unregisterCommands();
|
||||||
HandlerList.unregisterAll(plugin);
|
HandlerList.unregisterAll(plugin);
|
||||||
server.getScheduler().cancelTasks(plugin);
|
plugin.getServer().getScheduler().cancelTasks(plugin);
|
||||||
server.getServicesManager().unregisterAll(plugin);
|
plugin.getServer().getServicesManager().unregisterAll(plugin);
|
||||||
Lang.warn(Lang.plugin_disable);
|
Lang.warn(Lang.plugin_disable);
|
||||||
System.gc();
|
System.gc();
|
||||||
}
|
}
|
||||||
private void handleHooks(){
|
|
||||||
if(pm.getPlugin("PlaceholderAPI") != null){
|
|
||||||
Lang.info("Hooking to PlaceholderAPI...");
|
|
||||||
new Papi(this);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
private void registerEvents(){
|
private void registerEvents(){
|
||||||
pm.registerEvents(new CreatureSpawnListener(),this);
|
|
||||||
pm.registerEvents(new DragonAttackListener(),this);
|
pm.registerEvents(new DragonAttackListener(),this);
|
||||||
pm.registerEvents(new DragonDamageByPlayerListener(),this);
|
pm.registerEvents(new DragonDamageByPlayerListener(),this);
|
||||||
pm.registerEvents(new DragonDeathListener(),this);
|
pm.registerEvents(new DragonDeathListener(),this);
|
||||||
pm.registerEvents(new DragonExplosionHurtListener(),this);
|
pm.registerEvents(new DragonExplosionHurtListener(),this);
|
||||||
|
pm.registerEvents(new DragonFireballListener(),this);
|
||||||
pm.registerEvents(new DragonHealListener(),this);
|
pm.registerEvents(new DragonHealListener(),this);
|
||||||
|
pm.registerEvents(new DragonSpawnListener(),this);
|
||||||
//pm.registerEvents(new EndGatewayListener(),this);
|
//pm.registerEvents(new EndGatewayListener(),this);
|
||||||
pm.registerEvents(new InventoryListener(),this);
|
pm.registerEvents(new InventoryListener(),this);
|
||||||
pm.registerEvents(new PlayerListener(),this);
|
pm.registerEvents(new PlayerListener(),this);
|
||||||
|
|||||||
Reference in New Issue
Block a user