Update from Git Manager GUI

This commit is contained in:
2026-02-05 22:44:21 +01:00
parent 42cd51aa35
commit 1bea420d24
31 changed files with 983 additions and 293 deletions

View File

@@ -103,8 +103,11 @@ public class NexusLobby extends JavaPlugin implements Listener {
@Override
public void onEnable() {
instance = this;
initCustomConfigs();
initCustomConfigs();
validateConfig();
// Lade die Sprachdatei
LangManager.load(this);
getServer().getMessenger().registerOutgoingPluginChannel(this, "BungeeCord");
moduleManager = new ModuleManager(this);
@@ -113,7 +116,7 @@ public class NexusLobby extends JavaPlugin implements Listener {
this.parkourManager = new ParkourManager(this);
this.conversationManager = new ConversationManager(this);
ArmorStandGUI.init();
ArmorStandGUI.init();
registerModules();
moduleManager.enableAll();
@@ -262,6 +265,11 @@ public class NexusLobby extends JavaPlugin implements Listener {
getServer().getPluginManager().registerEvents(new NPCClickListener(), this);
}
private void validateConfig() {
ConfigValidator validator = new ConfigValidator(this, getConfig());
validator.validate();
}
public class NPCClickListener implements Listener {
@EventHandler
public void onNPCClick(PlayerInteractAtEntityEvent event) {
@@ -280,7 +288,9 @@ public class NexusLobby extends JavaPlugin implements Listener {
@EventHandler(priority = EventPriority.LOWEST)
public void onJoin(PlayerJoinEvent event) {
Player player = event.getPlayer();
event.setJoinMessage(null);
if (silentPlayers.contains(player.getUniqueId())) {
event.setJoinMessage(null);
}
teleportToSpawn(player);
@@ -289,7 +299,7 @@ public class NexusLobby extends JavaPlugin implements Listener {
BuildCommand.removePlayerFromBuildMode(player);
String defaultGmName = getConfig().getString("default-gamemode", "ADVENTURE");
String defaultGmName = getConfig().getString("lobby.default-gamemode", "Adventure");
try {
player.setGameMode(GameMode.valueOf(defaultGmName.toUpperCase()));
} catch (IllegalArgumentException e) {
@@ -297,17 +307,15 @@ public class NexusLobby extends JavaPlugin implements Listener {
}
if (player.hasPermission("nexuslobby.admin") && updateAvailable) {
player.sendMessage(" ");
player.sendMessage("§8[§6Nexus§8] §aEin neues §6Update §afür §eNexusLobby §aist verfügbar!");
player.sendMessage("§8» §7Version: §c" + getDescription().getVersion() + " §8-> §a" + latestVersion);
TextComponent link = new TextComponent("§8» §6Klicke §e§l[HIER] §6zum Herunterladen.");
player.sendMessage("");
player.sendMessage(de.nexuslobby.utils.LangManager.get("update_available"));
player.sendMessage(de.nexuslobby.utils.LangManager.get("update_version").replace("{old}", getDescription().getVersion()).replace("{new}", latestVersion));
TextComponent link = new TextComponent(de.nexuslobby.utils.LangManager.get("update_download_link"));
link.setClickEvent(new ClickEvent(ClickEvent.Action.OPEN_URL, "https://git.viper.ipv64.net/M_Viper/NexusLobby/releases"));
link.setHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT,
new ComponentBuilder("§7Öffnet die Release-Seite").create()));
new ComponentBuilder(de.nexuslobby.utils.LangManager.get("update_download_hover")).create()));
player.spigot().sendMessage(link);
player.sendMessage(" ");
player.sendMessage("");
}
}
@@ -360,10 +368,23 @@ public class NexusLobby extends JavaPlugin implements Listener {
@Override
public void onDisable() {
// Cancle alle Scheduler-Tasks
Bukkit.getScheduler().cancelTasks(this);
// Stoppe spezifische Tasks
ServerChecker.stopGlobalChecker();
// Unregister alle Event-Listener
org.bukkit.event.HandlerList.unregisterAll((org.bukkit.plugin.Plugin) this);
// Schließe BungeeCord Channel
getServer().getMessenger().unregisterOutgoingPluginChannel(this, "BungeeCord");
// Disable alle Module (inkl. eigenes Cleanup)
if (moduleManager != null) {
moduleManager.disableAll();
}
getLogger().info("NexusLobby deaktiviert.");
}
@@ -410,6 +431,21 @@ public class NexusLobby extends JavaPlugin implements Listener {
getCommand("spawn").setTabCompleter(tabCompleter);
}
if (getCommand("setstart") != null) {
getCommand("setstart").setExecutor(nexusCommand);
getCommand("setstart").setTabCompleter(tabCompleter);
}
if (getCommand("setcheckpoint") != null) {
getCommand("setcheckpoint").setExecutor(nexusCommand);
getCommand("setcheckpoint").setTabCompleter(tabCompleter);
}
if (getCommand("setfinish") != null) {
getCommand("setfinish").setExecutor(nexusCommand);
getCommand("setfinish").setTabCompleter(tabCompleter);
}
if (getCommand("mapart") != null) getCommand("mapart").setTabCompleter(tabCompleter);
if (getCommand("intro") != null) getCommand("intro").setTabCompleter(tabCompleter);
@@ -417,6 +453,11 @@ public class NexusLobby extends JavaPlugin implements Listener {
getCommand("border").setExecutor(new BorderCommand());
getCommand("border").setTabCompleter(tabCompleter);
}
if (getCommand("serverswitcher") != null) {
ServerSwitcherListener serverSwitcher = new ServerSwitcherListener();
getCommand("serverswitcher").setExecutor(serverSwitcher);
}
}
public class NexusLobbyExpansion extends PlaceholderExpansion {