diff --git a/src/de/steamwar/bungeecore/BungeeCore.java b/src/de/steamwar/bungeecore/BungeeCore.java index b3be7cb2..84b020a6 100644 --- a/src/de/steamwar/bungeecore/BungeeCore.java +++ b/src/de/steamwar/bungeecore/BungeeCore.java @@ -172,10 +172,12 @@ public class BungeeCore extends Plugin { @Override public void onDisable(){ - try { - SteamwarDiscordBot.instance().getJda().shutdown(); - } catch (Throwable e) { - getLogger().log(Level.SEVERE, "Could not shutdown discord bot", e); + if (SteamwarDiscordBotConfig.loaded) { + try { + SteamwarDiscordBot.instance().getJda().shutdown(); + } catch (Throwable e) { + getLogger().log(Level.SEVERE, "Could not shutdown discord bot", e); + } } errorLogger.unregister(); @@ -278,7 +280,7 @@ public class BungeeCore extends Plugin { config.getString("db.password") ); - if (config.getSection("discord") != null) { + if (config.contains("discord")) { SteamwarDiscordBotConfig.loadConfig(config.getSection("discord")); } diff --git a/src/de/steamwar/bungeecore/commands/AlertCommand.java b/src/de/steamwar/bungeecore/commands/AlertCommand.java index db7c3b01..a271cf8e 100644 --- a/src/de/steamwar/bungeecore/commands/AlertCommand.java +++ b/src/de/steamwar/bungeecore/commands/AlertCommand.java @@ -51,7 +51,7 @@ public class AlertCommand extends BasicCommand { } Message.broadcast("ALERT", ChatColor.translateAlternateColorCodes('&', s)); - if (discordAnnounce) { + if (discordAnnounce && SteamwarDiscordBot.instance() != null) { SteamwarDiscordBot.instance().getAnnouncementListener().announce(s); } } diff --git a/src/de/steamwar/bungeecore/commands/ServerTeamchatCommand.java b/src/de/steamwar/bungeecore/commands/ServerTeamchatCommand.java index f9c589b2..7207e0a2 100644 --- a/src/de/steamwar/bungeecore/commands/ServerTeamchatCommand.java +++ b/src/de/steamwar/bungeecore/commands/ServerTeamchatCommand.java @@ -54,10 +54,12 @@ public class ServerTeamchatCommand extends BasicCommand { String msg = msgBuilder.toString(); msg = ChatColor.translateAlternateColorCodes('&', msg); - try { - SteamwarDiscordBot.instance().getServerTeamChatListener().send(" " + (player.getName() + "» " + msg).replaceAll("§[a-f0-9r]", "")); - } catch (Exception e) { - BungeeCore.get().getLogger().log(Level.SEVERE, "Could not send stc message to discord", e); + if (SteamwarDiscordBot.instance() != null) { + try { + SteamwarDiscordBot.instance().getServerTeamChatListener().send(" " + (player.getName() + "» " + msg).replaceAll("§[a-f0-9r]", "")); + } catch (Exception e) { + BungeeCore.get().getLogger().log(Level.SEVERE, "Could not send stc message to discord", e); + } } sendToTeam(msg, player); } diff --git a/src/de/steamwar/bungeecore/listeners/ChatListener.java b/src/de/steamwar/bungeecore/listeners/ChatListener.java index f66e71cd..96c628a4 100644 --- a/src/de/steamwar/bungeecore/listeners/ChatListener.java +++ b/src/de/steamwar/bungeecore/listeners/ChatListener.java @@ -212,10 +212,12 @@ public class ChatListener extends BasicListener { msg = "§" + team.getTeamColor() + team.getTeamKuerzel() + " §r" + msg; } - try { - SteamwarDiscordBot.instance().getIngameChatListener().send(" " + msg.replaceAll("§[a-f0-9r]", "")); - } catch (Exception e) { - BungeeCore.get().getLogger().log(Level.SEVERE, "Could not send chat message to discord", e); + if (SteamwarDiscordBot.instance() != null) { + try { + SteamwarDiscordBot.instance().getIngameChatListener().send(" " + msg.replaceAll("§[a-f0-9r]", "")); + } catch (Exception e) { + BungeeCore.get().getLogger().log(Level.SEVERE, "Could not send chat message to discord", e); + } } for(ProxiedPlayer target : ProxyServer.getInstance().getPlayers()){ Subserver targetServer = Subserver.getSubserver(target); diff --git a/src/de/steamwar/bungeecore/listeners/ConnectionListener.java b/src/de/steamwar/bungeecore/listeners/ConnectionListener.java index 9506ea2d..65855b39 100644 --- a/src/de/steamwar/bungeecore/listeners/ConnectionListener.java +++ b/src/de/steamwar/bungeecore/listeners/ConnectionListener.java @@ -23,6 +23,7 @@ import de.steamwar.bungeecore.BungeeCore; import de.steamwar.bungeecore.Message; import de.steamwar.bungeecore.Servertype; import de.steamwar.bungeecore.Subserver; +import de.steamwar.bungeecore.bot.config.SteamwarDiscordBotConfig; import de.steamwar.bungeecore.bot.util.DiscordRanks; import de.steamwar.bungeecore.commands.ChallengeCommand; import de.steamwar.bungeecore.commands.CheckCommand; @@ -96,7 +97,8 @@ public class ConnectionListener extends BasicListener { newPlayers.remove(player.getUniqueId()); } - DiscordRanks.update(user); + if(SteamwarDiscordBotConfig.loaded) + DiscordRanks.update(user); } /** To redirect players to the lobby in case of server closure. */ diff --git a/src/de/steamwar/bungeecore/listeners/mods/Forge.java b/src/de/steamwar/bungeecore/listeners/mods/Forge.java index c29a03cb..c936dd0f 100644 --- a/src/de/steamwar/bungeecore/listeners/mods/Forge.java +++ b/src/de/steamwar/bungeecore/listeners/mods/Forge.java @@ -61,7 +61,7 @@ public class Forge extends BasicListener { @EventHandler public void onServerConnected(LoginEvent event){ - if(event.getConnection().getVersion() < 340) return; //1.13+ + if(event.getConnection().getVersion() < 341) return; //1.13+ //fml:handshake without mods, channels and registries //for more information see https://wiki.vg/Minecraft_Forge_Handshake#FML2_protocol_.281.13_-_Current.29