Lobby/src/main/java/eu/univento/lobby/Lobby.java

100 lines
2.6 KiB
Java

package eu.univento.lobby;
import java.util.logging.Level;
import java.util.logging.Logger;
import eu.univento.core.api.pet.NMSHandler;
import eu.univento.core.api.server.ServerSettings;
import eu.univento.lobby.listeners.*;
import eu.univento.lobby.utils.PetManager;
import eu.univento.lobby.utils.StatusSignManager;
import org.bukkit.Bukkit;
import org.bukkit.Difficulty;
import org.bukkit.GameMode;
import org.bukkit.World;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;
import eu.univento.lobby.commands.DropItem;
import eu.univento.lobby.commands.Setloc;
/**
* main class...
* @author joethei
* @version 1.0
*/
public class Lobby extends JavaPlugin{
/**
* plugin instance
*/
public static Lobby instance;
/**
* @return instance of plugin
*/
public static Lobby getInstance() {
return instance;
}
/**
* Logger to log to
*/
private static Logger logger = Bukkit.getLogger();
/**
* @param level Log level
* @param string String
*/
public static void log(Level level, String string) {
if(ServerSettings.isDebug()) {
logger.log(level, "[" + Lobby.getInstance().getDescription().getName() + "] " + string);
}
}
@Override
public void onEnable() {
instance = this;
PluginManager pm = Bukkit.getPluginManager();
ServerSettings.setLobby(true);
pm.registerEvents(new Jumppads(), this);
pm.registerEvents(new JoinQuit(), this);
pm.registerEvents(new MenuEvents(), this);
pm.registerEvents(new Events(), this);
pm.registerEvents(new Menu(), this);
pm.registerEvents(new PlayerHider(), this);
pm.registerEvents(new ItemEvents(), this);
pm.registerEvents(new FoundItems(), this);
pm.registerEvents(new Parkour(), this);
pm.registerEvents(new PetInteract(), this);
pm.registerEvents(new StatusSigns(), this);
pm.registerEvents(new PlayerInteract(), this);
if(ServerSettings.isDebug()) log(Level.INFO, "Events registriert");
new Setloc(this, "setloc", "Setzt Teleport Punkte");
new DropItem(this, "dropitem", "Setzt EasterEggs");
if(ServerSettings.isDebug()) log(Level.INFO, "Befehle registriert");
for(World w : Bukkit.getWorlds()) {
w.setDifficulty(Difficulty.PEACEFUL);
}
ServerSettings.setGameMode(GameMode.ADVENTURE);
ServerSettings.setLobby(true);
StatusSignManager.loadSigns();
StatusSignManager.updateSigns();
NMSHandler.registerEnties();
log(Level.INFO, " Plugin ver." + getDescription().getVersion() + " gestartet");
}
@Override
public void onDisable() {
StatusSignManager.saveSigns();
PetManager.clearPets();
log(Level.INFO, "Plugin beendet");
}
}