diff --git a/.idea/compiler.xml b/.idea/compiler.xml index fcb19bf..b589d56 100644 --- a/.idea/compiler.xml +++ b/.idea/compiler.xml @@ -1,6 +1,6 @@ - + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index 207cbfe..279d325 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -6,5 +6,5 @@ - + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml deleted file mode 100644 index 5b6c3b4..0000000 --- a/.idea/modules.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 2d3af48..58497fa 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -4,7 +4,21 @@ - + + + + + + + + + + + + + + + - { + "keyToString": { + "Downloaded.Files.Path.Enabled": "false", + "Gradle.notify-on-start [build].executor": "Run", + "Repository.Attach.Annotations": "false", + "Repository.Attach.JavaDocs": "false", + "Repository.Attach.Sources": "false", + "RunOnceActivity.OpenProjectViewOnStart": "true", + "RunOnceActivity.ShowReadmeOnStart": "true", + "RunOnceActivity.git.unshallow": "true", + "git-widget-placeholder": "main", + "last_opened_file_path": "G:/java/notify-on-start", + "project.structure.last.edited": "Libraries", + "project.structure.proportion": "0.0", + "project.structure.side.proportion": "0.2", + "settings.editor.selected.configurable": "reference.settingsdialog.project.gradle" } -}]]> +} + + + + + @@ -177,15 +196,35 @@ + + + - \ No newline at end of file diff --git a/src/main/java/moe/sob/events/player/PlayerBedEnter.java b/src/main/java/moe/sob/events/player/PlayerBedEnter.java index bc6f000..b0a711f 100644 --- a/src/main/java/moe/sob/events/player/PlayerBedEnter.java +++ b/src/main/java/moe/sob/events/player/PlayerBedEnter.java @@ -1,6 +1,7 @@ package moe.sob.events.player; import moe.sob.DiscordWebhook; +import moe.sob.Main; import moe.sob.ServerUtils; import org.bukkit.Bukkit; import org.bukkit.entity.Player; @@ -15,18 +16,20 @@ import java.util.Date; public class PlayerBedEnter implements Listener { @EventHandler public void onPlayerBedEnter(PlayerBedEnterEvent event) { - Bukkit.getConsoleSender().sendMessage("Player entered a bed."); - Player player = event.getPlayer(); - DiscordWebhook notify = new DiscordWebhook(ServerUtils.webhook_notify); - DiscordWebhook.EmbedObject embedObject = new DiscordWebhook.EmbedObject().setTitle(player.getName() + " is now sleeping...") - .addField("Time", new Date().toString(), false) - .addField("Player name", player.getName(), true) - .setColor(Color.BLUE); - notify.addEmbed(embedObject); - try { - notify.execute(); - } catch (IOException e) { - throw new RuntimeException(e); + if (Main.configR.getBoolean("log")) { + Bukkit.getConsoleSender().sendMessage("Player entered a bed."); + Player player = event.getPlayer(); + DiscordWebhook notify = new DiscordWebhook(ServerUtils.webhook_notify); + DiscordWebhook.EmbedObject embedObject = new DiscordWebhook.EmbedObject().setTitle(player.getName() + " is now sleeping...") + .addField("Time", new Date().toString(), false) + .addField("Player name", player.getName(), true) + .setColor(Color.BLUE); + notify.addEmbed(embedObject); + try { + notify.execute(); + } catch (IOException e) { + throw new RuntimeException(e); + } } } } diff --git a/src/main/java/moe/sob/events/player/PlayerBedLeave.java b/src/main/java/moe/sob/events/player/PlayerBedLeave.java index bfaf574..36038f8 100644 --- a/src/main/java/moe/sob/events/player/PlayerBedLeave.java +++ b/src/main/java/moe/sob/events/player/PlayerBedLeave.java @@ -1,6 +1,7 @@ package moe.sob.events.player; import moe.sob.DiscordWebhook; +import moe.sob.Main; import moe.sob.ServerUtils; import org.bukkit.Bukkit; import org.bukkit.entity.Player; @@ -15,18 +16,20 @@ import java.util.Date; public class PlayerBedLeave implements Listener { @EventHandler public void onPlayerBedLeave(PlayerBedLeaveEvent event) { - Bukkit.getConsoleSender().sendMessage("Player left a bed"); - Player player = event.getPlayer(); - DiscordWebhook notify = new DiscordWebhook(ServerUtils.webhook_notify); - DiscordWebhook.EmbedObject embedObject = new DiscordWebhook.EmbedObject().setTitle(player.getName() + " is no longer sleeping.") - .addField("Time", new Date().toString(), false) - .addField("Player name", player.getName(), true) - .setColor(Color.BLUE); - notify.addEmbed(embedObject); - try { - notify.execute(); - } catch (IOException e) { - throw new RuntimeException(e); + if (Main.configR.getBoolean("log")) { + Bukkit.getConsoleSender().sendMessage("Player left a bed"); + Player player = event.getPlayer(); + DiscordWebhook notify = new DiscordWebhook(ServerUtils.webhook_notify); + DiscordWebhook.EmbedObject embedObject = new DiscordWebhook.EmbedObject().setTitle(player.getName() + " is no longer sleeping.") + .addField("Time", new Date().toString(), false) + .addField("Player name", player.getName(), true) + .setColor(Color.BLUE); + notify.addEmbed(embedObject); + try { + notify.execute(); + } catch (IOException e) { + throw new RuntimeException(e); + } } } } diff --git a/src/main/java/moe/sob/events/player/PlayerChat.java b/src/main/java/moe/sob/events/player/PlayerChat.java index 9acc32a..9dddab5 100644 --- a/src/main/java/moe/sob/events/player/PlayerChat.java +++ b/src/main/java/moe/sob/events/player/PlayerChat.java @@ -1,6 +1,7 @@ package moe.sob.events.player; import moe.sob.DiscordWebhook; +import moe.sob.Main; import moe.sob.ServerUtils; import org.bukkit.Bukkit; import org.bukkit.entity.Player; @@ -18,18 +19,19 @@ public class PlayerChat implements Listener { @EventHandler public void onPlayerChat(AsyncPlayerChatEvent event) { - Bukkit.getConsoleSender().sendMessage("A message was sent by " + event.getPlayer().getName()); - Player player = event.getPlayer(); - DiscordWebhook notify = new DiscordWebhook(ServerUtils.webhook_notify); - DiscordWebhook.EmbedObject embedObject = new DiscordWebhook.EmbedObject().setTitle("A message was sent by " + event.getPlayer().getName()) - .addField("Send date", new Date().toString(), false) - .addField("Message content", event.getMessage(), true) - .setColor(Color.BLUE); - notify.addEmbed(embedObject); - try { - notify.execute(); - } catch (IOException e) { - throw new RuntimeException(e); + // Bukkit.getConsoleSender().sendMessage("A message was sent by " + event.getPlayer().getName()); // kind of redundant considering the fact that we see chats in the console too + if (!Main.configR.getBoolean("log")) { + DiscordWebhook notify = new DiscordWebhook(ServerUtils.webhook_notify); + DiscordWebhook.EmbedObject embedObject = new DiscordWebhook.EmbedObject().setTitle("A message was sent by " + event.getPlayer().getName()) + .addField("Send date", new Date().toString(), false) + .addField("Message content", event.getMessage(), true) + .setColor(Color.BLUE); + notify.addEmbed(embedObject); + try { + notify.execute(); + } catch (IOException e) { + throw new RuntimeException(e); + } } } } \ No newline at end of file diff --git a/src/main/java/moe/sob/events/player/PlayerCommandPreprocess.java b/src/main/java/moe/sob/events/player/PlayerCommandPreprocess.java index 9e29e47..cb63a30 100644 --- a/src/main/java/moe/sob/events/player/PlayerCommandPreprocess.java +++ b/src/main/java/moe/sob/events/player/PlayerCommandPreprocess.java @@ -1,6 +1,7 @@ package moe.sob.events.player; import moe.sob.DiscordWebhook; +import moe.sob.Main; import moe.sob.ServerUtils; import org.bukkit.Bukkit; import org.bukkit.entity.Player; @@ -16,36 +17,38 @@ import java.util.Date; public class PlayerCommandPreprocess implements Listener { @EventHandler public void onPlayerCommandPreprocess(PlayerCommandPreprocessEvent event) { - Bukkit.getConsoleSender().sendMessage("%s used a command".formatted(event.getPlayer().getName())); - Player player = event.getPlayer(); - String[] command = event.getMessage().split(" "); // get the command name - DiscordWebhook notify = new DiscordWebhook(ServerUtils.webhook_notify); - DiscordWebhook.EmbedObject embedObject = new DiscordWebhook.EmbedObject().setTitle("Command used") - .addField("Date of usage", new Date().toString(), false) - .addField("Player name", player.getName(), false) - .addField("Command", command[0], true) - .setColor(Color.BLUE); - notify.addEmbed(embedObject); - try { - notify.execute(); - } catch (IOException e) { - throw new RuntimeException(e); - } - - // temp: log on /stop - if (command[0].equals("/stop")) { - DiscordWebhook ntf = new DiscordWebhook(ServerUtils.webhook_notify); - DiscordWebhook.EmbedObject embed = new DiscordWebhook.EmbedObject() - .setTitle("Server stopped") - .setDescription("The server was stopped using the `/stop` command.") - .addField("Date", "".formatted(new Timestamp(System.currentTimeMillis()).getTime()), true) - .addField("Player name", player.getName(), true); - ntf.addEmbed(embed); + if (Main.configR.getBoolean("log")) { + Bukkit.getConsoleSender().sendMessage("%s used a command".formatted(event.getPlayer().getName())); + Player player = event.getPlayer(); + String[] command = event.getMessage().split(" "); // get the command name + DiscordWebhook notify = new DiscordWebhook(ServerUtils.webhook_notify); + DiscordWebhook.EmbedObject embedObject = new DiscordWebhook.EmbedObject().setTitle("Command used") + .addField("Date of usage", new Date().toString(), false) + .addField("Player name", player.getName(), false) + .addField("Command", command[0], true) + .setColor(Color.BLUE); + notify.addEmbed(embedObject); try { - ntf.execute(); + notify.execute(); } catch (IOException e) { throw new RuntimeException(e); } + + // temp: log on /stop + if (command[0].equals("/stop")) { + DiscordWebhook ntf = new DiscordWebhook(ServerUtils.webhook_notify); + DiscordWebhook.EmbedObject embed = new DiscordWebhook.EmbedObject() + .setTitle("Server stopped") + .setDescription("The server was stopped using the `/stop` command.") + .addField("Date", "".formatted(new Timestamp(System.currentTimeMillis()).getTime()), true) + .addField("Player name", player.getName(), true); + ntf.addEmbed(embed); + try { + ntf.execute(); + } catch (IOException e) { + throw new RuntimeException(e); + } + } } } } \ No newline at end of file diff --git a/src/main/java/moe/sob/events/player/PlayerJoin.java b/src/main/java/moe/sob/events/player/PlayerJoin.java index beb12e2..1336a0a 100644 --- a/src/main/java/moe/sob/events/player/PlayerJoin.java +++ b/src/main/java/moe/sob/events/player/PlayerJoin.java @@ -17,19 +17,21 @@ import java.util.Date; public class PlayerJoin implements Listener { @EventHandler public void onPlayerJoin(PlayerJoinEvent event) { - Bukkit.getConsoleSender().sendMessage("A player has joined the server."); - Player player = event.getPlayer(); - DiscordWebhook notify = new DiscordWebhook(ServerUtils.webhook_notify); - DiscordWebhook.EmbedObject embedObject = new DiscordWebhook.EmbedObject().setTitle("A player has joined the server.") - .addField("Triggered at", new Date().toString(), false) - .addField("Player name", player.getName(), true) - .setColor(Color.BLUE); - notify.addEmbed(embedObject); - try { - Bukkit.broadcastMessage(Main.getGreetMessage(player)); - notify.execute(); - } catch (IOException e) { - throw new RuntimeException(e); + if (Main.configR.getBoolean("log")) { + Bukkit.getConsoleSender().sendMessage("A player has joined the server."); + Player player = event.getPlayer(); + DiscordWebhook notify = new DiscordWebhook(ServerUtils.webhook_notify); + DiscordWebhook.EmbedObject embedObject = new DiscordWebhook.EmbedObject().setTitle("A player has joined the server.") + .addField("Triggered at", new Date().toString(), false) + .addField("Player name", player.getName(), true) + .setColor(Color.BLUE); + notify.addEmbed(embedObject); + try { + Bukkit.broadcastMessage(Main.getGreetMessage(player)); + notify.execute(); + } catch (IOException e) { + throw new RuntimeException(e); + } } } } \ No newline at end of file diff --git a/src/main/java/moe/sob/events/player/PlayerQuit.java b/src/main/java/moe/sob/events/player/PlayerQuit.java index fc1910b..ff0e235 100644 --- a/src/main/java/moe/sob/events/player/PlayerQuit.java +++ b/src/main/java/moe/sob/events/player/PlayerQuit.java @@ -1,6 +1,7 @@ package moe.sob.events.player; import moe.sob.DiscordWebhook; +import moe.sob.Main; import moe.sob.ServerUtils; import org.bukkit.Bukkit; import org.bukkit.entity.Player; @@ -14,18 +15,20 @@ import java.util.Date; public class PlayerQuit implements Listener { @EventHandler public void onPlayerQuit(PlayerQuitEvent event) { - Bukkit.getConsoleSender().sendMessage("A player has left the server."); - Player player = event.getPlayer(); - DiscordWebhook.EmbedObject embedObject = new DiscordWebhook.EmbedObject().setTitle("A player has left the server.") - .addField("Date of exit", new Date().toString(), false) - .addField("Player name", event.getPlayer().getName(), true) - .setColor(Color.BLUE); - DiscordWebhook notify = new DiscordWebhook(ServerUtils.webhook_notify); - notify.addEmbed(embedObject); - try { - notify.execute(); - } catch (IOException e) { - throw new RuntimeException(e); + if (Main.configR.getBoolean("log")) { + Bukkit.getConsoleSender().sendMessage("A player has left the server."); + Player player = event.getPlayer(); + DiscordWebhook.EmbedObject embedObject = new DiscordWebhook.EmbedObject().setTitle("A player has left the server.") + .addField("Date of exit", new Date().toString(), false) + .addField("Player name", event.getPlayer().getName(), true) + .setColor(Color.BLUE); + DiscordWebhook notify = new DiscordWebhook(ServerUtils.webhook_notify); + notify.addEmbed(embedObject); + try { + notify.execute(); + } catch (IOException e) { + throw new RuntimeException(e); + } } } } \ No newline at end of file diff --git a/src/main/java/moe/sob/events/world/WorldLoad.java b/src/main/java/moe/sob/events/world/WorldLoad.java index 3b1909d..52cc678 100644 --- a/src/main/java/moe/sob/events/world/WorldLoad.java +++ b/src/main/java/moe/sob/events/world/WorldLoad.java @@ -1,6 +1,7 @@ package moe.sob.events.world; import moe.sob.DiscordWebhook; +import moe.sob.Main; import moe.sob.ServerUtils; import org.bukkit.Bukkit; import org.bukkit.event.EventHandler; @@ -14,17 +15,19 @@ import java.util.Date; public class WorldLoad implements Listener { @EventHandler public void onWorldLoad(WorldLoadEvent event) { - Bukkit.getConsoleSender().sendMessage("Triggered WorldLoad event."); - DiscordWebhook notify = new DiscordWebhook(ServerUtils.webhook_notify); - DiscordWebhook.EmbedObject embedObject = new DiscordWebhook.EmbedObject().setTitle("World loaded") - .addField("Time", new Date().toString(), false) - .addField("World name", event.getWorld().getName(), true) - .setColor(Color.BLUE); - notify.addEmbed(embedObject); - try { - notify.execute(); - } catch (IOException e) { - throw new RuntimeException(e); + if (Main.configR.getBoolean("log")) { + Bukkit.getConsoleSender().sendMessage("Triggered WorldLoad event."); + DiscordWebhook notify = new DiscordWebhook(ServerUtils.webhook_notify); + DiscordWebhook.EmbedObject embedObject = new DiscordWebhook.EmbedObject().setTitle("World loaded") + .addField("Time", new Date().toString(), false) + .addField("World name", event.getWorld().getName(), true) + .setColor(Color.BLUE); + notify.addEmbed(embedObject); + try { + notify.execute(); + } catch (IOException e) { + throw new RuntimeException(e); + } } } } diff --git a/src/main/java/moe/sob/events/world/WorldUnload.java b/src/main/java/moe/sob/events/world/WorldUnload.java index 0e05d7c..46a71f0 100644 --- a/src/main/java/moe/sob/events/world/WorldUnload.java +++ b/src/main/java/moe/sob/events/world/WorldUnload.java @@ -1,6 +1,7 @@ package moe.sob.events.world; import moe.sob.DiscordWebhook; +import moe.sob.Main; import moe.sob.ServerUtils; import org.bukkit.Bukkit; import org.bukkit.event.EventHandler; @@ -14,17 +15,19 @@ import java.util.Date; public class WorldUnload implements Listener { @EventHandler public void onWorldUnload(WorldUnloadEvent event) { - Bukkit.getConsoleSender().sendMessage("Triggered WorldUnload event."); - DiscordWebhook notify = new DiscordWebhook(ServerUtils.webhook_notify); - DiscordWebhook.EmbedObject embedObject = new DiscordWebhook.EmbedObject().setTitle("WorldUnload").setDescription("A world was unloaded...") - .addField("Time", new Date().toString(), false) - .addField("World name", event.getWorld().getName(), true) - .setColor(Color.BLUE); - notify.addEmbed(embedObject); - try { - notify.execute(); - } catch (IOException e) { - throw new RuntimeException(e); + if (Main.configR.getBoolean("log")) { + Bukkit.getConsoleSender().sendMessage("Triggered WorldUnload event."); + DiscordWebhook notify = new DiscordWebhook(ServerUtils.webhook_notify); + DiscordWebhook.EmbedObject embedObject = new DiscordWebhook.EmbedObject().setTitle("WorldUnload").setDescription("A world was unloaded...") + .addField("Time", new Date().toString(), false) + .addField("World name", event.getWorld().getName(), true) + .setColor(Color.BLUE); + notify.addEmbed(embedObject); + try { + notify.execute(); + } catch (IOException e) { + throw new RuntimeException(e); + } } } } diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml index c0057be..4219fc1 100644 --- a/src/main/resources/plugin.yml +++ b/src/main/resources/plugin.yml @@ -14,7 +14,7 @@ commands: usage: /send-message aliases: [sms] set-logging: - description: Enables or disables event logging in the server. Server performance is enhanced while logs are disabled. (Depending on server speed) + description: Enables or disables event logging. Server performance is enhanced while logs are disabled. (Depending on server speed) usage: /set-logging permission: op permission-message: Only operators can use this command.