Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Main:
- package fr.energycube.uhc;
- import java.io.File;
- import org.bukkit.Bukkit;
- import org.bukkit.GameMode;
- import org.bukkit.Location;
- import org.bukkit.World;
- import org.bukkit.entity.Player;
- import org.bukkit.plugin.PluginManager;
- import org.bukkit.plugin.java.JavaPlugin;
- import org.bukkit.plugin.messaging.PluginMessageListener;
- import fr.energycube.uhc.Commands.Lobby;
- import fr.energycube.uhc.Events.JoinEvent;
- import fr.energycube.uhc.Events.MoveEvent;
- import fr.energycube.uhc.Events.PlayerDeath;
- import fr.energycube.uhc.Events.QuitEvent;
- import fr.energycube.uhc.Runnable.GameManager;
- import fr.energycube.uhc.Utils.Properties;
- import fr.energycube.uhc.Utils.PlateformeUtils.LobbySpawn;
- public class Main extends JavaPlugin implements PluginMessageListener{
- public SQLAPI sql;
- public static Main instance;
- public static Main getInstance(){return instance;}
- public void onEnable(){
- instance = this;
- sql = new SQLAPI("jdbc:mysql://","localhost","energycube","root","local");
- //load: STARTUP
- sql.Connection();
- sql.checkPointMiniJeu();
- this.getServer().getMessenger().registerOutgoingPluginChannel(this, "BungeeCord");
- this.getServer().getMessenger().registerIncomingPluginChannel(this, "BungeeCord", this);
- getCommand("lobby").setExecutor(new Lobby());
- System.out.println("[UHC] Activée");
- getServer().setDefaultGameMode(GameMode.SURVIVAL);
- Properties.setServerProperty(Properties.ServerProperty.HARDCORE, true);
- Properties.setServerProperty(Properties.ServerProperty.MAX_WORLD_SIZE, 2000);
- Properties.savePropertiesFile();
- PluginManager pm = getServer().getPluginManager();
- pm.registerEvents(new JoinEvent(), this);
- pm.registerEvents(new QuitEvent(), this);
- pm.registerEvents(new MoveEvent(), this);
- pm.registerEvents(new PlayerDeath(), this);
- new GameManager().runTaskTimer(this, 20, 20);
- getServer().getWorld("world").setTime(1000);
- getServer().getWorld("world").setGameRuleValue("doDaylightCycle", "false");
- generateLobby();
- }
- @Override
- public void onPluginMessageReceived(String channel, Player player, byte[] message) {
- if (!channel.equals("BungeeCord")) {
- return;
- }
- }
- public void onDisable(){
- sql.Unconnection();
- System.out.println("Dechargement de world");
- unloadWorld(Bukkit.getWorld("world"));
- System.out.println("Dechargement de world_nether");
- unloadWorld(Bukkit.getWorld("world_nether"));
- System.out.println("Suppression de world");
- World delete = Bukkit.getWorld("world");
- if(delete != null){
- File deleteFolder = delete.getWorldFolder();
- deleteWorld(deleteFolder);
- deleteWorld(deleteFolder);
- deleteWorld(deleteFolder);
- }
- System.out.println("Suppression de world_nether");
- World deletenether = Bukkit.getWorld("world_nether");
- if(deletenether != null){
- File deleteFolder = deletenether.getWorldFolder();
- deleteWorld(deleteFolder);
- deleteWorld(deleteFolder);
- deleteWorld(deleteFolder);
- }
- }
- public boolean deleteWorld(File path) {
- if(path.exists()) {
- File files[] = path.listFiles();
- for(int i=0; i<files.length; i++) {
- if(files[i].isDirectory()) {
- deleteWorld(files[i]);
- deleteWorld(files[i]);
- } else {
- files[i].delete();
- files[i].delete();
- files[i].delete();
- }
- }
- }
- return(path.delete());
- }
- public void unloadWorld(World world) {
- Bukkit.getServer().unloadWorld(world, true);
- }
- public void generateLobby(){
- System.out.println("Suppression des blocks du lobby...");
- LobbySpawn.removeLobby(new Location(Bukkit.getWorld("world"), 0, 90, 0));
- System.out.println("Suppression des blocks du lobby : OK");
- System.out.println("Creation des du lobby...");
- LobbySpawn.spawnLobby(new Location(Bukkit.getWorld("world"), 0, 90, 0));
- System.out.println("Creation du lobby : OK");
- }
- }
- Lobby:
- package fr.energycube.uhc.Commands;
- import java.io.ByteArrayOutputStream;
- import java.io.DataOutputStream;
- import java.io.IOException;
- import org.bukkit.command.Command;
- import org.bukkit.command.CommandExecutor;
- import org.bukkit.command.CommandSender;
- import org.bukkit.entity.Player;
- import fr.energycube.uhc.Main;
- public class Lobby implements CommandExecutor{
- @Override
- public boolean onCommand(CommandSender sender, Command cmd, String msg, String[] args) {
- if(sender instanceof Player){
- Player p = (Player) sender;
- if(cmd.getName().equalsIgnoreCase("lobby")){
- ByteArrayOutputStream b = new ByteArrayOutputStream();
- DataOutputStream out = new DataOutputStream(b);
- try {
- out.writeUTF("Connect");
- out.writeUTF("hub");
- } catch (IOException ex) {
- }
- p.sendPluginMessage(Main.getInstance(), "BungeeCord", b.toByteArray());
- }
- }
- return false;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement