diff --git a/src/com/johnymuffin/beta/discordchatbridge/DCBGameListener.java b/src/com/johnymuffin/beta/discordchatbridge/DCBGameListener.java index f2f2527..486fc5d 100644 --- a/src/com/johnymuffin/beta/discordchatbridge/DCBGameListener.java +++ b/src/com/johnymuffin/beta/discordchatbridge/DCBGameListener.java @@ -18,18 +18,18 @@ public DCBGameListener(DiscordChatBridge plugin) { @Override public void onPlayerJoin(PlayerJoinEvent event) { String chatMessage = plugin.getConfig().getConfigString("message.join-message"); - chatMessage.replace("%username%", event.getPlayer().getName()); - chatMessage.replace("%onlineCount%", String.valueOf(Bukkit.getServer().getOnlinePlayers().length)); - chatMessage.replace("%maxCount%", String.valueOf(Bukkit.getServer().getMaxPlayers())); + chatMessage = chatMessage.replace("%username%", event.getPlayer().getName()); + chatMessage = chatMessage.replace("%onlineCount%", String.valueOf(Bukkit.getServer().getOnlinePlayers().length)); + chatMessage = chatMessage.replace("%maxCount%", String.valueOf(Bukkit.getServer().getMaxPlayers())); plugin.getDiscordCore().getDiscordBot().discordSendToChannel(plugin.getConfig().getConfigString("channel-id"), chatMessage); } @Override public void onPlayerQuit(PlayerQuitEvent event) { String chatMessage = plugin.getConfig().getConfigString("message.quit-message"); - chatMessage.replace("%username%", event.getPlayer().getName()); - chatMessage.replace("%onlineCount%", String.valueOf(Bukkit.getServer().getOnlinePlayers().length - 1)); - chatMessage.replace("%maxCount%", String.valueOf(Bukkit.getServer().getMaxPlayers())); + chatMessage = chatMessage.replace("%username%", event.getPlayer().getName()); + chatMessage = chatMessage.replace("%onlineCount%", String.valueOf(Bukkit.getServer().getOnlinePlayers().length - 1)); + chatMessage = chatMessage.replace("%maxCount%", String.valueOf(Bukkit.getServer().getMaxPlayers())); plugin.getDiscordCore().getDiscordBot().discordSendToChannel(plugin.getConfig().getConfigString("channel-id"), chatMessage); } diff --git a/src/com/johnymuffin/beta/discordchatbridge/DiscordChatBridge.java b/src/com/johnymuffin/beta/discordchatbridge/DiscordChatBridge.java index 39e1aa4..ef1b77c 100644 --- a/src/com/johnymuffin/beta/discordchatbridge/DiscordChatBridge.java +++ b/src/com/johnymuffin/beta/discordchatbridge/DiscordChatBridge.java @@ -1,6 +1,8 @@ package com.johnymuffin.beta.discordchatbridge; import com.johnymuffin.discordcore.DiscordCore; +import net.dv8tion.jda.api.JDA; +import net.dv8tion.jda.api.entities.Activity; import org.bukkit.Bukkit; import org.bukkit.event.Event; import org.bukkit.plugin.PluginDescriptionFile; @@ -20,6 +22,7 @@ public class DiscordChatBridge extends JavaPlugin { //Other plugin stuff private DCBDiscordListener discordListener; //Discord Listener private boolean enabled = false; + private Integer taskID = null; @Override public void onEnable() { @@ -58,10 +61,19 @@ public void onEnable() { getServer().getPluginManager().registerEvent(Event.Type.PLAYER_CHAT, gameListener, Event.Priority.Monitor, this); - enabled = true; + if (dcbConfig.getConfigBoolean("presence-player-count")) { + taskID = this.getServer().getScheduler().scheduleSyncRepeatingTask(this, () -> { + if (getDiscordCore().getDiscordBot().jda.getStatus() == JDA.Status.CONNECTED) { + getDiscordCore().getDiscordBot().jda.getPresence().setActivity(Activity.playing(plugin.getConfig().getConfigString("server-name") + " With " + Bukkit.getServer().getOnlinePlayers().length + " Players")); + } + + + }, 0L, 20 * 60); + } + } @Override @@ -69,6 +81,7 @@ public void onDisable() { if (enabled) { logger(Level.INFO, "Disabling."); discordCore.getDiscordBot().jda.removeEventListener(discordListener); + Bukkit.getServer().getScheduler().cancelTask(taskID); } logger(Level.INFO, "Has been disabled."); } diff --git a/src/plugin.yml b/src/plugin.yml index 76a5012..04ce113 100644 --- a/src/plugin.yml +++ b/src/plugin.yml @@ -2,7 +2,7 @@ name: DiscordChatBridge authors: - JohnyMuffin - Ashleyz -version: 2.0.0 +version: 2.0.1 main: com.johnymuffin.beta.discordchatbridge.DiscordChatBridge softdepend: - DiscordCore \ No newline at end of file