package gq.unurled.raxen; import com.comphenix.protocol.ProtocolLibrary; import com.comphenix.protocol.ProtocolManager; import gq.unurled.raxen.config.Config; import gq.unurled.raxen.config.PlayerConfig; import gq.unurled.raxen.manager.Manager; import gq.unurled.raxen.utils.Reload; import lombok.Getter; import org.bukkit.Bukkit; import org.bukkit.plugin.PluginManager; import org.bukkit.plugin.java.JavaPlugin; import java.util.logging.Logger; import static gq.unurled.raxen.utils.Utils.colorComp; public final class Raxen extends JavaPlugin { private static final String prefix = "Rx> "; @Getter private static String version = "0.4.9"; private final PluginManager pm = getServer().getPluginManager(); private static Raxen plugin; private static Logger logger; private static Config config; private static PlayerConfig playerConfig; @Getter private ProtocolManager protocolManager; @Getter private Manager manager; @Override public void onEnable() { plugin = this; logger = getLogger(); version = plugin.getDescription().getVersion(); manager = new Manager(); manager.set(plugin); // Config config = new Config(plugin); protocolManager = ProtocolLibrary.getProtocolManager(); playerConfig = new PlayerConfig(plugin); //register Commands and Events registerCommands(); registerEvents(); Bukkit.getConsoleSender().sendMessage(colorComp(prefix +"Server Started Successfully!")); manager.getListenerManager().getServerPingEvent().setLoading(false); } private void registerCommands() { manager.getCommandManager().register(); Bukkit.getConsoleSender().sendMessage(colorComp(prefix +"Commands Registered!")); } private void registerEvents() { manager.getListenerManager().register(); Bukkit.getConsoleSender().sendMessage(colorComp(prefix +"Events Registered!")); } @Override public void onDisable() { manager.getListenerManager().getServerPingEvent().setLoading(true); Reload.kickAll(); playerConfig.close(); Bukkit.getConsoleSender().sendMessage(colorComp(prefix +"Server Stopped Successfully!")); } public static Logger getPluginLogger() { return logger; } public PluginManager getPm() { return pm; } public static Raxen getPlugin() { return plugin; } public static String getPrefix() { return prefix; } public static PlayerConfig getPlayerConfig() { return playerConfig; } public static Config getConf() { return config; } }