From aafb83b5e670e15d87f2050b6f3d323c054a784b Mon Sep 17 00:00:00 2001 From: ikbenignace Date: Tue, 12 Oct 2021 10:56:04 +0200 Subject: [PATCH 1/4] bot activity can be empty --- src/main/java/de/staticred/dbv2/discord/util/BotHelper.java | 2 +- src/main/resources/files/config.yml | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/de/staticred/dbv2/discord/util/BotHelper.java b/src/main/java/de/staticred/dbv2/discord/util/BotHelper.java index dca5540..d89bade 100644 --- a/src/main/java/de/staticred/dbv2/discord/util/BotHelper.java +++ b/src/main/java/de/staticred/dbv2/discord/util/BotHelper.java @@ -66,7 +66,7 @@ private BotHelper() { */ public static void startBot(String token) throws LoginException { jda = JDABuilder.create(token, GatewayIntent.GUILD_MEMBERS, GatewayIntent.DIRECT_MESSAGES, GatewayIntent.GUILD_BANS, GatewayIntent.GUILD_MESSAGES, GatewayIntent.GUILD_PRESENCES).build(); - jda.getPresence().setActivity(DBUtil.getINSTANCE().getConfigFileManager().getActivity()); + if(!DBUtil.getINSTANCE().getConfigFileManager().getActivityDescription().isEmpty()) jda.getPresence().setActivity(DBUtil.getINSTANCE().getConfigFileManager().getActivity()); botstartup = System.currentTimeMillis(); registerEvent(new BotReadyEvent()); } diff --git a/src/main/resources/files/config.yml b/src/main/resources/files/config.yml index 43b7c5e..f5f0f6d 100644 --- a/src/main/resources/files/config.yml +++ b/src/main/resources/files/config.yml @@ -21,6 +21,7 @@ Token: "" botActivityType: "WATCHING" #Description of what the bot is doing +#Leave empty if you don't want to set an activity botActitivyDescription: "DBUtil by StaticRed" #If the bot should use discord ids for roles From b38b6acf8c966d469d08bad8bc2e087ade77c502 Mon Sep 17 00:00:00 2001 From: ikbenignace Date: Tue, 12 Oct 2021 15:41:43 +0200 Subject: [PATCH 2/4] editable footer --- src/main/java/de/staticred/dbv2/constants/FileConstants.java | 1 + src/main/java/de/staticred/dbv2/discord/util/Embed.java | 4 ++-- .../staticred/dbv2/files/filehandlers/ConfigFileManager.java | 4 ++++ src/main/resources/files/config.yml | 3 +++ 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/main/java/de/staticred/dbv2/constants/FileConstants.java b/src/main/java/de/staticred/dbv2/constants/FileConstants.java index 331048e..549eb32 100644 --- a/src/main/java/de/staticred/dbv2/constants/FileConstants.java +++ b/src/main/java/de/staticred/dbv2/constants/FileConstants.java @@ -34,6 +34,7 @@ public class FileConstants { public static final String FORCE_CLEAN_CHANNEL = "forceCleanChannel"; public static final String PREFIX = "prefix"; + public static final String FOOTER = "footer"; public static final String INVALID_CHANNEL = "discord.invalidChannel"; diff --git a/src/main/java/de/staticred/dbv2/discord/util/Embed.java b/src/main/java/de/staticred/dbv2/discord/util/Embed.java index 4c1f0b5..2101675 100644 --- a/src/main/java/de/staticred/dbv2/discord/util/Embed.java +++ b/src/main/java/de/staticred/dbv2/discord/util/Embed.java @@ -30,7 +30,7 @@ public Embed(String context, String header, boolean useAuthorTag, Color color, S if (useAuthorTag) { SimpleDateFormat dateFormat = new SimpleDateFormat(DBUtil.TIME_PATTERN); String time = dateFormat.format(new Date(System.currentTimeMillis())); - builder.setFooter(time + " sent by " + DBUtil.PLUGIN_NAME); + builder.setFooter(time + " sent by " + DBUtil.getINSTANCE().getConfigFileManager().getFooter()); } } @@ -44,7 +44,7 @@ public Embed(String context, String header, boolean useAuthorTag, Color color) { if (useAuthorTag) { SimpleDateFormat dateFormat = new SimpleDateFormat(DBUtil.TIME_PATTERN); String time = dateFormat.format(new Date(System.currentTimeMillis())); - builder.setFooter(time + " send by " + DBUtil.PLUGIN_NAME); + builder.setFooter(time + " send by " + DBUtil.getINSTANCE().getConfigFileManager().getFooter()); } } diff --git a/src/main/java/de/staticred/dbv2/files/filehandlers/ConfigFileManager.java b/src/main/java/de/staticred/dbv2/files/filehandlers/ConfigFileManager.java index 4a480db..da6fa0e 100644 --- a/src/main/java/de/staticred/dbv2/files/filehandlers/ConfigFileManager.java +++ b/src/main/java/de/staticred/dbv2/files/filehandlers/ConfigFileManager.java @@ -97,5 +97,9 @@ public int deleteTime() { return configuration.getInt(FileConstants.DELETE_TIME); } + public String getFooter() { + return configuration.getString(FileConstants.FOOTER); + } + } diff --git a/src/main/resources/files/config.yml b/src/main/resources/files/config.yml index f5f0f6d..14211fc 100644 --- a/src/main/resources/files/config.yml +++ b/src/main/resources/files/config.yml @@ -43,6 +43,9 @@ listenToChannels: #WARNING: if discord commands do not have a slashcommandexecutor they´re not accessible anymore enablePrefixCommands: true +#discord embed footer +footer: "DBUtilities" + #will delete all messages not resulting in a reply from the bot #to make this work, listenToChannels may not be empty. forceCleanChannel: false From 12a09ba683f49647da53a8b56747c0ed88496dae Mon Sep 17 00:00:00 2001 From: ikbenignace Date: Tue, 12 Oct 2021 16:13:23 +0200 Subject: [PATCH 3/4] moved footer to MessageFileHandler --- src/main/java/de/staticred/dbv2/discord/util/Embed.java | 4 ++-- .../dbv2/files/filehandlers/ConfigFileManager.java | 4 ---- .../dbv2/files/filehandlers/MessagesFileHandler.java | 6 +++++- src/main/resources/files/config.yml | 3 --- src/main/resources/files/messages.yml | 4 ++-- 5 files changed, 9 insertions(+), 12 deletions(-) diff --git a/src/main/java/de/staticred/dbv2/discord/util/Embed.java b/src/main/java/de/staticred/dbv2/discord/util/Embed.java index 2101675..9898861 100644 --- a/src/main/java/de/staticred/dbv2/discord/util/Embed.java +++ b/src/main/java/de/staticred/dbv2/discord/util/Embed.java @@ -30,7 +30,7 @@ public Embed(String context, String header, boolean useAuthorTag, Color color, S if (useAuthorTag) { SimpleDateFormat dateFormat = new SimpleDateFormat(DBUtil.TIME_PATTERN); String time = dateFormat.format(new Date(System.currentTimeMillis())); - builder.setFooter(time + " sent by " + DBUtil.getINSTANCE().getConfigFileManager().getFooter()); + builder.setFooter(time + " sent by " + DBUtil.getINSTANCE().getMcMessagesFileHandler().getFooter()); } } @@ -44,7 +44,7 @@ public Embed(String context, String header, boolean useAuthorTag, Color color) { if (useAuthorTag) { SimpleDateFormat dateFormat = new SimpleDateFormat(DBUtil.TIME_PATTERN); String time = dateFormat.format(new Date(System.currentTimeMillis())); - builder.setFooter(time + " send by " + DBUtil.getINSTANCE().getConfigFileManager().getFooter()); + builder.setFooter(time + " send by " + DBUtil.getINSTANCE().getMcMessagesFileHandler().getFooter()); } } diff --git a/src/main/java/de/staticred/dbv2/files/filehandlers/ConfigFileManager.java b/src/main/java/de/staticred/dbv2/files/filehandlers/ConfigFileManager.java index da6fa0e..4a480db 100644 --- a/src/main/java/de/staticred/dbv2/files/filehandlers/ConfigFileManager.java +++ b/src/main/java/de/staticred/dbv2/files/filehandlers/ConfigFileManager.java @@ -97,9 +97,5 @@ public int deleteTime() { return configuration.getInt(FileConstants.DELETE_TIME); } - public String getFooter() { - return configuration.getString(FileConstants.FOOTER); - } - } diff --git a/src/main/java/de/staticred/dbv2/files/filehandlers/MessagesFileHandler.java b/src/main/java/de/staticred/dbv2/files/filehandlers/MessagesFileHandler.java index 1d46974..2222617 100644 --- a/src/main/java/de/staticred/dbv2/files/filehandlers/MessagesFileHandler.java +++ b/src/main/java/de/staticred/dbv2/files/filehandlers/MessagesFileHandler.java @@ -14,7 +14,7 @@ public class MessagesFileHandler extends DBUtilFile { /** - * Instantiates a new Mc messages file handler. + * Instantiates a new messages file handler. * * @param current the current */ @@ -26,6 +26,10 @@ public String getPrefix() { return convertToMcString(configuration.getString(FileConstants.PREFIX)); } + public String getFooter() { + return configuration.getString(FileConstants.FOOTER); + } + public String getInvalidChannel() { return convertToMcString(configuration.getString(FileConstants.INVALID_CHANNEL)); } diff --git a/src/main/resources/files/config.yml b/src/main/resources/files/config.yml index 14211fc..f5f0f6d 100644 --- a/src/main/resources/files/config.yml +++ b/src/main/resources/files/config.yml @@ -43,9 +43,6 @@ listenToChannels: #WARNING: if discord commands do not have a slashcommandexecutor they´re not accessible anymore enablePrefixCommands: true -#discord embed footer -footer: "DBUtilities" - #will delete all messages not resulting in a reply from the bot #to make this work, listenToChannels may not be empty. forceCleanChannel: false diff --git a/src/main/resources/files/messages.yml b/src/main/resources/files/messages.yml index 00f2dbb..f1c52db 100644 --- a/src/main/resources/files/messages.yml +++ b/src/main/resources/files/messages.yml @@ -1,4 +1,4 @@ prefix: "&3&lD&2&lB&8Util &0 >> &r" -#messages the bot sends in the discord -discord: \ No newline at end of file +#discord settings +footer: "DBUtilities" \ No newline at end of file From 20f76c023a3601572de4f63d63135aa33d00616f Mon Sep 17 00:00:00 2001 From: ikbenignace Date: Sun, 17 Oct 2021 17:28:52 +0200 Subject: [PATCH 4/4] option to disable slash commands --- .../java/de/staticred/dbv2/constants/FileConstants.java | 1 + .../de/staticred/dbv2/discord/events/BotReadyEvent.java | 9 +++++---- .../dbv2/files/filehandlers/ConfigFileManager.java | 4 ++++ src/main/resources/files/config.yml | 6 +++++- 4 files changed, 15 insertions(+), 5 deletions(-) diff --git a/src/main/java/de/staticred/dbv2/constants/FileConstants.java b/src/main/java/de/staticred/dbv2/constants/FileConstants.java index 549eb32..cef18c7 100644 --- a/src/main/java/de/staticred/dbv2/constants/FileConstants.java +++ b/src/main/java/de/staticred/dbv2/constants/FileConstants.java @@ -44,4 +44,5 @@ public class FileConstants { public static final File TEMP_DIRECTORY = new File(DBUtil.getINSTANCE().getDataFolder().getAbsolutePath() + "/temp"); public static final String ENABLE_DISCORD_PREFIX = "enablePrefixCommands"; + public static final String ENABLE_SLASH_COMMANDS = "enableSlashCommands"; } diff --git a/src/main/java/de/staticred/dbv2/discord/events/BotReadyEvent.java b/src/main/java/de/staticred/dbv2/discord/events/BotReadyEvent.java index b9bf5b0..760b176 100644 --- a/src/main/java/de/staticred/dbv2/discord/events/BotReadyEvent.java +++ b/src/main/java/de/staticred/dbv2/discord/events/BotReadyEvent.java @@ -27,15 +27,16 @@ public void onReady(ReadyEvent event) { if (BotHelper.jda.getGuilds().size() != 0) { BotHelper.guild = BotHelper.jda.getGuilds().get(0); + if (DBUtil.getINSTANCE().getConfigFileManager().enabledSlashCommands()) { + BotHelper.registerDefaultCommands(); + } - - BotHelper.registerDefaultCommands(); } - BotHelper.registerEvent(new MessageEvent()); + if (DBUtil.getINSTANCE().getConfigFileManager().enabledDiscordMessages()) BotHelper.registerEvent(new MessageEvent()); BotHelper.registerEvent(new RoleCreateEvent()); BotHelper.registerEvent(new RoleDeleteEvent()); - BotHelper.registerEvent(new SlashCommandEvent()); + if (DBUtil.getINSTANCE().getConfigFileManager().enabledSlashCommands()) BotHelper.registerEvent(new SlashCommandEvent()); } diff --git a/src/main/java/de/staticred/dbv2/files/filehandlers/ConfigFileManager.java b/src/main/java/de/staticred/dbv2/files/filehandlers/ConfigFileManager.java index 4a480db..a57c82b 100644 --- a/src/main/java/de/staticred/dbv2/files/filehandlers/ConfigFileManager.java +++ b/src/main/java/de/staticred/dbv2/files/filehandlers/ConfigFileManager.java @@ -89,6 +89,10 @@ public boolean enabledDiscordMessages() { return configuration.getBoolean(FileConstants.ENABLE_DISCORD_PREFIX); } + public boolean enabledSlashCommands() { + return configuration.getBoolean(FileConstants.ENABLE_SLASH_COMMANDS); + } + public String getActivityDescription() { return configuration.getString(FileConstants.ACTIVITY_DESCRIPTION); } diff --git a/src/main/resources/files/config.yml b/src/main/resources/files/config.yml index f5f0f6d..0e6a107 100644 --- a/src/main/resources/files/config.yml +++ b/src/main/resources/files/config.yml @@ -40,9 +40,13 @@ listenToChannels: #discordcommands using a prefix will be used. #example: !help can be disabled when setting this to false -#WARNING: if discord commands do not have a slashcommandexecutor they´re not accessible anymore enablePrefixCommands: true +#true: slash commands will be implemented +#WARNING: once slashcommands are enabled, you can only undo this with re-inviting your discord bot +#WARNING: if discord commands do not have a slashcommandexecutor they´re not accessible anymore +enableSlashCommands: false + #will delete all messages not resulting in a reply from the bot #to make this work, listenToChannels may not be empty. forceCleanChannel: false