2021-11-27 10:49:11 +00:00
|
|
|
package gq.unurled.raxen;
|
2021-11-20 10:33:03 +00:00
|
|
|
|
|
|
|
import com.comphenix.protocol.ProtocolLibrary;
|
|
|
|
import com.comphenix.protocol.ProtocolManager;
|
2021-11-27 10:49:11 +00:00
|
|
|
import gq.unurled.raxen.config.Config;
|
|
|
|
import gq.unurled.raxen.config.PlayerConfig;
|
2022-04-03 20:01:11 +00:00
|
|
|
import gq.unurled.raxen.manager.Manager;
|
2021-11-27 10:49:11 +00:00
|
|
|
import gq.unurled.raxen.utils.Reload;
|
2021-11-20 10:33:03 +00:00
|
|
|
import lombok.Getter;
|
2022-04-03 20:01:11 +00:00
|
|
|
import org.bukkit.Bukkit;
|
2021-11-20 10:33:03 +00:00
|
|
|
import org.bukkit.plugin.PluginManager;
|
|
|
|
import org.bukkit.plugin.java.JavaPlugin;
|
|
|
|
|
|
|
|
import java.util.logging.Logger;
|
|
|
|
|
2022-04-03 20:01:11 +00:00
|
|
|
import static gq.unurled.raxen.utils.Utils.colorComp;
|
2022-03-19 23:35:06 +00:00
|
|
|
|
2021-11-27 10:49:11 +00:00
|
|
|
public final class Raxen extends JavaPlugin {
|
2021-11-20 10:33:03 +00:00
|
|
|
|
2022-04-03 20:01:11 +00:00
|
|
|
private static final String prefix = "<aqua>Rx</aqua><light_purple>></light_purple> ";
|
2022-04-14 20:35:27 +00:00
|
|
|
@Getter private static String version = "0.5.1";
|
2021-11-20 10:33:03 +00:00
|
|
|
private final PluginManager pm = getServer().getPluginManager();
|
|
|
|
|
2021-11-27 10:49:11 +00:00
|
|
|
private static Raxen plugin;
|
2021-11-20 10:33:03 +00:00
|
|
|
|
|
|
|
private static Logger logger;
|
|
|
|
|
|
|
|
private static Config config;
|
|
|
|
|
|
|
|
private static PlayerConfig playerConfig;
|
|
|
|
|
2022-04-14 20:35:27 +00:00
|
|
|
@Getter private ProtocolManager protocolManager;
|
2022-04-03 20:01:11 +00:00
|
|
|
|
2022-04-14 20:35:27 +00:00
|
|
|
@Getter private Manager manager;
|
2021-11-20 10:33:03 +00:00
|
|
|
|
2022-04-14 20:35:27 +00:00
|
|
|
/**
|
|
|
|
* Method when the server launch the plugin.
|
|
|
|
*/
|
2021-11-20 10:33:03 +00:00
|
|
|
@Override
|
|
|
|
public void onEnable() {
|
|
|
|
plugin = this;
|
|
|
|
logger = getLogger();
|
2022-01-06 10:26:32 +00:00
|
|
|
version = plugin.getDescription().getVersion();
|
2022-04-03 20:01:11 +00:00
|
|
|
manager = new Manager();
|
|
|
|
manager.set(plugin);
|
2021-12-22 21:13:46 +00:00
|
|
|
|
2022-04-03 20:01:11 +00:00
|
|
|
// Config
|
|
|
|
config = new Config(plugin);
|
2021-11-20 10:33:03 +00:00
|
|
|
|
|
|
|
protocolManager = ProtocolLibrary.getProtocolManager();
|
|
|
|
|
2022-04-03 20:01:11 +00:00
|
|
|
playerConfig = new PlayerConfig(plugin);
|
2021-11-20 10:33:03 +00:00
|
|
|
|
2021-12-22 21:13:46 +00:00
|
|
|
//register Commands and Events
|
2021-11-20 10:33:03 +00:00
|
|
|
registerCommands();
|
|
|
|
registerEvents();
|
|
|
|
|
2022-04-03 20:01:11 +00:00
|
|
|
Bukkit.getConsoleSender().sendMessage(colorComp(prefix +"<green>Server Started Successfully!</green>"));
|
2022-02-24 21:04:29 +00:00
|
|
|
|
2022-04-03 20:01:11 +00:00
|
|
|
manager.getListenerManager().getServerPingEvent().setLoading(false);
|
2021-11-20 10:33:03 +00:00
|
|
|
}
|
|
|
|
|
2022-04-14 20:35:27 +00:00
|
|
|
/**
|
|
|
|
* register the command in the command manager class.
|
|
|
|
*/
|
2021-11-20 10:33:03 +00:00
|
|
|
private void registerCommands() {
|
2022-04-03 20:01:11 +00:00
|
|
|
manager.getCommandManager().register();
|
2021-11-20 10:33:03 +00:00
|
|
|
|
2022-04-03 20:01:11 +00:00
|
|
|
Bukkit.getConsoleSender().sendMessage(colorComp(prefix +"<green>Commands Registered!</green>"));
|
2021-11-20 10:33:03 +00:00
|
|
|
}
|
|
|
|
|
2022-04-14 20:35:27 +00:00
|
|
|
/**
|
|
|
|
* register the events in the event manager class.
|
|
|
|
*/
|
2021-11-20 10:33:03 +00:00
|
|
|
private void registerEvents() {
|
2022-04-03 20:01:11 +00:00
|
|
|
manager.getListenerManager().register();
|
2021-11-20 10:33:03 +00:00
|
|
|
|
2022-04-03 20:01:11 +00:00
|
|
|
Bukkit.getConsoleSender().sendMessage(colorComp(prefix +"<green>Events Registered!</green>"));
|
2021-11-20 10:33:03 +00:00
|
|
|
}
|
|
|
|
|
2022-04-14 20:35:27 +00:00
|
|
|
/**
|
|
|
|
* Method when the server stops the plugin.
|
|
|
|
*/
|
2021-11-20 10:33:03 +00:00
|
|
|
@Override
|
|
|
|
public void onDisable() {
|
2022-04-03 20:01:11 +00:00
|
|
|
manager.getListenerManager().getServerPingEvent().setLoading(true);
|
2021-11-20 10:33:03 +00:00
|
|
|
Reload.kickAll();
|
|
|
|
|
2021-12-25 22:16:54 +00:00
|
|
|
playerConfig.close();
|
|
|
|
|
2022-04-03 20:01:11 +00:00
|
|
|
Bukkit.getConsoleSender().sendMessage(colorComp(prefix +"<red>Server Stopped Successfully!</red>"));
|
2021-11-20 10:33:03 +00:00
|
|
|
}
|
|
|
|
|
2022-04-14 20:35:27 +00:00
|
|
|
/**
|
|
|
|
* getter for the logger
|
|
|
|
* @return the plugin logger
|
|
|
|
*/
|
2021-11-20 10:33:03 +00:00
|
|
|
public static Logger getPluginLogger() {
|
|
|
|
return logger;
|
|
|
|
}
|
|
|
|
|
2022-04-14 20:35:27 +00:00
|
|
|
/**
|
|
|
|
* getter for the bukkit's plugin manager
|
|
|
|
* @return plugin manager
|
|
|
|
*/
|
2021-11-20 10:33:03 +00:00
|
|
|
public PluginManager getPm() {
|
|
|
|
return pm;
|
|
|
|
}
|
|
|
|
|
2022-04-14 20:35:27 +00:00
|
|
|
/**
|
|
|
|
* return the instance which is launched.
|
|
|
|
* @return main instance
|
|
|
|
*/
|
2021-11-27 10:49:11 +00:00
|
|
|
public static Raxen getPlugin() {
|
2021-11-20 10:33:03 +00:00
|
|
|
return plugin;
|
|
|
|
}
|
|
|
|
|
2022-04-14 20:35:27 +00:00
|
|
|
/**
|
|
|
|
* getter for the raxen prefix
|
|
|
|
* @return string prefix
|
|
|
|
*/
|
2022-04-03 20:01:11 +00:00
|
|
|
public static String getPrefix() {
|
2021-11-20 10:33:03 +00:00
|
|
|
return prefix;
|
|
|
|
}
|
|
|
|
|
2022-04-14 20:35:27 +00:00
|
|
|
/**
|
|
|
|
* getter for the yml's player configs.
|
|
|
|
* @return player config instance
|
|
|
|
*/
|
2021-11-20 10:33:03 +00:00
|
|
|
public static PlayerConfig getPlayerConfig() {
|
|
|
|
return playerConfig;
|
|
|
|
}
|
2021-12-15 18:12:37 +00:00
|
|
|
|
2022-04-14 20:35:27 +00:00
|
|
|
/**
|
|
|
|
* getter for an instance of the config utility class
|
|
|
|
* @return raxen's config
|
|
|
|
*/
|
2021-12-15 18:12:37 +00:00
|
|
|
public static Config getConf() {
|
|
|
|
return config;
|
|
|
|
}
|
2021-11-20 10:33:03 +00:00
|
|
|
}
|