ThemeParkAudio/src/me/mctp/Main.java
2020-06-23 14:16:20 +02:00

90 lines
3.2 KiB
Java

package me.mctp;
import me.mctp.commands.MCTPAudioCMD;
import me.mctp.commands.MCTPShowCMD;
import me.mctp.listener.LogoutListener;
import me.mctp.listener.WGListener;
import me.mctp.managers.WGManager;
import me.mctp.radio.Playlist;
import me.mctp.socket.Client;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.event.Listener;
import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.java.JavaPlugin;
public class Main extends JavaPlugin implements Listener {
private static Plugin pl;
private static Client client;
private static Playlist playlist;
public static String prefix = (ChatColor.GOLD + "[" + ChatColor.YELLOW + "MCTP" + ChatColor.GOLD + "] " + ChatColor.GRAY);
public void onEnable(){
Bukkit.getServer().getPluginManager().registerEvents(this, this);
Bukkit.getLogger().info(prefix + "loading...");
if (!setupPlugins()) {
Bukkit.getLogger().severe(String.format("[%s] Disabled due to no WorldGuard dependency found!", getDescription().getName()));
getServer().getPluginManager().disablePlugin(this);
return;
}
getConfig().addDefault("Regions.demosound", "https://audiopagina.mcthemeparks.eu/gallery/voletarium.mp3");
getConfig().addDefault("HueRegions.demosound", "255_0_0_254");
getConfig().options().copyDefaults(true);
saveConfig();
pl = this;
client = new Client("ws://144.91.100.169:30217");
client.connect();
getCommand("audio").setExecutor(new MCTPAudioCMD());
getCommand("mctpaudio").setExecutor(new MCTPAudioCMD());
getCommand("mctpshow").setExecutor(new MCTPShowCMD());
Bukkit.getPluginManager().registerEvents(new WGListener(), this);
Bukkit.getPluginManager().registerEvents(new LogoutListener(), this);
playlist = new Playlist();
Bukkit.getLogger().info(prefix + " __ __ ____ _____ ____ _ _ _ ");
Bukkit.getLogger().info(prefix + " | \\/ |/ ___|_ _| _ \\ / \\ _ _ __| (_) ___ ");
Bukkit.getLogger().info(prefix + " | |\\/| | | | | | |_) / _ \\| | | |/ _` | |/ _ \\ ");
Bukkit.getLogger().info(prefix + " | | | | |___ | | | __/ ___ \\ |_| | (_| | | (_) |");
Bukkit.getLogger().info(prefix + " |_| |_|\\____| |_| |_| /_/ \\_\\__,_|\\__,_|_|\\___/ ");
Bukkit.getLogger().info(prefix + " ");
Bukkit.getLogger().info(prefix + "successfully enabled!");
}
public void onDisable() {
client.disconnect();
Bukkit.getLogger().info(prefix + "successfully disabled!");
}
private boolean setupPlugins() {
if (hasWorldGuardOnServer()) {
WGManager.setWorldGuard(getServer().getPluginManager().getPlugin("WorldGuard"));
return true;
}
return false;
}
private static boolean hasWorldGuardOnServer() {
return Bukkit.getPluginManager().getPlugin("WorldGuard") != null;
}
public static Plugin getPlugin() {
return pl;
}
public static Client getClient() {
return client;
}
public static Playlist getPlaylist() {
return playlist;
}
}