From 68303f1d9efdc3b0724d22409642452d3254da24 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Fri, 22 Nov 2019 13:11:34 -0800 Subject: [PATCH 01/67] Role remove Command but it's buggy --- .../commands/moderation/RoleCommand.java | 25 +++++++++++++++++-- .../java/com/bbn/hadder/utils/BotList.java | 2 +- 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java index 506da00..9b69706 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java @@ -42,7 +42,28 @@ public class RoleCommand implements Command { break; case "remove": - event.getTextChannel().sendMessage("SOON").queue(); + if (event.getMessage().getMentionedMembers().size() > 0 && event.getMessage().getMentionedRoles().size() > 0) { + for (Member member : event.getMessage().getMentionedMembers()) { + for (Role role : event.getMessage().getMentionedRoles()) { + if (event.getGuild().getSelfMember().canInteract(member)) { + if (event.getGuild().getSelfMember().canInteract(role)) { + event.getGuild().removeRoleFromMember(member, role).reason("Role removed by " + event.getAuthor().getAsTag()).queue(); + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + } + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + } + } + } + EmbedBuilder builder = new EmbedBuilder(); + event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) + .setTitle("✅ Successfully removed role(s) ✅") + .setDescription("I successfully removed " + event.getMessage().getMentionedRoles().size() + " roles from " + event.getMessage().getMentionedMembers().size() + " members.") + .build()).queue(); + } break; } } else { @@ -70,6 +91,6 @@ public class RoleCommand implements Command { @Override public String usage() { - return "<@role> <@user>"; + return "add/remove <@role> <@user>"; } } diff --git a/src/main/java/com/bbn/hadder/utils/BotList.java b/src/main/java/com/bbn/hadder/utils/BotList.java index be35045..a7faa6d 100644 --- a/src/main/java/com/bbn/hadder/utils/BotList.java +++ b/src/main/java/com/bbn/hadder/utils/BotList.java @@ -143,7 +143,7 @@ public class BotList { try { new OkHttpClient().newCall(discordextremelist).execute().close(); - System.out.println("Successfully posted count to the Discord Extreme List!"); + System.out.println("Successfully posted count for the Discord Extreme List!"); } catch (IOException e) { e.printStackTrace(); } From d81afdd4dfca5012a2c2d913ca6fdd6820049816 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Fri, 22 Nov 2019 13:16:08 -0800 Subject: [PATCH 02/67] Rules Decline -> kick --- src/main/java/com/bbn/hadder/commands/fun/GifCommand.java | 1 - src/main/java/com/bbn/hadder/listener/RulesListener.java | 6 +++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/bbn/hadder/commands/fun/GifCommand.java b/src/main/java/com/bbn/hadder/commands/fun/GifCommand.java index dbb3ad3..3649a12 100644 --- a/src/main/java/com/bbn/hadder/commands/fun/GifCommand.java +++ b/src/main/java/com/bbn/hadder/commands/fun/GifCommand.java @@ -6,7 +6,6 @@ package com.bbn.hadder.commands.fun; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; -import com.bbn.hadder.core.Config; import com.bbn.hadder.utils.MessageEditor; import net.dv8tion.jda.api.EmbedBuilder; import okhttp3.OkHttpClient; diff --git a/src/main/java/com/bbn/hadder/listener/RulesListener.java b/src/main/java/com/bbn/hadder/listener/RulesListener.java index aba0854..dd42306 100644 --- a/src/main/java/com/bbn/hadder/listener/RulesListener.java +++ b/src/main/java/com/bbn/hadder/listener/RulesListener.java @@ -20,7 +20,11 @@ public class RulesListener extends ListenerAdapter { public void onMessageReactionAdd(MessageReactionAddEvent event) { if (event.getMessageId().equals(rethink.getRulesMID(event.getGuild().getId()))) { if (!event.getMember().getUser().isBot()) { - event.getGuild().addRoleToMember(event.getMember(), event.getGuild().getRoleById(rethink.getRulesRID(event.getGuild().getId()))).queue(); + if (event.getReactionEmote().equals("✅")) { + event.getGuild().addRoleToMember(event.getMember(), event.getGuild().getRoleById(rethink.getRulesRID(event.getGuild().getId()))).queue(); + } else if (event.getReactionEmote().equals("❌")) { + event.getMember().kick().reason("Declined the rules").queue(); + } } } } From 1cbd2e0af958eb95c7169c0427665f92f6495bb3 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Fri, 22 Nov 2019 14:34:16 -0800 Subject: [PATCH 03/67] Rules Fix --- .../commands/moderation/RulesCommand.java | 47 +++++++++++++------ 1 file changed, 33 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java index 67d4622..3b9de3d 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java @@ -39,21 +39,40 @@ public class RulesCommand implements Command { .setDescription("The rules were successfully set. Please send me the name of the role which the user receives after he accepted the rules.") .build()).queue(); new EventWaiter().newOnMessageEventWaiter(event3 -> { - Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentRaw(), true).get(0); - if (event3.getGuild().getSelfMember().canInteract(role)) { - event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("The role has been successfully set to " + role.getName() + ".")) - .build()).queue(); - Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Rules")) - .setDescription(message) - .build()).complete(); - rules.addReaction("✅").queue(); - rules.addReaction("❌").queue(); - event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); + if(event.getMessage().getMentionedRoles().size() == 1) { + Role role = event.getMessage().getMentionedRoles().get(0); + if (event3.getGuild().getSelfMember().canInteract(role)) { + event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("The role has been successfully set to " + role.getName() + ".")) + .build()).queue(); + Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Rules")) + .setDescription(message) + .build()).complete(); + rules.addReaction("✅").queue(); + rules.addReaction("❌").queue(); + event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentRaw(), true).get(0); + if (event3.getGuild().getSelfMember().canInteract(role)) { + event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("The role has been successfully set to " + role.getName() + ".")) + .build()).queue(); + Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Rules")) + .setDescription(message) + .build()).complete(); + rules.addReaction("✅").queue(); + rules.addReaction("❌").queue(); + event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + } } }, event.getJDA(), event.getAuthor()); }, event.getJDA(), event.getAuthor()); From 99cf3a44f54c479272c57159a469819e6ca6d0f9 Mon Sep 17 00:00:00 2001 From: Skidder Date: Fri, 22 Nov 2019 14:36:18 -0800 Subject: [PATCH 04/67] Update RulesListener.java --- src/main/java/com/bbn/hadder/listener/RulesListener.java | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/bbn/hadder/listener/RulesListener.java b/src/main/java/com/bbn/hadder/listener/RulesListener.java index dd42306..b56c47c 100644 --- a/src/main/java/com/bbn/hadder/listener/RulesListener.java +++ b/src/main/java/com/bbn/hadder/listener/RulesListener.java @@ -20,11 +20,9 @@ public class RulesListener extends ListenerAdapter { public void onMessageReactionAdd(MessageReactionAddEvent event) { if (event.getMessageId().equals(rethink.getRulesMID(event.getGuild().getId()))) { if (!event.getMember().getUser().isBot()) { - if (event.getReactionEmote().equals("✅")) { + event.getGuild().addRoleToMember(event.getMember(), event.getGuild().getRoleById(rethink.getRulesRID(event.getGuild().getId()))).queue(); - } else if (event.getReactionEmote().equals("❌")) { - event.getMember().kick().reason("Declined the rules").queue(); - } + } } } From 485747963e2093fec34bff954bb0f0f96805b0fc Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Fri, 22 Nov 2019 14:52:27 -0800 Subject: [PATCH 05/67] Rules Decline --> kick --- src/main/java/com/bbn/hadder/listener/RulesListener.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/bbn/hadder/listener/RulesListener.java b/src/main/java/com/bbn/hadder/listener/RulesListener.java index b56c47c..d54edcf 100644 --- a/src/main/java/com/bbn/hadder/listener/RulesListener.java +++ b/src/main/java/com/bbn/hadder/listener/RulesListener.java @@ -20,9 +20,13 @@ public class RulesListener extends ListenerAdapter { public void onMessageReactionAdd(MessageReactionAddEvent event) { if (event.getMessageId().equals(rethink.getRulesMID(event.getGuild().getId()))) { if (!event.getMember().getUser().isBot()) { - + if (event.getReactionEmote().getEmoji().equals("✅")) { event.getGuild().addRoleToMember(event.getMember(), event.getGuild().getRoleById(rethink.getRulesRID(event.getGuild().getId()))).queue(); - + } else if (event.getReactionEmote().getEmoji().equals("❌")) { + if (event.getGuild().getSelfMember().canInteract(event.getMember())) { + event.getMember().kick().reason("Declined the rules"); + } + } } } } From 434cc3e8dfbd24da7ae6344a77caf3c8484bdd15 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Fri, 22 Nov 2019 15:08:21 -0800 Subject: [PATCH 06/67] Rules Command --- .../commands/moderation/RoleCommand.java | 2 +- .../commands/moderation/RulesCommand.java | 62 +++++++++++++++++-- 2 files changed, 58 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java index 9b69706..b0a92be 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java @@ -75,7 +75,7 @@ public class RoleCommand implements Command { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder).build()).queue(); } } else { - event.getTextChannel().sendMessage("Missing args").queue(); + event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); } } diff --git a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java index 3b9de3d..1f4b47a 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java @@ -25,7 +25,7 @@ public class RulesCommand implements Command { .setDescription("Please specify the channel on which I should send the rules. Your message should look like: #rules.")) .build()).queue(); new EventWaiter().newOnMessageEventWaiter(event1 -> { - if (event1.getMessage().getMentionedChannels().size() > 0) { + if (event1.getMessage().getMentionedChannels().size() == 1) { TextChannel channel = event1.getMessage().getMentionedChannels().get(0); if (channel.getGuild().getId().equals(event1.getGuild().getId())) { event1.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() @@ -83,10 +83,62 @@ public class RulesCommand implements Command { .build()).queue(); } } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, new EmbedBuilder() - .setTitle("No Channel mentioned")) - .setDescription("Please mention a channel. This should look like #rules") - .build()).queue(); + TextChannel channel = event1.getGuild().getTextChannelsByName(event1.getMessage().getContentRaw(), true).get(0); + if (channel.getGuild().getId().equals(event1.getGuild().getId())) { + event1.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Rules") + .setDescription("The channel was successfully set to " + channel.getName() + ". Please send me the rules now.")) + .build()).queue(); + new EventWaiter().newOnMessageEventWaiter(event2 -> { + String message = event2.getMessage().getContentDisplay(); + event2.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Role to assign")) + .setDescription("The rules were successfully set. Please send me the name of the role which the user receives after he accepted the rules.") + .build()).queue(); + new EventWaiter().newOnMessageEventWaiter(event3 -> { + if(event.getMessage().getMentionedRoles().size() == 1) { + Role role = event.getMessage().getMentionedRoles().get(0); + if (event3.getGuild().getSelfMember().canInteract(role)) { + event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("The role has been successfully set to " + role.getName() + ".")) + .build()).queue(); + Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Rules")) + .setDescription(message) + .build()).complete(); + rules.addReaction("✅").queue(); + rules.addReaction("❌").queue(); + event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + } + } else { + Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentRaw(), true).get(0); + if (event3.getGuild().getSelfMember().canInteract(role)) { + event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("The role has been successfully set to " + role.getName() + ".")) + .build()).queue(); + Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Rules")) + .setDescription(message) + .build()).complete(); + rules.addReaction("✅").queue(); + rules.addReaction("❌").queue(); + event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + } + } + }, event.getJDA(), event.getAuthor()); + }, event.getJDA(), event.getAuthor()); + } else { + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, new EmbedBuilder() + .setTitle("Wrong Guild") + .setDescription("The mentioned channel must be on this guid!")) + .build()).queue(); + } } }, event.getJDA(), event.getAuthor()); } else { From f6e8b98422cfe97d474bfc87eff117385eeea5cf Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Fri, 22 Nov 2019 15:22:13 -0800 Subject: [PATCH 07/67] Rules Command improvements --- .../hadder/commands/moderation/RulesCommand.java | 2 +- .../com/bbn/hadder/listener/RulesListener.java | 15 ++++++++++++++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java index 1f4b47a..53f263b 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java @@ -153,7 +153,7 @@ public class RulesCommand implements Command { @Override public String[] labels() { - return new String[]{"rules"}; + return new String[]{"rules", "rule"}; } @Override diff --git a/src/main/java/com/bbn/hadder/listener/RulesListener.java b/src/main/java/com/bbn/hadder/listener/RulesListener.java index d54edcf..5c225e6 100644 --- a/src/main/java/com/bbn/hadder/listener/RulesListener.java +++ b/src/main/java/com/bbn/hadder/listener/RulesListener.java @@ -6,6 +6,7 @@ package com.bbn.hadder.listener; import com.bbn.hadder.Rethink; import net.dv8tion.jda.api.events.message.react.MessageReactionAddEvent; +import net.dv8tion.jda.api.events.message.react.MessageReactionRemoveEvent; import net.dv8tion.jda.api.hooks.ListenerAdapter; public class RulesListener extends ListenerAdapter { @@ -21,13 +22,25 @@ public class RulesListener extends ListenerAdapter { if (event.getMessageId().equals(rethink.getRulesMID(event.getGuild().getId()))) { if (!event.getMember().getUser().isBot()) { if (event.getReactionEmote().getEmoji().equals("✅")) { - event.getGuild().addRoleToMember(event.getMember(), event.getGuild().getRoleById(rethink.getRulesRID(event.getGuild().getId()))).queue(); + event.getGuild().addRoleToMember(event.getMember(), event.getGuild().getRoleById(rethink.getRulesRID(event.getGuild().getId()))).reason("Accepted rules").queue(); } else if (event.getReactionEmote().getEmoji().equals("❌")) { if (event.getGuild().getSelfMember().canInteract(event.getMember())) { + event.getReaction().removeReaction().queue(); event.getMember().kick().reason("Declined the rules"); } } } } } + + @Override + public void onMessageReactionRemove(MessageReactionRemoveEvent event) { + if (event.getMessageId().equals(rethink.getRulesMID(event.getGuild().getId()))) { + if (!event.getMember().getUser().isBot()) { + if (event.getReactionEmote().getEmoji().equals("✅")) { + event.getGuild().removeRoleFromMember(event.getMember(), event.getGuild().getRoleById(rethink.getRulesRID(event.getGuild().getId()))).reason("Withdrawal of the acceptance of the rules").queue(); + } + } + } + } } From 5a849dfbde194b9e8ecd24a455f8aca6004ae4e3 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Fri, 22 Nov 2019 15:34:55 -0800 Subject: [PATCH 08/67] :grimacing: --- .github/workflows/maven.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/maven.yml b/.github/workflows/maven.yml index aaeb397..a15e1a2 100644 --- a/.github/workflows/maven.yml +++ b/.github/workflows/maven.yml @@ -3,7 +3,7 @@ name: Hadder on: [push] jobs: - test: + build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 @@ -16,7 +16,7 @@ jobs: deploy: runs-on: ubuntu-latest - needs: test + needs: build if: github.ref == 'refs/heads/master' steps: - uses: actions/checkout@v1 @@ -41,7 +41,7 @@ jobs: username: ${{ secrets.USERNAME }} password: ${{ secrets.PASSWORD }} port: ${{ secrets.PORT }} - script: /home/Bots/deploy.sh + script: /home/Bots/deploy.sh - name: Send Webhook Notification if: always() env: From ef1b1e1d240b1fe4283882b1b3bc8718fcc67481 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Fri, 22 Nov 2019 16:06:05 -0800 Subject: [PATCH 09/67] Some owner stuff --- .../java/com/bbn/hadder/commands/moderation/BanCommand.java | 4 +--- .../java/com/bbn/hadder/commands/moderation/ClearCommand.java | 2 +- .../bbn/hadder/commands/moderation/GuildPrefixCommand.java | 2 +- .../java/com/bbn/hadder/commands/moderation/KickCommand.java | 2 +- .../java/com/bbn/hadder/commands/moderation/NickCommand.java | 2 +- .../java/com/bbn/hadder/commands/moderation/RoleCommand.java | 2 +- .../java/com/bbn/hadder/commands/moderation/RulesCommand.java | 2 +- 7 files changed, 7 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/bbn/hadder/commands/moderation/BanCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/BanCommand.java index 07405a4..22872bc 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/BanCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/BanCommand.java @@ -15,7 +15,7 @@ public class BanCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { - if (event.getGuild().getMemberById(event.getAuthor().getId()).hasPermission(Permission.BAN_MEMBERS) || event.getGuild().getOwner().getId().equals(event.getAuthor().getId())) { + if (event.getGuild().getMemberById(event.getAuthor().getId()).hasPermission(Permission.BAN_MEMBERS) || event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { if (event.getMessage().getMentionedMembers().size() == 1) { Member victim = event.getMessage().getMentionedMembers().get(0); if (!event.getAuthor().getId().equals(victim.getId())) { @@ -37,8 +37,6 @@ public class BanCommand implements Command { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setTitle("Not possible").setDescription("You can't ban yourself.").build()).queue(); } } else if (event.getMessage().getMentionedMembers().size() == 0) { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setDescription("You have to mention at least one user!").build()).queue(); event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); } else if (event.getMessage().getMentionedMembers().size() > 1) { for (int i = 0; i < event.getMessage().getMentionedMembers().size(); i++) { diff --git a/src/main/java/com/bbn/hadder/commands/moderation/ClearCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/ClearCommand.java index 884c7d8..98ad5b5 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/ClearCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/ClearCommand.java @@ -20,7 +20,7 @@ public class ClearCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { if (args.length > 0) { - if (event.getGuild().getMemberById(event.getAuthor().getId()).hasPermission(Permission.MESSAGE_MANAGE) || event.getGuild().getOwnerId().equals(event.getAuthor().getId())) { + if (event.getGuild().getMemberById(event.getAuthor().getId()).hasPermission(Permission.MESSAGE_MANAGE) || event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { if (event.getGuild().getMemberById(event.getJDA().getSelfUser().getId()).hasPermission(Permission.MESSAGE_MANAGE)) { try { int nbToDelete = Integer.parseInt(args[0]); diff --git a/src/main/java/com/bbn/hadder/commands/moderation/GuildPrefixCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/GuildPrefixCommand.java index 8407394..5c4e493 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/GuildPrefixCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/GuildPrefixCommand.java @@ -10,7 +10,7 @@ public class GuildPrefixCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { - if (event.getGuild().getMemberById(event.getAuthor().getId()).hasPermission(Permission.MANAGE_SERVER) || event.getGuild().getOwnerId().equals(event.getAuthor().getId())) { + if (event.getGuild().getMemberById(event.getAuthor().getId()).hasPermission(Permission.MANAGE_SERVER) || event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { if (args.length == 1) { if (!args[0].contains("\"")) { diff --git a/src/main/java/com/bbn/hadder/commands/moderation/KickCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/KickCommand.java index 36a7650..7fc6f85 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/KickCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/KickCommand.java @@ -16,7 +16,7 @@ public class KickCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { - if (event.getGuild().getMemberById(event.getAuthor().getId()).hasPermission(Permission.KICK_MEMBERS) || event.getGuild().getOwnerId().equals(event.getAuthor().getId())) { + if (event.getGuild().getMemberById(event.getAuthor().getId()).hasPermission(Permission.KICK_MEMBERS) || event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { if (event.getMessage().getMentionedMembers().size() == 1) { Member victim = event.getMessage().getMentionedMembers().get(0); if (!event.getAuthor().getId().equals(victim.getId())) { diff --git a/src/main/java/com/bbn/hadder/commands/moderation/NickCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/NickCommand.java index 4ab91b9..f8d4411 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/NickCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/NickCommand.java @@ -15,7 +15,7 @@ public class NickCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { - if (event.getMember().hasPermission(Permission.NICKNAME_MANAGE) || event.getGuild().getOwnerId().equals(event.getMember().getId())) { + if (event.getMember().hasPermission(Permission.NICKNAME_MANAGE) || event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { if (event.getGuild().getSelfMember().hasPermission(Permission.NICKNAME_MANAGE)) { if (event.getMessage().getMentionedMembers().size() == 1) { if (!event.getMessage().getMentionedMembers().get(0).getId().equals(event.getGuild().getSelfMember().getId())) { diff --git a/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java index b0a92be..797bc12 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java @@ -14,7 +14,7 @@ public class RoleCommand implements Command { public void executed(String[] args, CommandEvent event) { if (args.length > 0) { if (event.getMember().hasPermission(Permission.MANAGE_ROLES)) { - if (event.getGuild().getSelfMember().hasPermission(Permission.MANAGE_ROLES)) { + if (event.getGuild().getSelfMember().hasPermission(Permission.MANAGE_ROLES) || event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { switch (args[0].toLowerCase()) { case "add": if (event.getMessage().getMentionedMembers().size() > 0 && event.getMessage().getMentionedRoles().size() > 0) { diff --git a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java index 53f263b..e2e20cc 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java @@ -18,7 +18,7 @@ public class RulesCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { - if (event.getMember().hasPermission(Permission.MANAGE_SERVER)) { + if (event.getMember().hasPermission(Permission.MANAGE_SERVER) || event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { if (event.getGuild().getSelfMember().hasPermission(Permission.MANAGE_ROLES)) { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() .setTitle("Set up rules") From df8e0dc75268fe7a2edb7fe800a04bfd03aacaf0 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Fri, 22 Nov 2019 16:30:57 -0800 Subject: [PATCH 10/67] Avatar Command --- src/main/java/com/bbn/hadder/Hadder.java | 3 +- .../hadder/commands/fun/AvatarCommand.java | 57 +++++++++++++++++++ 2 files changed, 59 insertions(+), 1 deletion(-) create mode 100644 src/main/java/com/bbn/hadder/commands/fun/AvatarCommand.java diff --git a/src/main/java/com/bbn/hadder/Hadder.java b/src/main/java/com/bbn/hadder/Hadder.java index eede5b6..ce0ae2c 100644 --- a/src/main/java/com/bbn/hadder/Hadder.java +++ b/src/main/java/com/bbn/hadder/Hadder.java @@ -70,6 +70,7 @@ public class Hadder { new RoleCommand(), new RulesCommand(), new FeedbackCommand(), + new AvatarCommand(), new LinkCommand()), config, helpCommand); builder.addEventListeners( @@ -80,7 +81,7 @@ public class Hadder { new ReadyListener(rethink, config), new LinkListener(rethink), new RulesListener(rethink)); - + try { shardManager = builder.build(); diff --git a/src/main/java/com/bbn/hadder/commands/fun/AvatarCommand.java b/src/main/java/com/bbn/hadder/commands/fun/AvatarCommand.java new file mode 100644 index 0000000..e45b949 --- /dev/null +++ b/src/main/java/com/bbn/hadder/commands/fun/AvatarCommand.java @@ -0,0 +1,57 @@ +package com.bbn.hadder.commands.fun; + +/* + * @author Skidder / GregTCLTK + */ + +import com.bbn.hadder.commands.Command; +import com.bbn.hadder.commands.CommandEvent; +import com.bbn.hadder.utils.MessageEditor; +import net.dv8tion.jda.api.EmbedBuilder; +import net.dv8tion.jda.api.entities.Member; + +public class AvatarCommand implements Command { + + @Override + public void executed(String[] args, CommandEvent event) { + if (args.length == 0) { + Member member = event.getMember(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Avatar of " + member.getUser().getAsTag())) + .setImage(member.getUser().getAvatarUrl()) + .setFooter(member.getUser().getAsTag()) + .build()).queue(); + } else if (event.getMessage().getMentionedMembers().size() == 1) { + Member member = event.getMessage().getMentionedMembers().get(0); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Avatar of " + member.getUser().getAsTag())) + .setImage(member.getUser().getAvatarUrl()) + .setFooter(member.getUser().getAsTag()) + .build()).queue(); + } else if (args[0].length() == 18){ + Member member = event.getGuild().getMemberById(args[0]); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Avatar of " + member.getUser().getAsTag())) + .setImage(member.getUser().getAvatarUrl()) + .setFooter(member.getUser().getAsTag()) + .build()).queue(); + } else { + event.getHelpCommand().sendHelp(this , event.getRethink(), event.getAuthor(), event.getTextChannel()); + } + } + + @Override + public String[] labels() { + return new String[]{"avatar"}; + } + + @Override + public String description() { + return "Sends the avatar of the specified member."; + } + + @Override + public String usage() { + return "<@User>/"; + } +} From 399aade1302b6a561591a7bc1a44f4dd81b4a36e Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sat, 23 Nov 2019 02:54:07 -0800 Subject: [PATCH 11/67] Better code --- src/main/java/com/bbn/hadder/Hadder.java | 2 +- .../java/com/bbn/hadder/commands/misc/GitHubCommand.java | 5 ++++- .../java/com/bbn/hadder/commands/misc/InviteCommand.java | 5 ++++- .../{ScreenshareCommand.java => ScreenShareCommand.java} | 3 ++- .../com/bbn/hadder/commands/moderation/ClearCommand.java | 4 ---- .../bbn/hadder/commands/moderation/GuildPrefixCommand.java | 2 -- .../com/bbn/hadder/commands/moderation/KickCommand.java | 2 -- .../com/bbn/hadder/commands/moderation/NickCommand.java | 4 ---- .../java/com/bbn/hadder/commands/owner/RebootCommand.java | 2 +- .../com/bbn/hadder/commands/settings/PrefixCommand.java | 2 -- src/main/java/com/bbn/hadder/core/LinkUtils.java | 6 ++---- 11 files changed, 14 insertions(+), 23 deletions(-) rename src/main/java/com/bbn/hadder/commands/misc/{ScreenshareCommand.java => ScreenShareCommand.java} (99%) diff --git a/src/main/java/com/bbn/hadder/Hadder.java b/src/main/java/com/bbn/hadder/Hadder.java index ce0ae2c..cb7133c 100644 --- a/src/main/java/com/bbn/hadder/Hadder.java +++ b/src/main/java/com/bbn/hadder/Hadder.java @@ -52,7 +52,7 @@ public class Hadder { new GifCommand(), new ClearCommand(), new GitHubCommand(), - new ScreenshareCommand(), + new ScreenShareCommand(), new RebootCommand(), new EqualsCommand(), new InviteCommand(), diff --git a/src/main/java/com/bbn/hadder/commands/misc/GitHubCommand.java b/src/main/java/com/bbn/hadder/commands/misc/GitHubCommand.java index 2cc681b..ed6b471 100644 --- a/src/main/java/com/bbn/hadder/commands/misc/GitHubCommand.java +++ b/src/main/java/com/bbn/hadder/commands/misc/GitHubCommand.java @@ -68,7 +68,10 @@ public class GitHubCommand implements Command { } } } else { - event.getTextChannel().sendMessage("SOON").queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Connect you GH account")) + .setDescription("[Please connect your GitHub account here](https://github.com/login/oauth/authorize?client_id=25321f690bb1b6952942)") + .build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/misc/InviteCommand.java b/src/main/java/com/bbn/hadder/commands/misc/InviteCommand.java index 6357d0e..f845fa2 100644 --- a/src/main/java/com/bbn/hadder/commands/misc/InviteCommand.java +++ b/src/main/java/com/bbn/hadder/commands/misc/InviteCommand.java @@ -15,7 +15,10 @@ public class InviteCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setTitle("Invite me!").setDescription("[Invite me here!](https://discordapp.com/oauth2/authorize?client_id=" + Hadder.shardManager.getGuilds().get(0).getSelfMember().getId() + "&scope=bot&permissions=470133879)").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) + .setTitle("Invite me!") + .setDescription("[Invite me here!](https://discordapp.com/oauth2/authorize?client_id=" + Hadder.shardManager.getGuilds().get(0).getSelfMember().getId() + "&scope=bot&permissions=470133879)") + .build()).queue(); } @Override diff --git a/src/main/java/com/bbn/hadder/commands/misc/ScreenshareCommand.java b/src/main/java/com/bbn/hadder/commands/misc/ScreenShareCommand.java similarity index 99% rename from src/main/java/com/bbn/hadder/commands/misc/ScreenshareCommand.java rename to src/main/java/com/bbn/hadder/commands/misc/ScreenShareCommand.java index c9adbe0..9a048a4 100644 --- a/src/main/java/com/bbn/hadder/commands/misc/ScreenshareCommand.java +++ b/src/main/java/com/bbn/hadder/commands/misc/ScreenShareCommand.java @@ -9,7 +9,8 @@ import net.dv8tion.jda.api.entities.VoiceChannel; import java.util.List; -public class ScreenshareCommand implements Command { +public class ScreenShareCommand implements Command { + @Override public void executed(String[] args, CommandEvent event) { if (args.length>0) { diff --git a/src/main/java/com/bbn/hadder/commands/moderation/ClearCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/ClearCommand.java index 98ad5b5..0373508 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/ClearCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/ClearCommand.java @@ -36,8 +36,6 @@ public class ClearCommand implements Command { EmbedBuilder builder = new EmbedBuilder(); event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setDescription("Successfully deleted " + nbToDelete + " messages.").build()).queue(); } catch (NumberFormatException e) { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setDescription("You have to specify a number!").build()).queue(); event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); } } else { @@ -49,8 +47,6 @@ public class ClearCommand implements Command { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder).build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setDescription("You have to specify a number!").build()).queue(); event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); } } diff --git a/src/main/java/com/bbn/hadder/commands/moderation/GuildPrefixCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/GuildPrefixCommand.java index 5c4e493..10f9a09 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/GuildPrefixCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/GuildPrefixCommand.java @@ -24,8 +24,6 @@ public class GuildPrefixCommand implements Command { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setDescription("The prefix must not contain **\"**").build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setDescription("You have to set a prefix.").build()).queue(); event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); } } else { diff --git a/src/main/java/com/bbn/hadder/commands/moderation/KickCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/KickCommand.java index 7fc6f85..65877e6 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/KickCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/KickCommand.java @@ -38,8 +38,6 @@ public class KickCommand implements Command { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setDescription("You can't kick yourself.").build()).queue(); } } else if (event.getMessage().getMentionedMembers().size() == 0) { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setDescription("You have to mention at least one user!").build()).queue(); event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); } else if (event.getMessage().getMentionedMembers().size() > 1) { for (int i = 0; i < event.getMessage().getMentionedMembers().size(); i++) { diff --git a/src/main/java/com/bbn/hadder/commands/moderation/NickCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/NickCommand.java index f8d4411..37cab59 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/NickCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/NickCommand.java @@ -31,8 +31,6 @@ public class NickCommand implements Command { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setTitle("✅ Successfully nicked ✅").setDescription("I successfully nicked " + event.getMessage().getMentionedMembers().get(0).getUser().getAsTag() + ".").build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setTitle("Missing arguments").setDescription("You have to specify a new nickname for the user(s).").build()).queue(); event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); } } else { @@ -51,8 +49,6 @@ public class NickCommand implements Command { } } } else if (event.getMessage().getMentionedMembers().size() == 0) { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setDescription("You have to mention at least one user!").build()).queue(); event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); } else { for (int i = 0; i < event.getMessage().getMentionedMembers().size(); i++) { diff --git a/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java b/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java index fceaa38..c5e3c5e 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java @@ -16,7 +16,7 @@ public class RebootCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { if (event.getAuthor().getId().equals("477141528981012511") || event.getAuthor().getId().equals("261083609148948488")) { - + System.exit(69); } else { EmbedBuilder builder = new EmbedBuilder(); event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder).build()).queue(); diff --git a/src/main/java/com/bbn/hadder/commands/settings/PrefixCommand.java b/src/main/java/com/bbn/hadder/commands/settings/PrefixCommand.java index 70ea455..5c10d32 100644 --- a/src/main/java/com/bbn/hadder/commands/settings/PrefixCommand.java +++ b/src/main/java/com/bbn/hadder/commands/settings/PrefixCommand.java @@ -18,8 +18,6 @@ public class PrefixCommand implements Command { EmbedBuilder builder = new EmbedBuilder(); event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setTitle("✅ Successfully set ✅").setDescription("I successfully set the new prefix for you to " + args[0]).build()).queue(); } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setDescription("You have to set a prefix.").build()).queue(); event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); } } diff --git a/src/main/java/com/bbn/hadder/core/LinkUtils.java b/src/main/java/com/bbn/hadder/core/LinkUtils.java index 1d5315a..ea6bd6c 100644 --- a/src/main/java/com/bbn/hadder/core/LinkUtils.java +++ b/src/main/java/com/bbn/hadder/core/LinkUtils.java @@ -25,7 +25,7 @@ public class LinkUtils { private void send(Message message, TextChannel channel, User user, List reactions, boolean usedmessagebuilder) { if (!channel.getGuild().getSelfMember().hasPermission(Permission.MANAGE_WEBHOOKS)) { - channel.sendMessage(new EmbedBuilder().setTitle("Wait a sec").setDescription("Please contact the owner of the server to give me the manage webhook permission").build()).queue(); + channel.sendMessage(new EmbedBuilder().setTitle("Wait a sec").setDescription("Please contact the owner of the server to give me the Manage Webhooks permission").build()).queue(); } else { channel.retrieveWebhooks().queue( webhooks -> { @@ -87,9 +87,7 @@ public class LinkUtils { } } ); - } catch (InterruptedException e) { - e.printStackTrace(); - } catch (ExecutionException e) { + } catch (InterruptedException | ExecutionException e) { e.printStackTrace(); } } From 53ef9fb1ff530e48bc205e188e335f0158e570ae Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sat, 23 Nov 2019 03:08:33 -0800 Subject: [PATCH 12/67] Introducing Eval Command --- src/main/java/com/bbn/hadder/Hadder.java | 1 + .../hadder/commands/owner/EvalCommand.java | 38 +++++++++++++++++++ .../hadder/commands/owner/RebootCommand.java | 2 +- .../commands/owner/ShutdownCommand.java | 2 +- 4 files changed, 41 insertions(+), 2 deletions(-) create mode 100644 src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java diff --git a/src/main/java/com/bbn/hadder/Hadder.java b/src/main/java/com/bbn/hadder/Hadder.java index cb7133c..afcf18d 100644 --- a/src/main/java/com/bbn/hadder/Hadder.java +++ b/src/main/java/com/bbn/hadder/Hadder.java @@ -71,6 +71,7 @@ public class Hadder { new RulesCommand(), new FeedbackCommand(), new AvatarCommand(), + new EvalCommand(), new LinkCommand()), config, helpCommand); builder.addEventListeners( diff --git a/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java b/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java new file mode 100644 index 0000000..1e382b2 --- /dev/null +++ b/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java @@ -0,0 +1,38 @@ +package com.bbn.hadder.commands.owner; + +/* + * @author Skidder / GregTCLTK + */ + +import com.bbn.hadder.commands.Command; +import com.bbn.hadder.commands.CommandEvent; +import com.bbn.hadder.utils.MessageEditor; +import net.dv8tion.jda.api.EmbedBuilder; + +public class EvalCommand implements Command { + + @Override + public void executed(String[] args, CommandEvent event) { + if (event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { + + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder).build()).queue(); + } + } + + @Override + public String[] labels() { + return new String[]{"eval"}; + } + + @Override + public String description() { + return "You know what a eval command is ;)"; + } + + @Override + public String usage() { + return ""; + } +} diff --git a/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java b/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java index c5e3c5e..1278123 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java @@ -15,7 +15,7 @@ public class RebootCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { - if (event.getAuthor().getId().equals("477141528981012511") || event.getAuthor().getId().equals("261083609148948488")) { + if (event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { System.exit(69); } else { EmbedBuilder builder = new EmbedBuilder(); diff --git a/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java b/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java index 14c161b..142c74f 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java @@ -12,7 +12,7 @@ import net.dv8tion.jda.api.EmbedBuilder; public class ShutdownCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { - if (event.getAuthor().getId().equals("477141528981012511") || event.getAuthor().getId().equals("261083609148948488")) { + if (event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { EmbedBuilder builder = new EmbedBuilder(); event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setTitle("Shutdown").build()).queue(); event.getJDA().getShardManager().shutdown(); From aedf64d295b443d8b6db87c939c4597e06b5a57b Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sat, 23 Nov 2019 03:21:41 -0800 Subject: [PATCH 13/67] Eval Command --- .../hadder/commands/owner/EvalCommand.java | 61 ++++++++++++++++++- 1 file changed, 60 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java b/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java index 1e382b2..0d560c4 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java @@ -9,12 +9,71 @@ import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; import net.dv8tion.jda.api.EmbedBuilder; +import javax.script.ScriptEngine; +import javax.script.ScriptEngineManager; +import javax.script.ScriptException; +import java.util.concurrent.Executors; +import java.util.concurrent.ScheduledExecutorService; +import java.util.concurrent.ScheduledFuture; +import java.util.concurrent.TimeUnit; + public class EvalCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { if (event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { - + if (args.length > 0) { + ScriptEngine engine = new ScriptEngineManager().getEngineByName("nashorn"); + + try { + engine.eval("var imports = new JavaImporter(java.io, java.lang, java.util);"); + } catch (ScriptException ex) { + ex.printStackTrace(); + } + + engine.put("event", event); + engine.put("jda", event.getJDA()); + engine.put("message", event.getMessage()); + engine.put("guild", event.getGuild()); + engine.put("channel", event.getChannel()); + engine.put("vc", event.getMember().getVoiceState().getChannel()); + engine.put("author", event.getAuthor()); + engine.put("member", event.getMember()); + engine.put("self", event.getGuild().getSelfMember()); + + ScheduledExecutorService service = Executors.newScheduledThreadPool(1); + + ScheduledFuture future = service.schedule(() -> { + + long startExec = System.currentTimeMillis(); + Object out = null; + EmbedBuilder builder = new EmbedBuilder(); + + try { + String script = ""; + for (int i = 0; i < args.length; i++) { + args[i] = args[i].replace("```java", "").replace("```", ""); + script += i == args.length-1 ? args[i]:args[i]+" "; + } + builder.addField("Input", "```java\n\n" + script + "```", false); + + out = engine.eval(script); + builder.addField("Output", "```java\n\n" + out.toString() + "```", false); + + } catch (Exception ex) { + builder.addField("Error", "```java\n\n" + ex.getMessage() + "```", false); + } + + builder.addField("Timing", System.currentTimeMillis()-startExec + " milliseconds", false); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setTitle("Eval Command").build()).queue(); + + service.shutdownNow(); + + }, 0, TimeUnit.MILLISECONDS); + + } else { + event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); + } } else { EmbedBuilder builder = new EmbedBuilder(); event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder).build()).queue(); From c0d25b7ae192837faa80b741e2eb4892f8a35279 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sat, 23 Nov 2019 03:49:53 -0800 Subject: [PATCH 14/67] Rules MESSAGE_WRITE check --- .../commands/moderation/RulesCommand.java | 206 +++++++++--------- 1 file changed, 109 insertions(+), 97 deletions(-) diff --git a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java index e2e20cc..85ff9fc 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java @@ -28,118 +28,130 @@ public class RulesCommand implements Command { if (event1.getMessage().getMentionedChannels().size() == 1) { TextChannel channel = event1.getMessage().getMentionedChannels().get(0); if (channel.getGuild().getId().equals(event1.getGuild().getId())) { - event1.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Rules") - .setDescription("The channel was successfully set to " + channel.getName() + ". Please send me the rules now.")) - .build()).queue(); - new EventWaiter().newOnMessageEventWaiter(event2 -> { - String message = event2.getMessage().getContentDisplay(); - event2.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Role to assign")) - .setDescription("The rules were successfully set. Please send me the name of the role which the user receives after he accepted the rules.") + if (event.getGuild().getSelfMember().hasPermission(channel, Permission.MESSAGE_WRITE)) { + event1.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Rules") + .setDescription("The channel was successfully set to " + channel.getName() + ". Please send me the rules now.")) .build()).queue(); - new EventWaiter().newOnMessageEventWaiter(event3 -> { - if(event.getMessage().getMentionedRoles().size() == 1) { - Role role = event.getMessage().getMentionedRoles().get(0); - if (event3.getGuild().getSelfMember().canInteract(role)) { - event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("The role has been successfully set to " + role.getName() + ".")) - .build()).queue(); - Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Rules")) - .setDescription(message) - .build()).complete(); - rules.addReaction("✅").queue(); - rules.addReaction("❌").queue(); - event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); + new EventWaiter().newOnMessageEventWaiter(event2 -> { + String message = event2.getMessage().getContentDisplay(); + event2.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Role to assign")) + .setDescription("The rules were successfully set. Please send me the name of the role which the user receives after he accepted the rules.") + .build()).queue(); + new EventWaiter().newOnMessageEventWaiter(event3 -> { + if (event.getMessage().getMentionedRoles().size() == 1) { + Role role = event.getMessage().getMentionedRoles().get(0); + if (event3.getGuild().getSelfMember().canInteract(role)) { + event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("The role has been successfully set to " + role.getName() + ".")) + .build()).queue(); + Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Rules")) + .setDescription(message) + .build()).complete(); + rules.addReaction("✅").queue(); + rules.addReaction("❌").queue(); + event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentRaw(), true).get(0); + if (event3.getGuild().getSelfMember().canInteract(role)) { + event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("The role has been successfully set to " + role.getName() + ".")) + .build()).queue(); + Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Rules")) + .setDescription(message) + .build()).complete(); + rules.addReaction("✅").queue(); + rules.addReaction("❌").queue(); + event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + } } - } else { - Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentRaw(), true).get(0); - if (event3.getGuild().getSelfMember().canInteract(role)) { - event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("The role has been successfully set to " + role.getName() + ".")) - .build()).queue(); - Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Rules")) - .setDescription(message) - .build()).complete(); - rules.addReaction("✅").queue(); - rules.addReaction("❌").queue(); - event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); - } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); - } - } + }, event.getJDA(), event.getAuthor()); }, event.getJDA(), event.getAuthor()); - }, event.getJDA(), event.getAuthor()); + } else { + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, new EmbedBuilder() + .setTitle("Wrong Guild") + .setDescription("The mentioned channel must be on this guid!")) + .build()).queue(); + } } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, new EmbedBuilder() - .setTitle("Wrong Guild") - .setDescription("The mentioned channel must be on this guid!")) + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder) .build()).queue(); } } else { TextChannel channel = event1.getGuild().getTextChannelsByName(event1.getMessage().getContentRaw(), true).get(0); if (channel.getGuild().getId().equals(event1.getGuild().getId())) { - event1.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Rules") - .setDescription("The channel was successfully set to " + channel.getName() + ". Please send me the rules now.")) - .build()).queue(); - new EventWaiter().newOnMessageEventWaiter(event2 -> { - String message = event2.getMessage().getContentDisplay(); - event2.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Role to assign")) - .setDescription("The rules were successfully set. Please send me the name of the role which the user receives after he accepted the rules.") + if (event.getGuild().getSelfMember().hasPermission(channel, Permission.MESSAGE_WRITE)) { + event1.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Rules") + .setDescription("The channel was successfully set to " + channel.getName() + ". Please send me the rules now.")) .build()).queue(); - new EventWaiter().newOnMessageEventWaiter(event3 -> { - if(event.getMessage().getMentionedRoles().size() == 1) { - Role role = event.getMessage().getMentionedRoles().get(0); - if (event3.getGuild().getSelfMember().canInteract(role)) { - event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("The role has been successfully set to " + role.getName() + ".")) - .build()).queue(); - Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Rules")) - .setDescription(message) - .build()).complete(); - rules.addReaction("✅").queue(); - rules.addReaction("❌").queue(); - event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); + new EventWaiter().newOnMessageEventWaiter(event2 -> { + String message = event2.getMessage().getContentDisplay(); + event2.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Role to assign")) + .setDescription("The rules were successfully set. Please send me the name of the role which the user receives after he accepted the rules.") + .build()).queue(); + new EventWaiter().newOnMessageEventWaiter(event3 -> { + if (event.getMessage().getMentionedRoles().size() == 1) { + Role role = event.getMessage().getMentionedRoles().get(0); + if (event3.getGuild().getSelfMember().canInteract(role)) { + event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("The role has been successfully set to " + role.getName() + ".")) + .build()).queue(); + Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Rules")) + .setDescription(message) + .build()).complete(); + rules.addReaction("✅").queue(); + rules.addReaction("❌").queue(); + event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentRaw(), true).get(0); + if (event3.getGuild().getSelfMember().canInteract(role)) { + event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("The role has been successfully set to " + role.getName() + ".")) + .build()).queue(); + Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Rules")) + .setDescription(message) + .build()).complete(); + rules.addReaction("✅").queue(); + rules.addReaction("❌").queue(); + event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + } } - } else { - Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentRaw(), true).get(0); - if (event3.getGuild().getSelfMember().canInteract(role)) { - event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("The role has been successfully set to " + role.getName() + ".")) - .build()).queue(); - Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Rules")) - .setDescription(message) - .build()).complete(); - rules.addReaction("✅").queue(); - rules.addReaction("❌").queue(); - event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); - } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); - } - } + }, event.getJDA(), event.getAuthor()); }, event.getJDA(), event.getAuthor()); - }, event.getJDA(), event.getAuthor()); - } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, new EmbedBuilder() - .setTitle("Wrong Guild") - .setDescription("The mentioned channel must be on this guid!")) - .build()).queue(); + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder) + .build()).queue(); + } + } else { + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, new EmbedBuilder() + .setTitle("Wrong Guild") + .setDescription("The mentioned channel must be on this guid!")) + .build()).queue(); + } } - } }, event.getJDA(), event.getAuthor()); } else { EmbedBuilder builder = new EmbedBuilder(); From 5eb0489d54ccac464f5f73793ecf7104c3a6cb62 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sat, 23 Nov 2019 05:42:18 -0800 Subject: [PATCH 15/67] Not needed --- src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java b/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java index 0d560c4..f503b7d 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java @@ -36,7 +36,6 @@ public class EvalCommand implements Command { engine.put("message", event.getMessage()); engine.put("guild", event.getGuild()); engine.put("channel", event.getChannel()); - engine.put("vc", event.getMember().getVoiceState().getChannel()); engine.put("author", event.getAuthor()); engine.put("member", event.getMember()); engine.put("self", event.getGuild().getSelfMember()); From f4118f29583da9caab8bf3277b8696b782bdaa41 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sun, 24 Nov 2019 14:24:57 +0100 Subject: [PATCH 16/67] fck --- .../java/com/bbn/hadder/commands/moderation/RulesCommand.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java index 85ff9fc..97412fd 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java @@ -58,7 +58,7 @@ public class RulesCommand implements Command { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); } } else { - Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentRaw(), true).get(0); + Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentRaw().replace("h.rules", ""), true).get(0); if (event3.getGuild().getSelfMember().canInteract(role)) { event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() .setTitle("The role has been successfully set to " + role.getName() + ".")) From b81d4821faae62d2f756594692e998e4f867eaed Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sun, 24 Nov 2019 14:25:15 +0100 Subject: [PATCH 17/67] sdf --- .../java/com/bbn/hadder/commands/moderation/RulesCommand.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java index 97412fd..55b8fb9 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java @@ -58,7 +58,7 @@ public class RulesCommand implements Command { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); } } else { - Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentRaw().replace("h.rules", ""), true).get(0); + Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentRaw().replace("h.rules ", ""), true).get(0); if (event3.getGuild().getSelfMember().canInteract(role)) { event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() .setTitle("The role has been successfully set to " + role.getName() + ".")) From c016d1246de5ad89f11911522fc7ecdab240aa6b Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sun, 24 Nov 2019 15:19:44 +0100 Subject: [PATCH 18/67] Very nice fix --- .../commands/moderation/RulesCommand.java | 242 +++++++++--------- 1 file changed, 128 insertions(+), 114 deletions(-) diff --git a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java index 55b8fb9..03fe8e6 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java @@ -22,136 +22,150 @@ public class RulesCommand implements Command { if (event.getGuild().getSelfMember().hasPermission(Permission.MANAGE_ROLES)) { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() .setTitle("Set up rules") - .setDescription("Please specify the channel on which I should send the rules. Your message should look like: #rules.")) + .setDescription("Welcome to the Hadder rules setup. Please mention the channel in which I should send the rules. Your message should look like: #rules or #verify.")) .build()).queue(); new EventWaiter().newOnMessageEventWaiter(event1 -> { if (event1.getMessage().getMentionedChannels().size() == 1) { - TextChannel channel = event1.getMessage().getMentionedChannels().get(0); - if (channel.getGuild().getId().equals(event1.getGuild().getId())) { - if (event.getGuild().getSelfMember().hasPermission(channel, Permission.MESSAGE_WRITE)) { - event1.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Rules") - .setDescription("The channel was successfully set to " + channel.getName() + ". Please send me the rules now.")) - .build()).queue(); - new EventWaiter().newOnMessageEventWaiter(event2 -> { - String message = event2.getMessage().getContentDisplay(); - event2.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Role to assign")) - .setDescription("The rules were successfully set. Please send me the name of the role which the user receives after he accepted the rules.") + try { + TextChannel channel = event1.getMessage().getMentionedChannels().get(0); + if (channel.getGuild().getId().equals(event1.getGuild().getId())) { + if (event.getGuild().getSelfMember().hasPermission(channel, Permission.MESSAGE_WRITE)) { + event1.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Rules") + .setDescription("The channel was successfully set to " + channel.getName() + ". Please send me the rules now.")) .build()).queue(); - new EventWaiter().newOnMessageEventWaiter(event3 -> { - if (event.getMessage().getMentionedRoles().size() == 1) { - Role role = event.getMessage().getMentionedRoles().get(0); - if (event3.getGuild().getSelfMember().canInteract(role)) { - event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("The role has been successfully set to " + role.getName() + ".")) - .build()).queue(); - Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Rules")) - .setDescription(message) - .build()).complete(); - rules.addReaction("✅").queue(); - rules.addReaction("❌").queue(); - event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); + new EventWaiter().newOnMessageEventWaiter(event2 -> { + String message = event2.getMessage().getContentDisplay(); + event2.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Role to assign")) + .setDescription("The rules were successfully set. Please send me the name of the role which the user receives after he accepted the rules.") + .build()).queue(); + new EventWaiter().newOnMessageEventWaiter(event3 -> { + if (event.getMessage().getMentionedRoles().size() == 1) { + Role role = event.getMessage().getMentionedRoles().get(0); + if (event3.getGuild().getSelfMember().canInteract(role)) { + event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("The role has been successfully set to " + role.getName() + ".")) + .build()).queue(); + Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Rules")) + .setDescription(message) + .build()).complete(); + rules.addReaction("✅").queue(); + rules.addReaction("❌").queue(); + event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentStripped(), true).get(0); + if (event3.getGuild().getSelfMember().canInteract(role)) { + event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("The role has been successfully set to " + role.getName() + ".")) + .build()).queue(); + Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Rules")) + .setDescription(message) + .build()).complete(); + rules.addReaction("✅").queue(); + rules.addReaction("❌").queue(); + event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + } } - } else { - Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentRaw().replace("h.rules ", ""), true).get(0); - if (event3.getGuild().getSelfMember().canInteract(role)) { - event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("The role has been successfully set to " + role.getName() + ".")) - .build()).queue(); - Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Rules")) - .setDescription(message) - .build()).complete(); - rules.addReaction("✅").queue(); - rules.addReaction("❌").queue(); - event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); - } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); - } - } + }, event.getJDA(), event.getAuthor()); }, event.getJDA(), event.getAuthor()); - }, event.getJDA(), event.getAuthor()); - } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, new EmbedBuilder() - .setTitle("Wrong Guild") - .setDescription("The mentioned channel must be on this guid!")) - .build()).queue(); - } - } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder) - .build()).queue(); - } - } else { - TextChannel channel = event1.getGuild().getTextChannelsByName(event1.getMessage().getContentRaw(), true).get(0); - if (channel.getGuild().getId().equals(event1.getGuild().getId())) { - if (event.getGuild().getSelfMember().hasPermission(channel, Permission.MESSAGE_WRITE)) { - event1.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Rules") - .setDescription("The channel was successfully set to " + channel.getName() + ". Please send me the rules now.")) - .build()).queue(); - new EventWaiter().newOnMessageEventWaiter(event2 -> { - String message = event2.getMessage().getContentDisplay(); - event2.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Role to assign")) - .setDescription("The rules were successfully set. Please send me the name of the role which the user receives after he accepted the rules.") + } else { + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, new EmbedBuilder() + .setTitle("Wrong Guild") + .setDescription("The mentioned channel must be on this guid!")) .build()).queue(); - new EventWaiter().newOnMessageEventWaiter(event3 -> { - if (event.getMessage().getMentionedRoles().size() == 1) { - Role role = event.getMessage().getMentionedRoles().get(0); - if (event3.getGuild().getSelfMember().canInteract(role)) { - event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("The role has been successfully set to " + role.getName() + ".")) - .build()).queue(); - Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Rules")) - .setDescription(message) - .build()).complete(); - rules.addReaction("✅").queue(); - rules.addReaction("❌").queue(); - event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); - } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); - } - } else { - Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentRaw(), true).get(0); - if (event3.getGuild().getSelfMember().canInteract(role)) { - event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("The role has been successfully set to " + role.getName() + ".")) - .build()).queue(); - Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Rules")) - .setDescription(message) - .build()).complete(); - rules.addReaction("✅").queue(); - rules.addReaction("❌").queue(); - event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); - } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); - } - } - }, event.getJDA(), event.getAuthor()); - }, event.getJDA(), event.getAuthor()); + } } else { EmbedBuilder builder = new EmbedBuilder(); event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder) .build()).queue(); } + } catch (Exception e) { + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR, new EmbedBuilder() + .setTitle("Channel not found") + .setDescription("I can't find the specified channel. Please start the setup again.")) + .build()).queue(); + } + } else { + try { + TextChannel channel = event1.getGuild().getTextChannelsByName(event1.getMessage().getContentRaw(), true).get(0); + if (channel.getGuild().getId().equals(event1.getGuild().getId())) { + if (event.getGuild().getSelfMember().hasPermission(channel, Permission.MESSAGE_WRITE)) { + event1.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Rules") + .setDescription("The channel was successfully set to " + channel.getName() + ". Please send me the rules now.")) + .build()).queue(); + new EventWaiter().newOnMessageEventWaiter(event2 -> { + String message = event2.getMessage().getContentDisplay(); + event2.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Role to assign")) + .setDescription("The rules were successfully set. Please send me the name of the role which the user receives after he accepted the rules.") + .build()).queue(); + new EventWaiter().newOnMessageEventWaiter(event3 -> { + if (event.getMessage().getMentionedRoles().size() == 1) { + Role role = event.getMessage().getMentionedRoles().get(0); + if (event3.getGuild().getSelfMember().canInteract(role)) { + event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("The role has been successfully set to " + role.getName() + ".")) + .build()).queue(); + Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Rules")) + .setDescription(message) + .build()).complete(); + rules.addReaction("✅").queue(); + rules.addReaction("❌").queue(); + event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + } + } else { + Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentStripped(), true).get(0); + if (event3.getGuild().getSelfMember().canInteract(role)) { + event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("The role has been successfully set to " + role.getName() + ".")) + .build()).queue(); + Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Rules")) + .setDescription(message) + .build()).complete(); + rules.addReaction("✅").queue(); + rules.addReaction("❌").queue(); + event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + } + } + }, event.getJDA(), event.getAuthor()); + }, event.getJDA(), event.getAuthor()); + } else { + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, new EmbedBuilder() + .setTitle("Wrong Guild") + .setDescription("The mentioned channel must be on this guid!")) + .build()).queue(); + } } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, new EmbedBuilder() - .setTitle("Wrong Guild") - .setDescription("The mentioned channel must be on this guid!")) + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder) .build()).queue(); } + } catch (Exception e) { + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR, new EmbedBuilder() + .setTitle("Channel not found") + .setDescription("I can't find the specified channel. Please start the setup again.")) + .build()).queue(); } + } }, event.getJDA(), event.getAuthor()); } else { EmbedBuilder builder = new EmbedBuilder(); @@ -165,7 +179,7 @@ public class RulesCommand implements Command { @Override public String[] labels() { - return new String[]{"rules", "rule"}; + return new String[]{"rules", "rule", "setup"}; } @Override From 9bc4d897a50c286bb349220187748faae2efffc8 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sun, 24 Nov 2019 17:17:07 +0100 Subject: [PATCH 19/67] Music Bot :smirk: --- pom.xml | 5 ++ src/main/java/com/bbn/hadder/Hadder.java | 6 +- .../hadder/commands/music/JoinCommand.java | 56 +++++++++++++++++++ .../hadder/utils/AudioPlayerSendHandler.java | 25 +++++++++ 4 files changed, 91 insertions(+), 1 deletion(-) create mode 100644 src/main/java/com/bbn/hadder/commands/music/JoinCommand.java create mode 100644 src/main/java/com/bbn/hadder/utils/AudioPlayerSendHandler.java diff --git a/pom.xml b/pom.xml index fcd89b3..bad6b3a 100644 --- a/pom.xml +++ b/pom.xml @@ -62,6 +62,11 @@ github-api 1.99 + + com.sedmelluq + lavaplayer + 1.3.27 + diff --git a/src/main/java/com/bbn/hadder/Hadder.java b/src/main/java/com/bbn/hadder/Hadder.java index afcf18d..36346e4 100644 --- a/src/main/java/com/bbn/hadder/Hadder.java +++ b/src/main/java/com/bbn/hadder/Hadder.java @@ -7,9 +7,11 @@ import com.bbn.hadder.commands.nsfw.*; import com.bbn.hadder.commands.owner.*; import com.bbn.hadder.commands.fun.*; import com.bbn.hadder.commands.settings.*; +import com.bbn.hadder.commands.music.*; import com.bbn.hadder.core.*; import com.bbn.hadder.listener.*; import net.dv8tion.jda.api.entities.Activity; +import net.dv8tion.jda.api.managers.AudioManager; import net.dv8tion.jda.api.sharding.DefaultShardManagerBuilder; import net.dv8tion.jda.api.sharding.ShardManager; @@ -18,7 +20,8 @@ import java.util.List; public class Hadder { - public static ShardManager shardManager; + public static ShardManager shardManager; + public static AudioManager audioManager; public static void main(String[] args) { startBot(); @@ -72,6 +75,7 @@ public class Hadder { new FeedbackCommand(), new AvatarCommand(), new EvalCommand(), + new JoinCommand(), new LinkCommand()), config, helpCommand); builder.addEventListeners( diff --git a/src/main/java/com/bbn/hadder/commands/music/JoinCommand.java b/src/main/java/com/bbn/hadder/commands/music/JoinCommand.java new file mode 100644 index 0000000..249ec60 --- /dev/null +++ b/src/main/java/com/bbn/hadder/commands/music/JoinCommand.java @@ -0,0 +1,56 @@ +package com.bbn.hadder.commands.music; + +/* + * @author Skidder / GregTCLTK + */ + +import com.bbn.hadder.commands.Command; +import com.bbn.hadder.commands.CommandEvent; +import com.bbn.hadder.utils.AudioPlayerSendHandler; +import com.bbn.hadder.utils.MessageEditor; +import net.dv8tion.jda.api.EmbedBuilder; +import net.dv8tion.jda.api.entities.VoiceChannel; +import net.dv8tion.jda.api.managers.AudioManager; + + +public class JoinCommand implements Command { + + @Override + public void executed(String[] args, CommandEvent event) { + if (event.getMember().getVoiceState().inVoiceChannel()) { + AudioManager audioManager = event.getGuild().getAudioManager(); + if(!audioManager.isAttemptingToConnect()) { + VoiceChannel vc = event.getMember().getVoiceState().getChannel(); + audioManager.setSendingHandler(new AudioPlayerSendHandler()); + audioManager.openAudioConnection(vc); + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder) + .setTitle("Already trying to connect") + .setDescription("Hadder is already trying to connect. Please wait a moment.") + .build()).queue(); + } + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder) + .setTitle("No Voice Channel") + .setDescription("You aren't in a Voice Channel.") + .build()).queue(); + } + } + + @Override + public String[] labels() { + return new String[]{"join"}; + } + + @Override + public String description() { + return "Joins your voice channel"; + } + + @Override + public String usage() { + return ""; + } +} diff --git a/src/main/java/com/bbn/hadder/utils/AudioPlayerSendHandler.java b/src/main/java/com/bbn/hadder/utils/AudioPlayerSendHandler.java new file mode 100644 index 0000000..ff3f483 --- /dev/null +++ b/src/main/java/com/bbn/hadder/utils/AudioPlayerSendHandler.java @@ -0,0 +1,25 @@ +package com.bbn.hadder.utils; + +/* + * @author Skidder / GregTCLTK + */ + +import net.dv8tion.jda.api.audio.AudioSendHandler; + +import javax.annotation.Nullable; +import java.nio.ByteBuffer; + +public class AudioPlayerSendHandler implements AudioSendHandler { + + @Override + public boolean canProvide() { + return false; + } + + @Nullable + @Override + public ByteBuffer provide20MsAudio() { + + return null; + } +} From a53c04905969589f7637f42b91e43738d485a55f Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sun, 24 Nov 2019 18:27:59 +0100 Subject: [PATCH 20/67] Leave and GuildLeave --- src/main/java/com/bbn/hadder/Hadder.java | 5 +- .../hadder/commands/music/JoinCommand.java | 14 ++++-- .../hadder/commands/music/LeaveCommand.java | 46 ++++++++++++++++++ .../commands/owner/GuildLeaveCommand.java | 48 +++++++++++++++++++ 4 files changed, 107 insertions(+), 6 deletions(-) create mode 100644 src/main/java/com/bbn/hadder/commands/music/LeaveCommand.java create mode 100644 src/main/java/com/bbn/hadder/commands/owner/GuildLeaveCommand.java diff --git a/src/main/java/com/bbn/hadder/Hadder.java b/src/main/java/com/bbn/hadder/Hadder.java index 36346e4..dc6640b 100644 --- a/src/main/java/com/bbn/hadder/Hadder.java +++ b/src/main/java/com/bbn/hadder/Hadder.java @@ -11,7 +11,6 @@ import com.bbn.hadder.commands.music.*; import com.bbn.hadder.core.*; import com.bbn.hadder.listener.*; import net.dv8tion.jda.api.entities.Activity; -import net.dv8tion.jda.api.managers.AudioManager; import net.dv8tion.jda.api.sharding.DefaultShardManagerBuilder; import net.dv8tion.jda.api.sharding.ShardManager; @@ -21,7 +20,6 @@ import java.util.List; public class Hadder { public static ShardManager shardManager; - public static AudioManager audioManager; public static void main(String[] args) { startBot(); @@ -76,6 +74,8 @@ public class Hadder { new AvatarCommand(), new EvalCommand(), new JoinCommand(), + new LeaveCommand(), + new GuildLeaveCommand(), new LinkCommand()), config, helpCommand); builder.addEventListeners( @@ -87,7 +87,6 @@ public class Hadder { new LinkListener(rethink), new RulesListener(rethink)); - try { shardManager = builder.build(); } catch (LoginException e) { diff --git a/src/main/java/com/bbn/hadder/commands/music/JoinCommand.java b/src/main/java/com/bbn/hadder/commands/music/JoinCommand.java index 249ec60..a380c7a 100644 --- a/src/main/java/com/bbn/hadder/commands/music/JoinCommand.java +++ b/src/main/java/com/bbn/hadder/commands/music/JoinCommand.java @@ -6,9 +6,9 @@ package com.bbn.hadder.commands.music; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; -import com.bbn.hadder.utils.AudioPlayerSendHandler; import com.bbn.hadder.utils.MessageEditor; import net.dv8tion.jda.api.EmbedBuilder; +import net.dv8tion.jda.api.Permission; import net.dv8tion.jda.api.entities.VoiceChannel; import net.dv8tion.jda.api.managers.AudioManager; @@ -21,8 +21,16 @@ public class JoinCommand implements Command { AudioManager audioManager = event.getGuild().getAudioManager(); if(!audioManager.isAttemptingToConnect()) { VoiceChannel vc = event.getMember().getVoiceState().getChannel(); - audioManager.setSendingHandler(new AudioPlayerSendHandler()); - audioManager.openAudioConnection(vc); + if (vc.getMemberPermissionOverrides().contains(Permission.VOICE_CONNECT)) { + event.getGuild().getAudioManager().openAudioConnection(vc); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Successfully connected")) + .setDescription("I successfully connected to " + vc.getName() + ".") + .build()).queue(); + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + } } else { EmbedBuilder builder = new EmbedBuilder(); event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder) diff --git a/src/main/java/com/bbn/hadder/commands/music/LeaveCommand.java b/src/main/java/com/bbn/hadder/commands/music/LeaveCommand.java new file mode 100644 index 0000000..844344c --- /dev/null +++ b/src/main/java/com/bbn/hadder/commands/music/LeaveCommand.java @@ -0,0 +1,46 @@ +package com.bbn.hadder.commands.music; + +/* + * @author Skidder / GregTCLTK + */ + +import com.bbn.hadder.commands.Command; +import com.bbn.hadder.commands.CommandEvent; +import com.bbn.hadder.utils.MessageEditor; +import net.dv8tion.jda.api.EmbedBuilder; + + +public class LeaveCommand implements Command { + + @Override + public void executed(String[] args, CommandEvent event) { + if (event.getGuild().getSelfMember().getVoiceState().inVoiceChannel()) { + event.getGuild().getAudioManager().closeAudioConnection(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Successfully disconnected") + .setDescription("I successfully disconnected from the Voice Channel")) + .build()).queue(); + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder) + .setTitle("Not connected") + .setDescription("I'm currently in no Voice Channel on this Guild") + .build()).queue(); + } + } + + @Override + public String[] labels() { + return new String[]{"leave"}; + } + + @Override + public String description() { + return "Leaves a voice channel"; + } + + @Override + public String usage() { + return ""; + } +} diff --git a/src/main/java/com/bbn/hadder/commands/owner/GuildLeaveCommand.java b/src/main/java/com/bbn/hadder/commands/owner/GuildLeaveCommand.java new file mode 100644 index 0000000..5d7d652 --- /dev/null +++ b/src/main/java/com/bbn/hadder/commands/owner/GuildLeaveCommand.java @@ -0,0 +1,48 @@ +package com.bbn.hadder.commands.owner; + +/* + * @author Skidder / GregTCLTK + */ + +import com.bbn.hadder.commands.Command; +import com.bbn.hadder.commands.CommandEvent; +import com.bbn.hadder.utils.MessageEditor; +import net.dv8tion.jda.api.EmbedBuilder; +import net.dv8tion.jda.api.entities.Guild; + +public class GuildLeaveCommand implements Command { + + @Override + public void executed(String[] args, CommandEvent event) { + if (event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { + if (args.length > 0) { + Guild guild = event.getJDA().getGuildById(args[0]); + guild.leave().queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + .setTitle("Successfully left") + .setDescription("I successfully left " + guild.getName())) + .build()).queue(); + } else { + event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); + } + } else { + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder).build()).queue(); + } + } + + @Override + public String[] labels() { + return new String[]{"guildleave"}; + } + + @Override + public String description() { + return "Quit from a guild"; + } + + @Override + public String usage() { + return ""; + } +} From 922bc357a417af78f44fdbd81ec4b8385b216ffa Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sun, 24 Nov 2019 19:50:26 +0100 Subject: [PATCH 21/67] Again a fix for the Rules Command --- .../commands/moderation/RulesCommand.java | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java index 03fe8e6..5c7e224 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java @@ -79,14 +79,14 @@ public class RulesCommand implements Command { }, event.getJDA(), event.getAuthor()); }, event.getJDA(), event.getAuthor()); } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, new EmbedBuilder() - .setTitle("Wrong Guild") - .setDescription("The mentioned channel must be on this guid!")) + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder) .build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, new EmbedBuilder() + .setTitle("Wrong Guild") + .setDescription("The mentioned channel must be on this guid!")) .build()).queue(); } } catch (Exception e) { @@ -149,14 +149,14 @@ public class RulesCommand implements Command { }, event.getJDA(), event.getAuthor()); }, event.getJDA(), event.getAuthor()); } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, new EmbedBuilder() - .setTitle("Wrong Guild") - .setDescription("The mentioned channel must be on this guid!")) + EmbedBuilder builder = new EmbedBuilder(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder) .build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, new EmbedBuilder() + .setTitle("Wrong Guild") + .setDescription("The mentioned channel must be on this guid!")) .build()).queue(); } } catch (Exception e) { From 2466606b658ea3e281dc9278f7bb67edfe18ca89 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sun, 24 Nov 2019 19:55:10 +0100 Subject: [PATCH 22/67] ^^ ^^ --- src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java | 2 +- .../java/com/bbn/hadder/commands/owner/ShutdownCommand.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java b/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java index 1278123..29a57c2 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java @@ -25,7 +25,7 @@ public class RebootCommand implements Command { @Override public String[] labels() { - return new String[]{"restart"}; + return new String[]{"restart", "restart"}; } @Override diff --git a/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java b/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java index 142c74f..a602f39 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java @@ -26,7 +26,7 @@ public class ShutdownCommand implements Command { @Override public String[] labels() { - return new String[]{"shutdown"}; + return new String[]{"shutdown", "exit"}; } @Override From a8b73c6b4aba8ed2653cf062b139a60d95ae8075 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sun, 24 Nov 2019 20:03:00 +0100 Subject: [PATCH 23/67] Very important! --- src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java | 1 - src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java b/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java index 29a57c2..7797dd7 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java @@ -12,7 +12,6 @@ import net.dv8tion.jda.api.EmbedBuilder; public class RebootCommand implements Command { - @Override public void executed(String[] args, CommandEvent event) { if (event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { diff --git a/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java b/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java index a602f39..0148563 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java @@ -10,6 +10,7 @@ import com.bbn.hadder.utils.MessageEditor; import net.dv8tion.jda.api.EmbedBuilder; public class ShutdownCommand implements Command { + @Override public void executed(String[] args, CommandEvent event) { if (event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { From e602cd4283c1eb914d7788f4f4dd9e02ba5ae97c Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sun, 24 Nov 2019 21:31:17 +0100 Subject: [PATCH 24/67] Args fix --- .../java/com/bbn/hadder/commands/misc/ScreenShareCommand.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/com/bbn/hadder/commands/misc/ScreenShareCommand.java b/src/main/java/com/bbn/hadder/commands/misc/ScreenShareCommand.java index 9a048a4..54af2a2 100644 --- a/src/main/java/com/bbn/hadder/commands/misc/ScreenShareCommand.java +++ b/src/main/java/com/bbn/hadder/commands/misc/ScreenShareCommand.java @@ -73,6 +73,8 @@ public class ScreenShareCommand implements Command { .setDescription("http://discordapp.com/channels/" + event.getGuild().getId() + "/" + vcs.get(0).getId() + "/")).build()).queue(); } } + } else { + event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); } } From 120f713b8a4982fcbcdf9dcff65f12f293a8b265 Mon Sep 17 00:00:00 2001 From: Skidder Date: Mon, 25 Nov 2019 08:43:42 +0100 Subject: [PATCH 25/67] Update README.md --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index a78d7e1..668a57d 100644 --- a/README.md +++ b/README.md @@ -6,3 +6,4 @@ The Hadder Discord bot is a multi-purpose Discord Bot. [![Build Status](https://github.com/BigBotNetwork/Hadder/workflows/Hadder/badge.svg)](https://github.com/BigBotNetwork/Hadder) +[![Discord Bots](https://top.gg/api/widget/637002314162372639.svg)](https://top.gg/bot/637002314162372639) From 137aeddbdbd4a4fbec1d307fc570d2bbcd0d5a33 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Mon, 25 Nov 2019 08:53:48 +0100 Subject: [PATCH 26/67] New Bot List :) --- src/main/java/com/bbn/hadder/core/Config.java | 8 ++++++++ .../java/com/bbn/hadder/utils/BotList.java | 18 ++++++++++++++++++ 2 files changed, 26 insertions(+) diff --git a/src/main/java/com/bbn/hadder/core/Config.java b/src/main/java/com/bbn/hadder/core/Config.java index 69ca2aa..93729e1 100644 --- a/src/main/java/com/bbn/hadder/core/Config.java +++ b/src/main/java/com/bbn/hadder/core/Config.java @@ -59,6 +59,10 @@ public class Config { .key("DiscordBotList").value(null) .key("DiscordBestBots").value(null) .key("DiscordBoats").value(null) + .key("YetAnotherBotList").value(null) + .value("DiscordExtremeList").value(null) + .value("DiscordBotReviews").value(null) + .value("DiscordBots").value(null) .endObject().endObject().toString(); } @@ -129,4 +133,8 @@ public class Config { public String getDiscordBotReviewsToken() { return config.getJSONObject("Tokens").getString("DiscordBotReviews"); } + + public String getDiscordBotsToken() { + return config.getJSONObject("Tokens").getString("DiscordBots"); + } } diff --git a/src/main/java/com/bbn/hadder/utils/BotList.java b/src/main/java/com/bbn/hadder/utils/BotList.java index a7faa6d..c8e812a 100644 --- a/src/main/java/com/bbn/hadder/utils/BotList.java +++ b/src/main/java/com/bbn/hadder/utils/BotList.java @@ -26,6 +26,7 @@ public class BotList { private static String YetAnotherBotList = "https://yabl.xyz/api/bot/637002314162372639/stats"; private static String DiscordExtremeList = "https://discordextremelist.xyz/api/bot/637002314162372639"; private static String DiscordBotReviews = "https://discordbotreviews.xyz/api/bot/637002314162372639/stats"; + private static String DiscordBots = "https://top.gg/api/bots/637002314162372639/stats"; private Config config; @@ -40,6 +41,8 @@ public class BotList { json.put("guildCount", Hadder.shardManager.getGuilds().size()); json.put("guilds", Hadder.shardManager.getGuilds().size()); json.put("users", Hadder.shardManager.getUsers().size()); + json.put("shard_count", Hadder.shardManager.getShards().size()); + json.put("shards", Hadder.shardManager.getShards()); RequestBody body = RequestBody.create(MediaType.parse("application/json"), json.toString()); @@ -162,6 +165,21 @@ public class BotList { } catch (IOException e) { e.printStackTrace(); } + + // Discord Bots + + Request discordbots = new Request.Builder() + .url(DiscordBots) + .post(body) + .addHeader("Authorization", config.getDiscordBotsToken()) + .build(); + + try { + new OkHttpClient().newCall(discordbots).execute().close(); + System.out.println("Successfully posted count to Discord Bots!"); + } catch (IOException e) { + e.printStackTrace(); + } } } From 0ef3b96ae3e162da7a73520669661203077c1a4e Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Mon, 25 Nov 2019 09:23:23 +0100 Subject: [PATCH 27/67] f --- src/main/java/com/bbn/hadder/utils/BotList.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/main/java/com/bbn/hadder/utils/BotList.java b/src/main/java/com/bbn/hadder/utils/BotList.java index c8e812a..042cd47 100644 --- a/src/main/java/com/bbn/hadder/utils/BotList.java +++ b/src/main/java/com/bbn/hadder/utils/BotList.java @@ -42,7 +42,6 @@ public class BotList { json.put("guilds", Hadder.shardManager.getGuilds().size()); json.put("users", Hadder.shardManager.getUsers().size()); json.put("shard_count", Hadder.shardManager.getShards().size()); - json.put("shards", Hadder.shardManager.getShards()); RequestBody body = RequestBody.create(MediaType.parse("application/json"), json.toString()); From f0b0491afc86d222dec0f12f3193c112b29be97b Mon Sep 17 00:00:00 2001 From: Skidder Date: Mon, 25 Nov 2019 12:22:57 +0100 Subject: [PATCH 28/67] B --- src/main/java/com/bbn/hadder/utils/BotList.java | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/src/main/java/com/bbn/hadder/utils/BotList.java b/src/main/java/com/bbn/hadder/utils/BotList.java index 042cd47..bcfe1ef 100644 --- a/src/main/java/com/bbn/hadder/utils/BotList.java +++ b/src/main/java/com/bbn/hadder/utils/BotList.java @@ -167,18 +167,6 @@ public class BotList { // Discord Bots - Request discordbots = new Request.Builder() - .url(DiscordBots) - .post(body) - .addHeader("Authorization", config.getDiscordBotsToken()) - .build(); - - try { - new OkHttpClient().newCall(discordbots).execute().close(); - System.out.println("Successfully posted count to Discord Bots!"); - } catch (IOException e) { - e.printStackTrace(); - } } } From e07a8213020d9cb067001a9ab4b335cbb9543a8c Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Mon, 25 Nov 2019 14:14:46 +0100 Subject: [PATCH 29/67] This should work :thinking: --- src/main/java/com/bbn/hadder/utils/BotList.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/main/java/com/bbn/hadder/utils/BotList.java b/src/main/java/com/bbn/hadder/utils/BotList.java index bcfe1ef..042cd47 100644 --- a/src/main/java/com/bbn/hadder/utils/BotList.java +++ b/src/main/java/com/bbn/hadder/utils/BotList.java @@ -167,6 +167,18 @@ public class BotList { // Discord Bots + Request discordbots = new Request.Builder() + .url(DiscordBots) + .post(body) + .addHeader("Authorization", config.getDiscordBotsToken()) + .build(); + + try { + new OkHttpClient().newCall(discordbots).execute().close(); + System.out.println("Successfully posted count to Discord Bots!"); + } catch (IOException e) { + e.printStackTrace(); + } } } From de5df838660281919583162b8cd42e245dc6ed43 Mon Sep 17 00:00:00 2001 From: Skidder Date: Mon, 25 Nov 2019 19:06:43 +0100 Subject: [PATCH 30/67] Create .gitattributes --- .gitattributes | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 .gitattributes diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..3c8ecfa --- /dev/null +++ b/.gitattributes @@ -0,0 +1,28 @@ +# Java sources +*.java text diff=java +*.gradle text diff=java +*.gradle.kts text diff=java + +# These files are text and should be normalized (Convert crlf => lf) +*.css text diff=css +*.df text +*.htm text diff=html +*.html text diff=html +*.js text +*.jsp text +*.jspf text +*.jspx text +*.properties text +*.tld text +*.tag text +*.tagx text +*.xml text + +# These files are binary and should be left untouched +# (binary is a macro for -text -diff) +*.class binary +*.dll binary +*.ear binary +*.jar binary +*.so binary +*.war binary From b07ce74badb30f0db091656a2d650f9cc235f376 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Mon, 25 Nov 2019 20:43:17 +0100 Subject: [PATCH 31/67] Some nice stuff --- src/main/java/com/bbn/hadder/Hadder.java | 1 + .../bbn/hadder/commands/fun/GifCommand.java | 4 +- .../bbn/hadder/commands/fun/MemeCommand.java | 60 +++++++++++++++++++ .../bbn/hadder/commands/nsfw/AnalCommand.java | 1 - .../hadder/commands/nsfw/BlowjobCommand.java | 1 - .../hadder/commands/nsfw/BoobsCommand.java | 1 - .../bbn/hadder/commands/nsfw/CumCommand.java | 1 - .../hadder/commands/nsfw/EroticCommand.java | 1 - .../bbn/hadder/commands/nsfw/FeetCommand.java | 1 - .../bbn/hadder/commands/nsfw/PornCommand.java | 1 - .../hadder/commands/nsfw/PussyCommand.java | 1 - .../hadder/commands/nsfw/TransCommand.java | 1 - .../com/bbn/hadder/utils/MessageEditor.java | 11 ++-- 13 files changed, 69 insertions(+), 16 deletions(-) create mode 100644 src/main/java/com/bbn/hadder/commands/fun/MemeCommand.java diff --git a/src/main/java/com/bbn/hadder/Hadder.java b/src/main/java/com/bbn/hadder/Hadder.java index dc6640b..b525a64 100644 --- a/src/main/java/com/bbn/hadder/Hadder.java +++ b/src/main/java/com/bbn/hadder/Hadder.java @@ -76,6 +76,7 @@ public class Hadder { new JoinCommand(), new LeaveCommand(), new GuildLeaveCommand(), + new MemeCommand(), new LinkCommand()), config, helpCommand); builder.addEventListeners( diff --git a/src/main/java/com/bbn/hadder/commands/fun/GifCommand.java b/src/main/java/com/bbn/hadder/commands/fun/GifCommand.java index 8e52917..f051bb0 100644 --- a/src/main/java/com/bbn/hadder/commands/fun/GifCommand.java +++ b/src/main/java/com/bbn/hadder/commands/fun/GifCommand.java @@ -27,11 +27,11 @@ public class GifCommand implements Command { query = new StringBuilder(query.substring(0, query.length() - 1)); } - OkHttpClient caller = new OkHttpClient(); + OkHttpClient client = new OkHttpClient(); Request request = new Request.Builder().url("http://api.giphy.com/v1/gifs/search?q=" + query + "&api_key=" + event.getConfig().getGiphyToken()).build(); try { Random rand = new Random(); - Response response = caller.newCall(request).execute(); + Response response = client.newCall(request).execute(); JSONObject json = new JSONObject(response.body().string()); JSONArray array = json.getJSONArray("data"); int gifIndex = rand.nextInt(array.length()); diff --git a/src/main/java/com/bbn/hadder/commands/fun/MemeCommand.java b/src/main/java/com/bbn/hadder/commands/fun/MemeCommand.java new file mode 100644 index 0000000..ca311c4 --- /dev/null +++ b/src/main/java/com/bbn/hadder/commands/fun/MemeCommand.java @@ -0,0 +1,60 @@ +package com.bbn.hadder.commands.fun; + +/* + * @author Skidder / GregTCLTK + */ + +import com.bbn.hadder.commands.Command; +import com.bbn.hadder.commands.CommandEvent; +import com.bbn.hadder.utils.MessageEditor; +import net.dv8tion.jda.api.EmbedBuilder; +import okhttp3.OkHttpClient; +import okhttp3.Request; +import okhttp3.Response; +import org.json.JSONObject; + +import java.awt.*; +import java.io.IOException; +import java.time.Instant; + +public class MemeCommand implements Command { + + @Override + public void executed(String[] args, CommandEvent event) { + + OkHttpClient client = new OkHttpClient(); + Request request = new Request.Builder().url("https://some-random-api.ml/meme").build(); + + try { + Response response = client.newCall(request).execute(); + JSONObject json = new JSONObject(response.body().string()); + String url = json.get("image").toString(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder()) + .setTitle("Your random meme") + .setImage(url) + .build()).queue(); + } catch (IOException e) { + e.printStackTrace(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR, new EmbedBuilder()) + .setTitle("Error!") + .setDescription("The request to the meme API could not be processed. Please try it again later.") + .setColor(Color.RED) + .build()).queue(); + } + } + + @Override + public String[] labels() { + return new String[]{"meme"}; + } + + @Override + public String description() { + return "Sends you a random meme."; + } + + @Override + public String usage() { + return ""; + } +} diff --git a/src/main/java/com/bbn/hadder/commands/nsfw/AnalCommand.java b/src/main/java/com/bbn/hadder/commands/nsfw/AnalCommand.java index c73850e..10faa26 100644 --- a/src/main/java/com/bbn/hadder/commands/nsfw/AnalCommand.java +++ b/src/main/java/com/bbn/hadder/commands/nsfw/AnalCommand.java @@ -33,7 +33,6 @@ public class AnalCommand implements Command { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) .setAuthor("GIF not showing? Click here", url.replace("\"}", "")) .setImage(url.replace("\"}", "")) - .setTimestamp(Instant.now()) .setFooter("Anal") .build()).queue(); diff --git a/src/main/java/com/bbn/hadder/commands/nsfw/BlowjobCommand.java b/src/main/java/com/bbn/hadder/commands/nsfw/BlowjobCommand.java index 79f3219..55fc58c 100644 --- a/src/main/java/com/bbn/hadder/commands/nsfw/BlowjobCommand.java +++ b/src/main/java/com/bbn/hadder/commands/nsfw/BlowjobCommand.java @@ -33,7 +33,6 @@ public class BlowjobCommand implements Command { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) .setAuthor("Image not showing? Click here", url.replace("\"}", "")) .setImage(url.replace("\"}", "")) - .setTimestamp(Instant.now()) .setFooter("Blowjob") .build()).queue(); diff --git a/src/main/java/com/bbn/hadder/commands/nsfw/BoobsCommand.java b/src/main/java/com/bbn/hadder/commands/nsfw/BoobsCommand.java index 76ae669..46e9f66 100644 --- a/src/main/java/com/bbn/hadder/commands/nsfw/BoobsCommand.java +++ b/src/main/java/com/bbn/hadder/commands/nsfw/BoobsCommand.java @@ -33,7 +33,6 @@ public class BoobsCommand implements Command { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) .setAuthor("GIF not showing? Click here", url.replace("\"}", "")) .setImage(url.replace("\"}", "")) - .setTimestamp(Instant.now()) .setFooter("Boobs") .build()).queue(); diff --git a/src/main/java/com/bbn/hadder/commands/nsfw/CumCommand.java b/src/main/java/com/bbn/hadder/commands/nsfw/CumCommand.java index 6999fe2..2cf9b14 100644 --- a/src/main/java/com/bbn/hadder/commands/nsfw/CumCommand.java +++ b/src/main/java/com/bbn/hadder/commands/nsfw/CumCommand.java @@ -33,7 +33,6 @@ public class CumCommand implements Command { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) .setAuthor("GIF not showing? Click here", url.replace("\"}", "")) .setImage(url.replace("\"}", "")) - .setTimestamp(Instant.now()) .setFooter("Cum") .build()).queue(); diff --git a/src/main/java/com/bbn/hadder/commands/nsfw/EroticCommand.java b/src/main/java/com/bbn/hadder/commands/nsfw/EroticCommand.java index fb92f53..3500272 100644 --- a/src/main/java/com/bbn/hadder/commands/nsfw/EroticCommand.java +++ b/src/main/java/com/bbn/hadder/commands/nsfw/EroticCommand.java @@ -33,7 +33,6 @@ public class EroticCommand implements Command { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) .setAuthor("Image not showing? Click here", url.replace("\"}", "")) .setImage(url.replace("\"}", "")) - .setTimestamp(Instant.now()) .setFooter("Erotic") .build()).queue(); diff --git a/src/main/java/com/bbn/hadder/commands/nsfw/FeetCommand.java b/src/main/java/com/bbn/hadder/commands/nsfw/FeetCommand.java index 27cf07e..197abda 100644 --- a/src/main/java/com/bbn/hadder/commands/nsfw/FeetCommand.java +++ b/src/main/java/com/bbn/hadder/commands/nsfw/FeetCommand.java @@ -33,7 +33,6 @@ public class FeetCommand implements Command { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) .setAuthor("Image not showing? Click here", url.replace("\"}", "")) .setImage(url.replace("\"}", "")) - .setTimestamp(Instant.now()) .setFooter("Feet") .build()).queue(); diff --git a/src/main/java/com/bbn/hadder/commands/nsfw/PornCommand.java b/src/main/java/com/bbn/hadder/commands/nsfw/PornCommand.java index 98e21ae..7708da1 100644 --- a/src/main/java/com/bbn/hadder/commands/nsfw/PornCommand.java +++ b/src/main/java/com/bbn/hadder/commands/nsfw/PornCommand.java @@ -33,7 +33,6 @@ public class PornCommand implements Command { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) .setAuthor("GIF not showing? Click here", url.replace("\"}", "")) .setImage(url.replace("\"}", "")) - .setTimestamp(Instant.now()) .setFooter("Porn") .build()).queue(); diff --git a/src/main/java/com/bbn/hadder/commands/nsfw/PussyCommand.java b/src/main/java/com/bbn/hadder/commands/nsfw/PussyCommand.java index fd67018..c595ab3 100644 --- a/src/main/java/com/bbn/hadder/commands/nsfw/PussyCommand.java +++ b/src/main/java/com/bbn/hadder/commands/nsfw/PussyCommand.java @@ -33,7 +33,6 @@ public class PussyCommand implements Command { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) .setAuthor("GIF not showing? Click here", url.replace("\"}", "")) .setImage(url.replace("\"}", "")) - .setTimestamp(Instant.now()) .setFooter("Pussy") .build()).queue(); diff --git a/src/main/java/com/bbn/hadder/commands/nsfw/TransCommand.java b/src/main/java/com/bbn/hadder/commands/nsfw/TransCommand.java index 2cd6a59..f0f4bed 100644 --- a/src/main/java/com/bbn/hadder/commands/nsfw/TransCommand.java +++ b/src/main/java/com/bbn/hadder/commands/nsfw/TransCommand.java @@ -33,7 +33,6 @@ public class TransCommand implements Command { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) .setAuthor("Image not showing? Click here", url.replace("\"}", "")) .setImage(url.replace("\"}", "")) - .setTimestamp(Instant.now()) .setFooter("Trans") .build()).queue(); diff --git a/src/main/java/com/bbn/hadder/utils/MessageEditor.java b/src/main/java/com/bbn/hadder/utils/MessageEditor.java index 4ab9ee7..3a2e33c 100644 --- a/src/main/java/com/bbn/hadder/utils/MessageEditor.java +++ b/src/main/java/com/bbn/hadder/utils/MessageEditor.java @@ -3,29 +3,30 @@ package com.bbn.hadder.utils; import net.dv8tion.jda.api.EmbedBuilder; import java.awt.*; +import java.time.Instant; public class MessageEditor { public EmbedBuilder setDefaultSettings(MessageType type, EmbedBuilder embedBuilder) { switch (type) { case INFO: - embedBuilder.setColor(new Color(47,94,105)); + embedBuilder.setColor(new Color(47,94,105)).setTimestamp(Instant.now()); break; case ERROR: - embedBuilder.setColor(Color.RED); + embedBuilder.setColor(Color.RED).setTimestamp(Instant.now()); break; case WARNING: - embedBuilder.setColor(Color.ORANGE); + embedBuilder.setColor(Color.ORANGE).setTimestamp(Instant.now()); break; case NO_PERMISSION: - embedBuilder.setTitle("⛔ No Permission ⛔").setDescription("You are not authorized to execute this command!").setColor(Color.RED); + embedBuilder.setTitle("⛔ No Permission ⛔").setDescription("You are not authorized to execute this command!").setColor(Color.RED).setTimestamp(Instant.now()); break; case NO_SELF_PERMISSION: - embedBuilder.setTitle("⛔ No Permission ⛔").setDescription("Unfortunately, I do not have the required rights to perform this action").setColor(Color.RED); + embedBuilder.setTitle("⛔ No Permission ⛔").setDescription("Unfortunately, I do not have the required rights to perform this action").setColor(Color.RED).setTimestamp(Instant.now()); break; } return embedBuilder; From db8d410aabe45e8a9abff49d8ce4efd6e99233b2 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 26 Nov 2019 13:45:01 +0000 Subject: [PATCH 32/67] Bump JDA from 4.0.0_62 to 4.0.0_64 Bumps JDA from 4.0.0_62 to 4.0.0_64. Signed-off-by: dependabot-preview[bot] --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index bad6b3a..dc4b6dd 100644 --- a/pom.xml +++ b/pom.xml @@ -25,7 +25,7 @@ net.dv8tion JDA - 4.0.0_62 + 4.0.0_64 org.json From fd8eee3041b09bde7c040fb8f88931fae92f9d0b Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Tue, 26 Nov 2019 13:45:34 +0000 Subject: [PATCH 33/67] Bump lavaplayer from 1.3.27 to 1.3.29 Bumps lavaplayer from 1.3.27 to 1.3.29. Signed-off-by: dependabot-preview[bot] --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index bad6b3a..7c46207 100644 --- a/pom.xml +++ b/pom.xml @@ -65,7 +65,7 @@ com.sedmelluq lavaplayer - 1.3.27 + 1.3.29 From eb83989d458cc56bdd6642280faf8f2fb4e067d9 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 27 Nov 2019 13:43:04 +0000 Subject: [PATCH 34/67] Bump github-api from 1.99 to 1.100 Bumps github-api from 1.99 to 1.100. Signed-off-by: dependabot-preview[bot] --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index bad6b3a..228e6c5 100644 --- a/pom.xml +++ b/pom.xml @@ -60,7 +60,7 @@ org.kohsuke github-api - 1.99 + 1.100 com.sedmelluq From c15c720ea0e58d57d704b536fa512102a5a925ae Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 27 Nov 2019 13:43:28 +0000 Subject: [PATCH 35/67] Bump JDA from 4.0.0_62 to 4.0.0_66 Bumps JDA from 4.0.0_62 to 4.0.0_66. Signed-off-by: dependabot-preview[bot] --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index bad6b3a..93404ed 100644 --- a/pom.xml +++ b/pom.xml @@ -25,7 +25,7 @@ net.dv8tion JDA - 4.0.0_62 + 4.0.0_66 org.json From 2cd4e00d03a5a04a3f98f72b90e8025296a48c7a Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Wed, 27 Nov 2019 13:43:58 +0000 Subject: [PATCH 36/67] Bump lavaplayer from 1.3.27 to 1.3.29 Bumps lavaplayer from 1.3.27 to 1.3.29. Signed-off-by: dependabot-preview[bot] --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index bad6b3a..7c46207 100644 --- a/pom.xml +++ b/pom.xml @@ -65,7 +65,7 @@ com.sedmelluq lavaplayer - 1.3.27 + 1.3.29 From de1546277cd0698b52a74d62cdc780568880905c Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Wed, 27 Nov 2019 18:36:57 +0100 Subject: [PATCH 37/67] A real config file --- example-config.json | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 example-config.json diff --git a/example-config.json b/example-config.json new file mode 100644 index 0000000..b56984e --- /dev/null +++ b/example-config.json @@ -0,0 +1,23 @@ +{ + "Owners": + [], + "Database":{"IP":"", + "Port":6775, + "DBName":"", + "Username":"", + "Password":""}, + "Tokens":{ + "BotToken":"", + "Giphy":"", + "GitHub": "", + "MythicalBotList":"", + "BotsForDiscord":"", + "DiscordBotList":"", + "DiscordBestBots":"", + "DiscordBoats": "", + "YetAnotherBotList": "", + "DiscordExtremeList": "", + "DiscordBotReviews": "", + "DiscordBots": "" + } +} From dc6cecb91dd540bf606e7fbbf0dc18ebf34cd581 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Thu, 28 Nov 2019 13:49:17 +0000 Subject: [PATCH 38/67] Bump github-api from 1.100 to 1.101 Bumps github-api from 1.100 to 1.101. Signed-off-by: dependabot-preview[bot] --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index bdd6db9..1385582 100644 --- a/pom.xml +++ b/pom.xml @@ -60,7 +60,7 @@ org.kohsuke github-api - 1.100 + 1.101 com.sedmelluq From b077f4f5d84220642c77fb31edcf5d817696b2f4 Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Fri, 29 Nov 2019 13:49:02 +0000 Subject: [PATCH 39/67] Bump JDA from 4.0.0_66 to 4.0.0_67 Bumps JDA from 4.0.0_66 to 4.0.0_67. Signed-off-by: dependabot-preview[bot] --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 1385582..d448043 100644 --- a/pom.xml +++ b/pom.xml @@ -25,7 +25,7 @@ net.dv8tion JDA - 4.0.0_66 + 4.0.0_67 org.json From 7455dd21627cab52d15cba9491b3117430be6a46 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Fri, 29 Nov 2019 18:01:18 +0100 Subject: [PATCH 40/67] Error Fix --- src/main/java/com/bbn/hadder/commands/music/JoinCommand.java | 5 ----- 1 file changed, 5 deletions(-) diff --git a/src/main/java/com/bbn/hadder/commands/music/JoinCommand.java b/src/main/java/com/bbn/hadder/commands/music/JoinCommand.java index a380c7a..ab23dc0 100644 --- a/src/main/java/com/bbn/hadder/commands/music/JoinCommand.java +++ b/src/main/java/com/bbn/hadder/commands/music/JoinCommand.java @@ -21,16 +21,11 @@ public class JoinCommand implements Command { AudioManager audioManager = event.getGuild().getAudioManager(); if(!audioManager.isAttemptingToConnect()) { VoiceChannel vc = event.getMember().getVoiceState().getChannel(); - if (vc.getMemberPermissionOverrides().contains(Permission.VOICE_CONNECT)) { event.getGuild().getAudioManager().openAudioConnection(vc); event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() .setTitle("Successfully connected")) .setDescription("I successfully connected to " + vc.getName() + ".") .build()).queue(); - } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); - } } else { EmbedBuilder builder = new EmbedBuilder(); event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder) From b4e54c4b3018c894ee381e5d640383b6871b9b96 Mon Sep 17 00:00:00 2001 From: Skidder Date: Fri, 29 Nov 2019 18:13:29 +0100 Subject: [PATCH 41/67] Update issue templates --- .github/ISSUE_TEMPLATE/bug_report.md | 34 ++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/bug_report.md diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 0000000..8084d83 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,34 @@ +--- +name: Bug report +about: Create a report to help us improve +title: Bug report +labels: bug +assignees: '' + +--- + +**Describe the bug** +A clear and concise description of what the bug is. + +**To Reproduce** +Steps to reproduce the behavior: +1. Go to '...' +2. Click on '....' +3. Scroll down to '....' +4. See error + +**Expected behavior** +A clear and concise description of what you expected to happen. + +**Screenshots** +If applicable, add screenshots to help explain your problem. + +**Desktop (please complete the following information):** + - Discord version: [e.g. Discord PTB] + +**Smartphone (please complete the following information):** + - Device: [e.g. iPhone6] + - OS: [e.g. iOS8.1] + +**Additional context** +Add any other context about the problem here. From 79abf99b15ec5f896537fb22f16b097ae5da01e0 Mon Sep 17 00:00:00 2001 From: Hax Date: Fri, 29 Nov 2019 20:30:35 +0100 Subject: [PATCH 42/67] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 668a57d..a1f88e3 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Hadder -The Hadder Discord bot is a multi-purpose Discord Bot. +The Hadder Discord Bot is a multi-purpose Discord Bot. [![Build Status](https://github.com/BigBotNetwork/Hadder/workflows/Hadder/badge.svg)](https://github.com/BigBotNetwork/Hadder) From a9ab1acdbc772c8df34d181fa3a7ee0318671761 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Fri, 29 Nov 2019 20:47:17 +0100 Subject: [PATCH 43/67] More Eval stuff --- src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java b/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java index f503b7d..aad0377 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java @@ -4,6 +4,7 @@ package com.bbn.hadder.commands.owner; * @author Skidder / GregTCLTK */ +import com.bbn.hadder.Hadder; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; @@ -31,6 +32,9 @@ public class EvalCommand implements Command { ex.printStackTrace(); } + engine.put("msg", event.getMessage()); + engine.put("shradmanager", Hadder.shardManager); + engine.put("rethink", event.getRethink()); engine.put("event", event); engine.put("jda", event.getJDA()); engine.put("message", event.getMessage()); From 133ef8791cdc5f31ef2a889112cc2af9c5cc169d Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sat, 30 Nov 2019 12:42:50 +0100 Subject: [PATCH 44/67] I would call it "better code" --- pom.xml | 10 +- .../hadder/commands/fun/AvatarCommand.java | 13 ++- .../bbn/hadder/commands/fun/GifCommand.java | 4 +- .../bbn/hadder/commands/fun/MemeCommand.java | 6 +- .../hadder/commands/general/HelpCommand.java | 4 +- .../hadder/commands/general/PingCommand.java | 4 +- .../hadder/commands/misc/EqualsCommand.java | 21 ++--- .../hadder/commands/misc/FeedbackCommand.java | 13 ++- .../hadder/commands/misc/GitHubCommand.java | 17 ++-- .../hadder/commands/misc/InviteCommand.java | 4 +- .../commands/misc/ScreenShareCommand.java | 30 +++--- .../commands/moderation/BanCommand.java | 28 ++---- .../commands/moderation/ClearCommand.java | 13 +-- .../moderation/GuildPrefixCommand.java | 12 +-- .../commands/moderation/KickCommand.java | 25 ++--- .../commands/moderation/LinkCommand.java | 24 ++--- .../commands/moderation/NickCommand.java | 25 ++--- .../commands/moderation/RoleCommand.java | 24 ++--- .../commands/moderation/RulesCommand.java | 93 +++++++++---------- .../hadder/commands/music/JoinCommand.java | 12 +-- .../hadder/commands/music/LeaveCommand.java | 9 +- .../bbn/hadder/commands/nsfw/AnalCommand.java | 8 +- .../hadder/commands/nsfw/BlowjobCommand.java | 8 +- .../hadder/commands/nsfw/BoobsCommand.java | 7 +- .../bbn/hadder/commands/nsfw/CumCommand.java | 7 +- .../hadder/commands/nsfw/EroticCommand.java | 8 +- .../bbn/hadder/commands/nsfw/FeetCommand.java | 8 +- .../bbn/hadder/commands/nsfw/PornCommand.java | 8 +- .../hadder/commands/nsfw/PussyCommand.java | 8 +- .../hadder/commands/nsfw/TransCommand.java | 8 +- .../hadder/commands/owner/EvalCommand.java | 5 +- .../commands/owner/GuildLeaveCommand.java | 8 +- .../hadder/commands/owner/RebootCommand.java | 4 +- .../commands/owner/ShutdownCommand.java | 7 +- .../commands/settings/PrefixCommand.java | 4 +- .../bbn/hadder/listener/GuildListener.java | 4 +- .../com/bbn/hadder/listener/LinkListener.java | 8 +- .../bbn/hadder/listener/MentionListener.java | 2 +- .../listener/PrivateMessageListener.java | 4 +- .../com/bbn/hadder/utils/MessageEditor.java | 17 ++-- 40 files changed, 193 insertions(+), 331 deletions(-) diff --git a/pom.xml b/pom.xml index d448043..ea1142c 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ Hadder Hadder - 0.7.1-ALPHA + 0.8-ALPHA Hadder @@ -136,14 +136,6 @@ 13 - - org.apache.maven.plugins - maven-compiler-plugin - - 12 - 12 - - maven-assembly-plugin diff --git a/src/main/java/com/bbn/hadder/commands/fun/AvatarCommand.java b/src/main/java/com/bbn/hadder/commands/fun/AvatarCommand.java index e45b949..fab81a9 100644 --- a/src/main/java/com/bbn/hadder/commands/fun/AvatarCommand.java +++ b/src/main/java/com/bbn/hadder/commands/fun/AvatarCommand.java @@ -7,7 +7,6 @@ package com.bbn.hadder.commands.fun; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import net.dv8tion.jda.api.entities.Member; public class AvatarCommand implements Command { @@ -16,22 +15,22 @@ public class AvatarCommand implements Command { public void executed(String[] args, CommandEvent event) { if (args.length == 0) { Member member = event.getMember(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Avatar of " + member.getUser().getAsTag())) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Avatar of " + member.getUser().getAsTag()) .setImage(member.getUser().getAvatarUrl()) .setFooter(member.getUser().getAsTag()) .build()).queue(); } else if (event.getMessage().getMentionedMembers().size() == 1) { Member member = event.getMessage().getMentionedMembers().get(0); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Avatar of " + member.getUser().getAsTag())) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Avatar of " + member.getUser().getAsTag()) .setImage(member.getUser().getAvatarUrl()) .setFooter(member.getUser().getAsTag()) .build()).queue(); } else if (args[0].length() == 18){ Member member = event.getGuild().getMemberById(args[0]); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Avatar of " + member.getUser().getAsTag())) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Avatar of " + member.getUser().getAsTag()) .setImage(member.getUser().getAvatarUrl()) .setFooter(member.getUser().getAsTag()) .build()).queue(); diff --git a/src/main/java/com/bbn/hadder/commands/fun/GifCommand.java b/src/main/java/com/bbn/hadder/commands/fun/GifCommand.java index f051bb0..7d7bdec 100644 --- a/src/main/java/com/bbn/hadder/commands/fun/GifCommand.java +++ b/src/main/java/com/bbn/hadder/commands/fun/GifCommand.java @@ -7,7 +7,6 @@ package com.bbn.hadder.commands.fun; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; @@ -38,8 +37,7 @@ public class GifCommand implements Command { String url = array.getJSONObject(gifIndex).get("url").toString(); event.getTextChannel().sendMessage(url).queue(); } catch (Exception e) { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR, builder).setTitle("Error").setDescription("Please try again with another term.").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR).setTitle("Error").setDescription("Please try again with another term.").build()).queue(); } } else { event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); diff --git a/src/main/java/com/bbn/hadder/commands/fun/MemeCommand.java b/src/main/java/com/bbn/hadder/commands/fun/MemeCommand.java index ca311c4..3accd6c 100644 --- a/src/main/java/com/bbn/hadder/commands/fun/MemeCommand.java +++ b/src/main/java/com/bbn/hadder/commands/fun/MemeCommand.java @@ -7,7 +7,6 @@ package com.bbn.hadder.commands.fun; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; @@ -15,7 +14,6 @@ import org.json.JSONObject; import java.awt.*; import java.io.IOException; -import java.time.Instant; public class MemeCommand implements Command { @@ -29,13 +27,13 @@ public class MemeCommand implements Command { Response response = client.newCall(request).execute(); JSONObject json = new JSONObject(response.body().string()); String url = json.get("image").toString(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder()) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle("Your random meme") .setImage(url) .build()).queue(); } catch (IOException e) { e.printStackTrace(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR, new EmbedBuilder()) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR) .setTitle("Error!") .setDescription("The request to the meme API could not be processed. Please try it again later.") .setColor(Color.RED) diff --git a/src/main/java/com/bbn/hadder/commands/general/HelpCommand.java b/src/main/java/com/bbn/hadder/commands/general/HelpCommand.java index 45d3b0e..f86dd29 100644 --- a/src/main/java/com/bbn/hadder/commands/general/HelpCommand.java +++ b/src/main/java/com/bbn/hadder/commands/general/HelpCommand.java @@ -42,7 +42,7 @@ public class HelpCommand implements Command { eb.addField(ps[ps.length - 1], sb.toString(), false); } } - new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, eb); + new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO); event.getChannel().sendMessage(eb.build()).queue(); } else { for (Command cmd : event.getCommandHandler().getCommandList()) { @@ -65,7 +65,7 @@ public class HelpCommand implements Command { String name = cmd.labels()[0]; eb.setDescription(cmd.description()).setTitle(name.replaceFirst(String.valueOf(name.charAt(0)), String.valueOf(name.charAt(0)).toUpperCase())); eb.addField("Usage", rethink.getUserPrefix(author.getId()) + cmd.labels()[0] + " " + cmd.usage(), false); - new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, eb); + new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO); channel.sendMessage(eb.build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/general/PingCommand.java b/src/main/java/com/bbn/hadder/commands/general/PingCommand.java index 29c3b3b..536975a 100644 --- a/src/main/java/com/bbn/hadder/commands/general/PingCommand.java +++ b/src/main/java/com/bbn/hadder/commands/general/PingCommand.java @@ -7,14 +7,12 @@ package com.bbn.hadder.commands.general; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; public class PingCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { - EmbedBuilder builder = new EmbedBuilder(); - event.getJDA().getRestPing().queue(ping -> event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setTitle("Ping").setDescription(String.valueOf(ping)).build()).queue()); + event.getJDA().getRestPing().queue(ping -> event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).setTitle("Ping").setDescription(String.valueOf(ping)).build()).queue()); } @Override diff --git a/src/main/java/com/bbn/hadder/commands/misc/EqualsCommand.java b/src/main/java/com/bbn/hadder/commands/misc/EqualsCommand.java index 4ea64b1..71e6b47 100644 --- a/src/main/java/com/bbn/hadder/commands/misc/EqualsCommand.java +++ b/src/main/java/com/bbn/hadder/commands/misc/EqualsCommand.java @@ -4,7 +4,6 @@ import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.EventWaiter; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; public class EqualsCommand implements Command { @@ -12,32 +11,24 @@ public class EqualsCommand implements Command { public void executed(String[] args, CommandEvent event) { event.getChannel().sendMessage( new MessageEditor() - .setDefaultSettings( - MessageEditor.MessageType.INFO, - new EmbedBuilder() - .setTitle("Please send me the first String") - ).build() - ).queue(); + .setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Please send me the first String") + .build()).queue(); new EventWaiter().newOnMessageEventWaiter(msgevent -> { String firstString = msgevent.getMessage().getContentRaw(); event.getChannel().sendMessage( new MessageEditor() .setDefaultSettings( - MessageEditor.MessageType.INFO, - new EmbedBuilder() - .setTitle("Please send me the second String") - ).build() - ).queue(); + MessageEditor.MessageType.INFO).setTitle("Please send me the second String").build()).queue(); new EventWaiter().newOnMessageEventWaiter(msgevent2 -> { String secondString = msgevent2.getMessage().getContentRaw(); event.getChannel().sendMessage( - new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle((firstString.equals(secondString)) ? "Yes! The first string equals the second string!" : "Well yes, but actually No. This isn't the same.") .addField("First String", firstString, false) .addField("Second String", secondString, false) .addField("Result", String.valueOf(firstString.equals(secondString)), false) - ).build() - ).queue(); + .build()).queue(); }, event.getJDA(), event.getAuthor()); }, event.getJDA(), event.getAuthor()); } diff --git a/src/main/java/com/bbn/hadder/commands/misc/FeedbackCommand.java b/src/main/java/com/bbn/hadder/commands/misc/FeedbackCommand.java index 002939c..c4889da 100644 --- a/src/main/java/com/bbn/hadder/commands/misc/FeedbackCommand.java +++ b/src/main/java/com/bbn/hadder/commands/misc/FeedbackCommand.java @@ -8,7 +8,6 @@ import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.EventWaiter; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import org.kohsuke.github.GHIssue; import org.kohsuke.github.GHRepository; import org.kohsuke.github.GitHub; @@ -19,15 +18,15 @@ public class FeedbackCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle("Feedback Topic") - .setDescription("Please send me the feedback topic.")) + .setDescription("Please send me the feedback topic.") .build()).queue(); new EventWaiter().newOnMessageEventWaiter(event1 -> { String title = event1.getMessage().getContentDisplay(); - event1.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + event1.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle("Feedback Description") - .setDescription("Please send me the feedback description now.")) + .setDescription("Please send me the feedback description now.") .build()).queue(); new EventWaiter().newOnMessageEventWaiter(event2 -> { String description = event2.getMessage().getContentDisplay(); @@ -35,8 +34,8 @@ public class FeedbackCommand implements Command { GitHub connection = GitHub.connectUsingOAuth(event.getConfig().getGitHubToken()); GHRepository Hadder = connection.getOrganization("BigBotNetwork").getRepository("Hadder"); GHIssue issue = Hadder.createIssue(title).body("Feedback by " + event.getAuthor().getAsTag() + "
" + description).label("feedback").create(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Feedback successfully sent")) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Feedback successfully sent") .setDescription(issue.getHtmlUrl().toString()) .build()).queue(); } catch (IOException e) { diff --git a/src/main/java/com/bbn/hadder/commands/misc/GitHubCommand.java b/src/main/java/com/bbn/hadder/commands/misc/GitHubCommand.java index ed6b471..1e14ae3 100644 --- a/src/main/java/com/bbn/hadder/commands/misc/GitHubCommand.java +++ b/src/main/java/com/bbn/hadder/commands/misc/GitHubCommand.java @@ -7,7 +7,6 @@ package com.bbn.hadder.commands.misc; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; @@ -22,8 +21,7 @@ public class GitHubCommand implements Command { public void executed(String[] args, CommandEvent event) { if (args.length > 0) { if (args[0].equals("link")) { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setTitle("Link your GitHub Account").setDescription("https://github.com/login/oauth/authorize?client_id=25321f690bb1b6952942").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).setTitle("Link your GitHub Account").setDescription("https://github.com/login/oauth/authorize?client_id=25321f690bb1b6952942").build()).queue(); } else { Request request = new Request.Builder().url("https://api.github.com/users/" + args[0]).build(); try { @@ -46,8 +44,7 @@ public class GitHubCommand implements Command { if (!json.getString("blog").equals("")) website = json.getString("blog"); - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setAuthor("Information about " + nickname + " (" + args[0] + ")", "https://github.com/" + args[0] + "", "https://github.githubassets.com/images/modules/logos_page/GitHub-Mark.png") .setThumbnail(json.getString("avatar_url")) .addField("User bio", bio, false) @@ -60,16 +57,14 @@ public class GitHubCommand implements Command { .build()).queue(); } catch (IOException | NullPointerException e) { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR, builder).setDescription("The GitHub API might be down at the moment!").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR).setDescription("The GitHub API might be down at the moment!").build()).queue(); } catch (JSONException e) { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setDescription("This user does not exist!").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setDescription("This user does not exist!").build()).queue(); } } } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Connect you GH account")) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Connect you GH account") .setDescription("[Please connect your GitHub account here](https://github.com/login/oauth/authorize?client_id=25321f690bb1b6952942)") .build()).queue(); } diff --git a/src/main/java/com/bbn/hadder/commands/misc/InviteCommand.java b/src/main/java/com/bbn/hadder/commands/misc/InviteCommand.java index f845fa2..a5c90ef 100644 --- a/src/main/java/com/bbn/hadder/commands/misc/InviteCommand.java +++ b/src/main/java/com/bbn/hadder/commands/misc/InviteCommand.java @@ -8,14 +8,12 @@ import com.bbn.hadder.Hadder; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; public class InviteCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle("Invite me!") .setDescription("[Invite me here!](https://discordapp.com/oauth2/authorize?client_id=" + Hadder.shardManager.getGuilds().get(0).getSelfMember().getId() + "&scope=bot&permissions=470133879)") .build()).queue(); diff --git a/src/main/java/com/bbn/hadder/commands/misc/ScreenShareCommand.java b/src/main/java/com/bbn/hadder/commands/misc/ScreenShareCommand.java index 54af2a2..15d2909 100644 --- a/src/main/java/com/bbn/hadder/commands/misc/ScreenShareCommand.java +++ b/src/main/java/com/bbn/hadder/commands/misc/ScreenShareCommand.java @@ -18,15 +18,15 @@ public class ScreenShareCommand implements Command { for (VoiceChannel vc : event.getGuild().getVoiceChannels()) { try { if (vc.getIdLong() == Long.parseLong(args[0])) { - event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle("Here's your Url to share your Screen") - .setDescription("http://discordapp.com/channels/" + event.getGuild().getId() + "/" + vc.getId() + "/")).build()).queue(); + .setDescription("http://discordapp.com/channels/" + event.getGuild().getId() + "/" + vc.getId() + "/").build()).queue(); return; } } catch (NumberFormatException e) { - event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR, new EmbedBuilder() + event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR) .setTitle("Wait, that's illegal") - .setDescription("This ID is invalid. \nMaybe you entered a wrong ID? \n\nNote: Make sure the Voice Channel is on this Guild.")).build()).queue(); + .setDescription("This ID is invalid. \nMaybe you entered a wrong ID? \n\nNote: Make sure the Voice Channel is on this Guild.").build()).queue(); event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); return; } @@ -41,36 +41,36 @@ public class ScreenShareCommand implements Command { VoiceChannel voiceChannel = vcs.get(i); eb.addField(i + ": " + voiceChannel.getName(), voiceChannel.getId(), false); } - event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, eb).build()).queue(); + event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).build()).queue(); new EventWaiter().newOnMessageEventWaiter(msgevent -> { try { int i = Integer.parseInt(msgevent.getMessage().getContentRaw()); if (vcs.size() > i) { - event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle("Here's your Url to share your Screen") - .setDescription("http://discordapp.com/channels/" + event.getGuild().getId() + "/" + vcs.get(i).getId() + "/")).build()).queue(); + .setDescription("http://discordapp.com/channels/" + event.getGuild().getId() + "/" + vcs.get(i).getId() + "/").build()).queue(); } else { - event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR, new EmbedBuilder() - .setTitle("You specified a wrong number!")).build()).queue(); + event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR) + .setTitle("You specified a wrong number!").build()).queue(); event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); } } catch (NumberFormatException e) { - event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR, new EmbedBuilder() + event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR) .setTitle("Wait, that's illegal") - .setDescription("This isn't a Number.")).build()).queue(); + .setDescription("This isn't a Number.").build()).queue(); event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); } }, event.getJDA(), event.getAuthor()); } else if (vcs.size()==0) { - event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR, new EmbedBuilder() + event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR) .setTitle("Hol' up") - .setDescription("There is no Voice Channel named like this. \n\nNote: Make sure the Voice Channel is on this Guild.")).build()).queue(); + .setDescription("There is no Voice Channel named like this. \n\nNote: Make sure the Voice Channel is on this Guild.").build()).queue(); event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); } else { - event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle("Here's your Url to share your Screen") - .setDescription("http://discordapp.com/channels/" + event.getGuild().getId() + "/" + vcs.get(0).getId() + "/")).build()).queue(); + .setDescription("http://discordapp.com/channels/" + event.getGuild().getId() + "/" + vcs.get(0).getId() + "/").build()).queue(); } } } else { diff --git a/src/main/java/com/bbn/hadder/commands/moderation/BanCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/BanCommand.java index 22872bc..178ebdb 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/BanCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/BanCommand.java @@ -7,7 +7,6 @@ package com.bbn.hadder.commands.moderation; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import net.dv8tion.jda.api.Permission; import net.dv8tion.jda.api.entities.Member; @@ -22,19 +21,15 @@ public class BanCommand implements Command { if (!event.getJDA().getSelfUser().getId().equals(victim.getId())) { if (event.getGuild().getSelfMember().canInteract(victim)) { event.getGuild().ban(victim, 0, "Banned by " + event.getAuthor().getAsTag()).queue(); - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setTitle("✅ Successfully banned ✅").setDescription("I successfully baned " + victim.getUser().getName() + ".").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).setTitle("✅ Successfully banned ✅").setDescription("I successfully baned " + victim.getUser().getName() + ".").build()).queue(); } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setDescription("I can not ban myself").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setDescription("I can not ban myself").build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setTitle("Not possible").setDescription("You can't ban yourself.").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setTitle("Not possible").setDescription("You can't ban yourself.").build()).queue(); } } else if (event.getMessage().getMentionedMembers().size() == 0) { event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); @@ -46,24 +41,19 @@ public class BanCommand implements Command { if (event.getGuild().getSelfMember().canInteract(member)) { event.getGuild().ban(member, 0).reason("Mass Ban by " + event.getAuthor().getAsTag()).queue(); } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setDescription("I can not ban myself!").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setDescription("I can not ban myself!").build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setDescription("You can't ban yourself.").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setDescription("You can't ban yourself.").build()).queue(); } } - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setTitle("✅ Successfully banned ✅").setDescription("I successfully banned " + event.getMessage().getMentionedMembers().size() + " Members!").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).setTitle("✅ Successfully banned ✅").setDescription("I successfully banned " + event.getMessage().getMentionedMembers().size() + " Members!").build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/moderation/ClearCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/ClearCommand.java index 0373508..a4288a7 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/ClearCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/ClearCommand.java @@ -7,7 +7,6 @@ package com.bbn.hadder.commands.moderation; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import net.dv8tion.jda.api.Permission; import net.dv8tion.jda.api.entities.Message; @@ -25,26 +24,22 @@ public class ClearCommand implements Command { try { int nbToDelete = Integer.parseInt(args[0]); if(nbToDelete < 1 || nbToDelete > 200) { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setDescription("You have to choose a number between 1 and 200!").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setDescription("You have to choose a number between 1 and 200!").build()).queue(); return; } List history = event.getTextChannel().getHistory().retrievePast(nbToDelete +1).complete(); List msgToDelete = new ArrayList<>(); msgToDelete.addAll(history); event.getTextChannel().deleteMessages(msgToDelete).queue(); - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setDescription("Successfully deleted " + nbToDelete + " messages.").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).setDescription("Successfully deleted " + nbToDelete + " messages.").build()).queue(); } catch (NumberFormatException e) { event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } } else { event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); diff --git a/src/main/java/com/bbn/hadder/commands/moderation/GuildPrefixCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/GuildPrefixCommand.java index 10f9a09..bd91d1d 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/GuildPrefixCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/GuildPrefixCommand.java @@ -3,7 +3,6 @@ package com.bbn.hadder.commands.moderation; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import net.dv8tion.jda.api.Permission; public class GuildPrefixCommand implements Command { @@ -15,20 +14,15 @@ public class GuildPrefixCommand implements Command { if (!args[0].contains("\"")) { event.getRethink().setGuildPrefix(args[0], event.getGuild().getId()); - - EmbedBuilder builder = new EmbedBuilder(); - - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setTitle("✅ Successfully set ✅").setDescription("I successfully set the new prefix for you to " + args[0]).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).setTitle("✅ Successfully set ✅").setDescription("I successfully set the new prefix for you to " + args[0]).build()).queue(); } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setDescription("The prefix must not contain **\"**").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setDescription("The prefix must not contain **\"**").build()).queue(); } } else { event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/moderation/KickCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/KickCommand.java index 65877e6..416027b 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/KickCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/KickCommand.java @@ -7,7 +7,6 @@ package com.bbn.hadder.commands.moderation; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import net.dv8tion.jda.api.Permission; import net.dv8tion.jda.api.entities.Member; @@ -23,19 +22,15 @@ public class KickCommand implements Command { if (!event.getJDA().getSelfUser().getId().equals(victim.getId())) { if (event.getGuild().getSelfMember().canInteract(victim)) { event.getGuild().kick(victim, "Kicked by " + event.getAuthor().getAsTag()).queue(); - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setTitle("✅ Successfully kicked ✅").setDescription("I successfully kicked " + victim.getUser().getName() + ".").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).setTitle("✅ Successfully kicked ✅").setDescription("I successfully kicked " + victim.getUser().getName() + ".").build()).queue(); } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setDescription("I can not kick myself!").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setDescription("I can not kick myself!").build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setDescription("You can't kick yourself.").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setDescription("You can't kick yourself.").build()).queue(); } } else if (event.getMessage().getMentionedMembers().size() == 0) { event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); @@ -47,20 +42,16 @@ public class KickCommand implements Command { if (event.getGuild().getSelfMember().canInteract(member)) { event.getGuild().kick(member).reason("Mass Kicked by " + event.getAuthor().getAsTag()).queue(); } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setDescription("I can not kick myself!").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setDescription("I can not kick myself!").build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setDescription("You can't kick yourself.").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setDescription("You can't kick yourself.").build()).queue(); } } - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setTitle("✅ Successfully kicked ✅").setDescription("I successfully kicked " + event.getMessage().getMentionedMembers().size() + " Members!").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).setTitle("✅ Successfully kicked ✅").setDescription("I successfully kicked " + event.getMessage().getMentionedMembers().size() + " Members!").build()).queue(); } } } diff --git a/src/main/java/com/bbn/hadder/commands/moderation/LinkCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/LinkCommand.java index d33dd60..5e9c393 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/LinkCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/LinkCommand.java @@ -16,7 +16,7 @@ public class LinkCommand implements Command { if (args.length != 2) return; String linkid = args[1]; - // Check if guild is existing + // Check if guild exists boolean found = false; Guild linkguild = null; for (Guild g : event.getJDA().getGuilds()) { @@ -27,17 +27,17 @@ public class LinkCommand implements Command { } if (!found) { event.getChannel().sendMessage( - new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, - new EmbedBuilder().setTitle("Success!").setDescription("If i'm on this guild i sent a message to accept the link.") - ).build()).queue(); + new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Success!").setDescription("If i'm on this guild i sent a message to accept the link.") + .build()).queue(); return; } // Check if the guild is the same if (event.getGuild().getId().equals(args[1])) { event.getChannel().sendMessage( - new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR, - new EmbedBuilder().setTitle("Wait thats illegal.").setDescription("You specified the same guild as the guild on which you're reading this")).build()).queue(); + new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR) + .setTitle("Wait thats illegal.").setDescription("You specified the same guild as the guild on which you're reading this").build()).queue(); return; } @@ -49,9 +49,9 @@ public class LinkCommand implements Command { } // Send Request to link Guild event.getJDA().getTextChannelById(event.getRethink().getLinkChannel(linkid)).sendMessage( - new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, - new EmbedBuilder().setTitle(event.getGuild().getName() + " (" + event.getGuild().getId() + ") wants to link guilds!") - .setDescription("React with the reactions to accept or decline it")).build() + new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle(event.getGuild().getName() + " (" + event.getGuild().getId() + ") wants to link guilds!") + .setDescription("React with the reactions to accept or decline it").build() ).queue( msg -> { msg.addReaction("✅").queue(); @@ -62,9 +62,9 @@ public class LinkCommand implements Command { event.getChannel().sendMessage( - new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, - new EmbedBuilder().setTitle("Success!").setDescription("If i'm on this guild i sent a message to accept the link.") - ).build()).queue(); + new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Success!").setDescription("If i'm on this guild i sent a message to accept the link.") + .build()).queue(); break; diff --git a/src/main/java/com/bbn/hadder/commands/moderation/NickCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/NickCommand.java index 37cab59..3fb30f7 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/NickCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/NickCommand.java @@ -7,7 +7,6 @@ package com.bbn.hadder.commands.moderation; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import net.dv8tion.jda.api.Permission; import net.dv8tion.jda.api.entities.Member; @@ -23,29 +22,24 @@ public class NickCommand implements Command { if (args.length > 1) { if (event.getMessage().getContentRaw().startsWith(event.getRethink().getUserPrefix(event.getMember().getId()))) { event.getGuild().modifyNickname(event.getMessage().getMentionedMembers().get(0), event.getMessage().getContentRaw().replaceFirst(event.getRethink().getUserPrefix(event.getMember().getId()) + "nick " + args[0], "")).reason("Nicked by " + event.getAuthor().getAsTag()).queue(); - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setTitle("✅ Successfully nicked ✅").setDescription("I successfully nicked " + event.getMessage().getMentionedMembers().get(0).getUser().getAsTag() + ".").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).setTitle("✅ Successfully nicked ✅").setDescription("I successfully nicked " + event.getMessage().getMentionedMembers().get(0).getUser().getAsTag() + ".").build()).queue(); } else if (event.getMessage().getContentRaw().startsWith(event.getRethink().getGuildPrefix(event.getGuild().getId()))) { event.getGuild().modifyNickname(event.getMessage().getMentionedMembers().get(0), event.getMessage().getContentRaw().replaceFirst(event.getRethink().getGuildPrefix(event.getGuild().getId()) + "nick " + args[0], "")).reason("Nicked by " + event.getAuthor().getAsTag()).queue(); - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setTitle("✅ Successfully nicked ✅").setDescription("I successfully nicked " + event.getMessage().getMentionedMembers().get(0).getUser().getAsTag() + ".").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).setTitle("✅ Successfully nicked ✅").setDescription("I successfully nicked " + event.getMessage().getMentionedMembers().get(0).getUser().getAsTag() + ".").build()).queue(); } } else { event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } else { if (event.getMessage().getContentRaw().startsWith(event.getRethink().getUserPrefix(event.getMember().getId()))) { event.getGuild().getSelfMember().modifyNickname(event.getMessage().getContentRaw().replaceFirst(event.getRethink().getUserPrefix(event.getMember().getId()) + "nick " + args[0], "")).reason("Nicked by " + event.getAuthor().getAsTag()).queue(); - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setTitle("✅ Successfully nicked ✅").setDescription("I successfully changed my nickname.").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).setTitle("✅ Successfully nicked ✅").setDescription("I successfully changed my nickname.").build()).queue(); } else if (event.getMessage().getContentRaw().startsWith(event.getRethink().getGuildPrefix(event.getGuild().getId()))) { event.getGuild().getSelfMember().modifyNickname(event.getMessage().getContentRaw().replaceFirst(event.getRethink().getGuildPrefix(event.getGuild().getId()) + "nick " + args[0], "")).reason("Nicked by " + event.getAuthor().getAsTag()).queue(); - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setTitle("✅ Successfully nicked ✅").setDescription("I successfully changed my nickname.").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).setTitle("✅ Successfully nicked ✅").setDescription("I successfully changed my nickname.").build()).queue(); } } } else if (event.getMessage().getMentionedMembers().size() == 0) { @@ -59,16 +53,13 @@ public class NickCommand implements Command { event.getGuild().getSelfMember().modifyNickname(args[args.length - 1]).reason("Mass Nicked by " + event.getAuthor().getAsTag()).queue(); } } - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setTitle("✅ Successfully nicked ✅").setDescription("I successfully nicked " + event.getMessage().getMentionedMembers().size() + " Members!").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).setTitle("✅ Successfully nicked ✅").setDescription("I successfully nicked " + event.getMessage().getMentionedMembers().size() + " Members!").build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java index 797bc12..091a104 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java @@ -24,17 +24,14 @@ public class RoleCommand implements Command { if (event.getGuild().getSelfMember().canInteract(role)) { event.getGuild().addRoleToMember(member, role).reason("Role added by " + event.getAuthor().getAsTag()).queue(); } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } } - EmbedBuilder builder = new EmbedBuilder(); - event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) + event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle("✅ Successfully added role(s) ✅") .setDescription("I successfully added " + event.getMessage().getMentionedRoles().size() + " roles to " + event.getMessage().getMentionedMembers().size() + " members.") .build()).queue(); @@ -49,17 +46,14 @@ public class RoleCommand implements Command { if (event.getGuild().getSelfMember().canInteract(role)) { event.getGuild().removeRoleFromMember(member, role).reason("Role removed by " + event.getAuthor().getAsTag()).queue(); } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } } - EmbedBuilder builder = new EmbedBuilder(); - event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) + event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle("✅ Successfully removed role(s) ✅") .setDescription("I successfully removed " + event.getMessage().getMentionedRoles().size() + " roles from " + event.getMessage().getMentionedMembers().size() + " members.") .build()).queue(); @@ -67,12 +61,10 @@ public class RoleCommand implements Command { break; } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } } else { event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); diff --git a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java index 5c7e224..4903b7b 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java @@ -8,7 +8,6 @@ import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.EventWaiter; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import net.dv8tion.jda.api.Permission; import net.dv8tion.jda.api.entities.Message; import net.dv8tion.jda.api.entities.Role; @@ -20,9 +19,9 @@ public class RulesCommand implements Command { public void executed(String[] args, CommandEvent event) { if (event.getMember().hasPermission(Permission.MANAGE_SERVER) || event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { if (event.getGuild().getSelfMember().hasPermission(Permission.MANAGE_ROLES)) { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle("Set up rules") - .setDescription("Welcome to the Hadder rules setup. Please mention the channel in which I should send the rules. Your message should look like: #rules or #verify.")) + .setDescription("Welcome to the Hadder rules setup. Please mention the channel in which I should send the rules. Your message should look like: #rules or #verify.") .build()).queue(); new EventWaiter().newOnMessageEventWaiter(event1 -> { if (event1.getMessage().getMentionedChannels().size() == 1) { @@ -30,69 +29,66 @@ public class RulesCommand implements Command { TextChannel channel = event1.getMessage().getMentionedChannels().get(0); if (channel.getGuild().getId().equals(event1.getGuild().getId())) { if (event.getGuild().getSelfMember().hasPermission(channel, Permission.MESSAGE_WRITE)) { - event1.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + event1.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle("Rules") - .setDescription("The channel was successfully set to " + channel.getName() + ". Please send me the rules now.")) + .setDescription("The channel was successfully set to " + channel.getName() + ". Please send me the rules now.") .build()).queue(); new EventWaiter().newOnMessageEventWaiter(event2 -> { String message = event2.getMessage().getContentDisplay(); - event2.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Role to assign")) + event2.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Role to assign") .setDescription("The rules were successfully set. Please send me the name of the role which the user receives after he accepted the rules.") .build()).queue(); new EventWaiter().newOnMessageEventWaiter(event3 -> { if (event.getMessage().getMentionedRoles().size() == 1) { Role role = event.getMessage().getMentionedRoles().get(0); if (event3.getGuild().getSelfMember().canInteract(role)) { - event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("The role has been successfully set to " + role.getName() + ".")) + event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("The role has been successfully set to " + role.getName() + ".") .build()).queue(); - Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Rules")) + Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Rules") .setDescription(message) .build()).complete(); rules.addReaction("✅").queue(); rules.addReaction("❌").queue(); event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } else { Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentStripped(), true).get(0); if (event3.getGuild().getSelfMember().canInteract(role)) { - event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("The role has been successfully set to " + role.getName() + ".")) + event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("The role has been successfully set to " + role.getName() + ".") .build()).queue(); - Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Rules")) + Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Rules") .setDescription(message) .build()).complete(); rules.addReaction("✅").queue(); rules.addReaction("❌").queue(); event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } }, event.getJDA(), event.getAuthor()); }, event.getJDA(), event.getAuthor()); } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION) .build()).queue(); } } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, new EmbedBuilder() + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING) .setTitle("Wrong Guild") - .setDescription("The mentioned channel must be on this guid!")) + .setDescription("The mentioned channel must be on this guid!") .build()).queue(); } } catch (Exception e) { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR, new EmbedBuilder() + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR) .setTitle("Channel not found") - .setDescription("I can't find the specified channel. Please start the setup again.")) + .setDescription("I can't find the specified channel. Please start the setup again.") .build()).queue(); } } else { @@ -100,80 +96,75 @@ public class RulesCommand implements Command { TextChannel channel = event1.getGuild().getTextChannelsByName(event1.getMessage().getContentRaw(), true).get(0); if (channel.getGuild().getId().equals(event1.getGuild().getId())) { if (event.getGuild().getSelfMember().hasPermission(channel, Permission.MESSAGE_WRITE)) { - event1.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + event1.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle("Rules") - .setDescription("The channel was successfully set to " + channel.getName() + ". Please send me the rules now.")) + .setDescription("The channel was successfully set to " + channel.getName() + ". Please send me the rules now.") .build()).queue(); new EventWaiter().newOnMessageEventWaiter(event2 -> { String message = event2.getMessage().getContentDisplay(); - event2.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Role to assign")) + event2.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Role to assign") .setDescription("The rules were successfully set. Please send me the name of the role which the user receives after he accepted the rules.") .build()).queue(); new EventWaiter().newOnMessageEventWaiter(event3 -> { if (event.getMessage().getMentionedRoles().size() == 1) { Role role = event.getMessage().getMentionedRoles().get(0); if (event3.getGuild().getSelfMember().canInteract(role)) { - event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("The role has been successfully set to " + role.getName() + ".")) + event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("The role has been successfully set to " + role.getName() + ".") .build()).queue(); - Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Rules")) + Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Rules") .setDescription(message) .build()).complete(); rules.addReaction("✅").queue(); rules.addReaction("❌").queue(); event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } else { Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentStripped(), true).get(0); if (event3.getGuild().getSelfMember().canInteract(role)) { - event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("The role has been successfully set to " + role.getName() + ".")) + event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("The role has been successfully set to " + role.getName() + ".") .build()).queue(); - Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Rules")) + Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Rules") .setDescription(message) .build()).complete(); rules.addReaction("✅").queue(); rules.addReaction("❌").queue(); event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } }, event.getJDA(), event.getAuthor()); }, event.getJDA(), event.getAuthor()); } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION) .build()).queue(); } } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, new EmbedBuilder() + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING) .setTitle("Wrong Guild") - .setDescription("The mentioned channel must be on this guid!")) + .setDescription("The mentioned channel must be on this guid!") .build()).queue(); } } catch (Exception e) { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR, new EmbedBuilder() + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR) .setTitle("Channel not found") - .setDescription("I can't find the specified channel. Please start the setup again.")) + .setDescription("I can't find the specified channel. Please start the setup again.") .build()).queue(); } } }, event.getJDA(), event.getAuthor()); } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/music/JoinCommand.java b/src/main/java/com/bbn/hadder/commands/music/JoinCommand.java index ab23dc0..9cc43f5 100644 --- a/src/main/java/com/bbn/hadder/commands/music/JoinCommand.java +++ b/src/main/java/com/bbn/hadder/commands/music/JoinCommand.java @@ -7,8 +7,6 @@ package com.bbn.hadder.commands.music; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; -import net.dv8tion.jda.api.Permission; import net.dv8tion.jda.api.entities.VoiceChannel; import net.dv8tion.jda.api.managers.AudioManager; @@ -22,20 +20,18 @@ public class JoinCommand implements Command { if(!audioManager.isAttemptingToConnect()) { VoiceChannel vc = event.getMember().getVoiceState().getChannel(); event.getGuild().getAudioManager().openAudioConnection(vc); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() - .setTitle("Successfully connected")) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Successfully connected") .setDescription("I successfully connected to " + vc.getName() + ".") .build()).queue(); } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING) .setTitle("Already trying to connect") .setDescription("Hadder is already trying to connect. Please wait a moment.") .build()).queue(); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING) .setTitle("No Voice Channel") .setDescription("You aren't in a Voice Channel.") .build()).queue(); diff --git a/src/main/java/com/bbn/hadder/commands/music/LeaveCommand.java b/src/main/java/com/bbn/hadder/commands/music/LeaveCommand.java index 844344c..cb47830 100644 --- a/src/main/java/com/bbn/hadder/commands/music/LeaveCommand.java +++ b/src/main/java/com/bbn/hadder/commands/music/LeaveCommand.java @@ -7,8 +7,6 @@ package com.bbn.hadder.commands.music; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; - public class LeaveCommand implements Command { @@ -16,13 +14,12 @@ public class LeaveCommand implements Command { public void executed(String[] args, CommandEvent event) { if (event.getGuild().getSelfMember().getVoiceState().inVoiceChannel()) { event.getGuild().getAudioManager().closeAudioConnection(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle("Successfully disconnected") - .setDescription("I successfully disconnected from the Voice Channel")) + .setDescription("I successfully disconnected from the Voice Channel") .build()).queue(); } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING) .setTitle("Not connected") .setDescription("I'm currently in no Voice Channel on this Guild") .build()).queue(); diff --git a/src/main/java/com/bbn/hadder/commands/nsfw/AnalCommand.java b/src/main/java/com/bbn/hadder/commands/nsfw/AnalCommand.java index 10faa26..a053a87 100644 --- a/src/main/java/com/bbn/hadder/commands/nsfw/AnalCommand.java +++ b/src/main/java/com/bbn/hadder/commands/nsfw/AnalCommand.java @@ -7,13 +7,11 @@ package com.bbn.hadder.commands.nsfw; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; import java.io.IOException; -import java.time.Instant; public class AnalCommand implements Command { @@ -29,8 +27,7 @@ public class AnalCommand implements Command { Response response = caller.newCall(request).execute(); String url = response.body().string().replace("{\"url\":\"", ""); - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setAuthor("GIF not showing? Click here", url.replace("\"}", "")) .setImage(url.replace("\"}", "")) .setFooter("Anal") @@ -41,8 +38,7 @@ public class AnalCommand implements Command { } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setTitle("No NSFW").setDescription("You can only execute this command in NSFW channels!").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setTitle("No NSFW").setDescription("You can only execute this command in NSFW channels!").build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/nsfw/BlowjobCommand.java b/src/main/java/com/bbn/hadder/commands/nsfw/BlowjobCommand.java index 55fc58c..67bafb8 100644 --- a/src/main/java/com/bbn/hadder/commands/nsfw/BlowjobCommand.java +++ b/src/main/java/com/bbn/hadder/commands/nsfw/BlowjobCommand.java @@ -7,13 +7,11 @@ package com.bbn.hadder.commands.nsfw; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; import java.io.IOException; -import java.time.Instant; public class BlowjobCommand implements Command { @@ -29,8 +27,7 @@ public class BlowjobCommand implements Command { Response response = caller.newCall(request).execute(); String url = response.body().string().replace("{\"url\":\"", ""); - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setAuthor("Image not showing? Click here", url.replace("\"}", "")) .setImage(url.replace("\"}", "")) .setFooter("Blowjob") @@ -41,8 +38,7 @@ public class BlowjobCommand implements Command { } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setTitle("No NSFW").setDescription("You can only execute this command in NSFW channels!").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setTitle("No NSFW").setDescription("You can only execute this command in NSFW channels!").build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/nsfw/BoobsCommand.java b/src/main/java/com/bbn/hadder/commands/nsfw/BoobsCommand.java index 46e9f66..0b85d18 100644 --- a/src/main/java/com/bbn/hadder/commands/nsfw/BoobsCommand.java +++ b/src/main/java/com/bbn/hadder/commands/nsfw/BoobsCommand.java @@ -13,7 +13,6 @@ import okhttp3.Request; import okhttp3.Response; import java.io.IOException; -import java.time.Instant; public class BoobsCommand implements Command { @@ -29,8 +28,7 @@ public class BoobsCommand implements Command { Response response = caller.newCall(request).execute(); String url = response.body().string().replace("{\"url\":\"", ""); - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setAuthor("GIF not showing? Click here", url.replace("\"}", "")) .setImage(url.replace("\"}", "")) .setFooter("Boobs") @@ -41,8 +39,7 @@ public class BoobsCommand implements Command { } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setTitle("No NSFW").setDescription("You can only execute this command in NSFW channels!").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setTitle("No NSFW").setDescription("You can only execute this command in NSFW channels!").build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/nsfw/CumCommand.java b/src/main/java/com/bbn/hadder/commands/nsfw/CumCommand.java index 2cf9b14..774c380 100644 --- a/src/main/java/com/bbn/hadder/commands/nsfw/CumCommand.java +++ b/src/main/java/com/bbn/hadder/commands/nsfw/CumCommand.java @@ -13,7 +13,6 @@ import okhttp3.Request; import okhttp3.Response; import java.io.IOException; -import java.time.Instant; public class CumCommand implements Command { @@ -29,8 +28,7 @@ public class CumCommand implements Command { Response response = caller.newCall(request).execute(); String url = response.body().string().replace("{\"url\":\"", ""); - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setAuthor("GIF not showing? Click here", url.replace("\"}", "")) .setImage(url.replace("\"}", "")) .setFooter("Cum") @@ -41,8 +39,7 @@ public class CumCommand implements Command { } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setTitle("No NSFW").setDescription("You can only execute this command in NSFW channels!").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setTitle("No NSFW").setDescription("You can only execute this command in NSFW channels!").build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/nsfw/EroticCommand.java b/src/main/java/com/bbn/hadder/commands/nsfw/EroticCommand.java index 3500272..8247ac6 100644 --- a/src/main/java/com/bbn/hadder/commands/nsfw/EroticCommand.java +++ b/src/main/java/com/bbn/hadder/commands/nsfw/EroticCommand.java @@ -7,13 +7,11 @@ package com.bbn.hadder.commands.nsfw; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; import java.io.IOException; -import java.time.Instant; public class EroticCommand implements Command { @@ -29,8 +27,7 @@ public class EroticCommand implements Command { Response response = caller.newCall(request).execute(); String url = response.body().string().replace("{\"url\":\"", ""); - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setAuthor("Image not showing? Click here", url.replace("\"}", "")) .setImage(url.replace("\"}", "")) .setFooter("Erotic") @@ -41,8 +38,7 @@ public class EroticCommand implements Command { } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setTitle("No NSFW").setDescription("You can only execute this command in NSFW channels!").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setTitle("No NSFW").setDescription("You can only execute this command in NSFW channels!").build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/nsfw/FeetCommand.java b/src/main/java/com/bbn/hadder/commands/nsfw/FeetCommand.java index 197abda..8a55c83 100644 --- a/src/main/java/com/bbn/hadder/commands/nsfw/FeetCommand.java +++ b/src/main/java/com/bbn/hadder/commands/nsfw/FeetCommand.java @@ -7,13 +7,11 @@ package com.bbn.hadder.commands.nsfw; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; import java.io.IOException; -import java.time.Instant; public class FeetCommand implements Command { @@ -29,8 +27,7 @@ public class FeetCommand implements Command { Response response = caller.newCall(request).execute(); String url = response.body().string().replace("{\"url\":\"", ""); - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setAuthor("Image not showing? Click here", url.replace("\"}", "")) .setImage(url.replace("\"}", "")) .setFooter("Feet") @@ -41,8 +38,7 @@ public class FeetCommand implements Command { } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setTitle("No NSFW").setDescription("You can only execute this command in NSFW channels!").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setTitle("No NSFW").setDescription("You can only execute this command in NSFW channels!").build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/nsfw/PornCommand.java b/src/main/java/com/bbn/hadder/commands/nsfw/PornCommand.java index 7708da1..a92b4b6 100644 --- a/src/main/java/com/bbn/hadder/commands/nsfw/PornCommand.java +++ b/src/main/java/com/bbn/hadder/commands/nsfw/PornCommand.java @@ -7,13 +7,11 @@ package com.bbn.hadder.commands.nsfw; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; import java.io.IOException; -import java.time.Instant; public class PornCommand implements Command { @@ -29,8 +27,7 @@ public class PornCommand implements Command { Response response = caller.newCall(request).execute(); String url = response.body().string().replace("{\"url\":\"", ""); - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setAuthor("GIF not showing? Click here", url.replace("\"}", "")) .setImage(url.replace("\"}", "")) .setFooter("Porn") @@ -41,8 +38,7 @@ public class PornCommand implements Command { } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setTitle("No NSFW").setDescription("You can only execute this command in NSFW channels!").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setTitle("No NSFW").setDescription("You can only execute this command in NSFW channels!").build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/nsfw/PussyCommand.java b/src/main/java/com/bbn/hadder/commands/nsfw/PussyCommand.java index c595ab3..33f4638 100644 --- a/src/main/java/com/bbn/hadder/commands/nsfw/PussyCommand.java +++ b/src/main/java/com/bbn/hadder/commands/nsfw/PussyCommand.java @@ -7,13 +7,11 @@ package com.bbn.hadder.commands.nsfw; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; import java.io.IOException; -import java.time.Instant; public class PussyCommand implements Command { @@ -29,8 +27,7 @@ public class PussyCommand implements Command { Response response = caller.newCall(request).execute(); String url = response.body().string().replace("{\"url\":\"", ""); - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setAuthor("GIF not showing? Click here", url.replace("\"}", "")) .setImage(url.replace("\"}", "")) .setFooter("Pussy") @@ -41,8 +38,7 @@ public class PussyCommand implements Command { } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setTitle("No NSFW").setDescription("You can only execute this command in NSFW channels!").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setTitle("No NSFW").setDescription("You can only execute this command in NSFW channels!").build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/nsfw/TransCommand.java b/src/main/java/com/bbn/hadder/commands/nsfw/TransCommand.java index f0f4bed..9c2b316 100644 --- a/src/main/java/com/bbn/hadder/commands/nsfw/TransCommand.java +++ b/src/main/java/com/bbn/hadder/commands/nsfw/TransCommand.java @@ -7,13 +7,11 @@ package com.bbn.hadder.commands.nsfw; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; import java.io.IOException; -import java.time.Instant; public class TransCommand implements Command { @@ -29,8 +27,7 @@ public class TransCommand implements Command { Response response = caller.newCall(request).execute(); String url = response.body().string().replace("{\"url\":\"", ""); - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setAuthor("Image not showing? Click here", url.replace("\"}", "")) .setImage(url.replace("\"}", "")) .setFooter("Trans") @@ -41,8 +38,7 @@ public class TransCommand implements Command { } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING, builder).setTitle("No NSFW").setDescription("You can only execute this command in NSFW channels!").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setTitle("No NSFW").setDescription("You can only execute this command in NSFW channels!").build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java b/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java index aad0377..216b076 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java @@ -68,7 +68,7 @@ public class EvalCommand implements Command { } builder.addField("Timing", System.currentTimeMillis()-startExec + " milliseconds", false); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setTitle("Eval Command").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).setTitle("Eval Command").build()).queue(); service.shutdownNow(); @@ -78,8 +78,7 @@ public class EvalCommand implements Command { event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/owner/GuildLeaveCommand.java b/src/main/java/com/bbn/hadder/commands/owner/GuildLeaveCommand.java index 5d7d652..5b1975b 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/GuildLeaveCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/GuildLeaveCommand.java @@ -7,7 +7,6 @@ package com.bbn.hadder.commands.owner; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import net.dv8tion.jda.api.entities.Guild; public class GuildLeaveCommand implements Command { @@ -18,16 +17,15 @@ public class GuildLeaveCommand implements Command { if (args.length > 0) { Guild guild = event.getJDA().getGuildById(args[0]); guild.leave().queue(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, new EmbedBuilder() + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle("Successfully left") - .setDescription("I successfully left " + guild.getName())) + .setDescription("I successfully left " + guild.getName()) .build()).queue(); } else { event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); } } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java b/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java index 7797dd7..364c149 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java @@ -7,7 +7,6 @@ package com.bbn.hadder.commands.owner; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; public class RebootCommand implements Command { @@ -17,8 +16,7 @@ public class RebootCommand implements Command { if (event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { System.exit(69); } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java b/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java index 0148563..e904e4c 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java @@ -7,21 +7,18 @@ package com.bbn.hadder.commands.owner; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; public class ShutdownCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { if (event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setTitle("Shutdown").build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).setTitle("Shutdown").build()).queue(); event.getJDA().getShardManager().shutdown(); System.out.println("Bot shut down via Command..."); System.exit(0); } else { - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION, builder).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/settings/PrefixCommand.java b/src/main/java/com/bbn/hadder/commands/settings/PrefixCommand.java index 5c10d32..aa70bf1 100644 --- a/src/main/java/com/bbn/hadder/commands/settings/PrefixCommand.java +++ b/src/main/java/com/bbn/hadder/commands/settings/PrefixCommand.java @@ -7,7 +7,6 @@ package com.bbn.hadder.commands.settings; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; public class PrefixCommand implements Command { @@ -15,8 +14,7 @@ public class PrefixCommand implements Command { public void executed(String[] args, CommandEvent event) { if (args.length == 1) { event.getRethink().setUserPrefix(args[0], event.getAuthor().getId()); - EmbedBuilder builder = new EmbedBuilder(); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).setTitle("✅ Successfully set ✅").setDescription("I successfully set the new prefix for you to " + args[0]).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).setTitle("✅ Successfully set ✅").setDescription("I successfully set the new prefix for you to " + args[0]).build()).queue(); } else { event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); } diff --git a/src/main/java/com/bbn/hadder/listener/GuildListener.java b/src/main/java/com/bbn/hadder/listener/GuildListener.java index b0c91fcc..6cbf2d7 100644 --- a/src/main/java/com/bbn/hadder/listener/GuildListener.java +++ b/src/main/java/com/bbn/hadder/listener/GuildListener.java @@ -38,7 +38,7 @@ public class GuildListener extends ListenerAdapter { rethink.insertGuild(event.getGuild().getId()); EmbedBuilder builder = new EmbedBuilder(); - event.getJDA().getTextChannelById("475722540140986369").sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) + event.getJDA().getTextChannelById("475722540140986369").sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle("Joined Server") .setThumbnail(event.getGuild().getIconUrl()) .addField("Name", event.getGuild().getName(), true) @@ -54,7 +54,7 @@ public class GuildListener extends ListenerAdapter { public void onGuildLeave(GuildLeaveEvent event) { EmbedBuilder builder = new EmbedBuilder(); - event.getJDA().getTextChannelById("475722540140986369").sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder) + event.getJDA().getTextChannelById("475722540140986369").sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle("Left Server") .setThumbnail(event.getGuild().getIconUrl()) .addField("Name", event.getGuild().getName(), true) diff --git a/src/main/java/com/bbn/hadder/listener/LinkListener.java b/src/main/java/com/bbn/hadder/listener/LinkListener.java index d709e3c..cffe561 100644 --- a/src/main/java/com/bbn/hadder/listener/LinkListener.java +++ b/src/main/java/com/bbn/hadder/listener/LinkListener.java @@ -46,15 +46,15 @@ public class LinkListener extends ListenerAdapter { msg.delete().queue(); - MessageEmbed msgembed = new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, - new EmbedBuilder().setTitle("Guilds linked!").setDescription("The Guild allowed the link. Have fun!")).build(); + MessageEmbed msgembed = new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Guilds linked!").setDescription("The Guild allowed the link. Have fun!").build(); event.getChannel().sendMessage(msgembed).queue(); event.getJDA().getTextChannelById(rethink.getLinkChannel(requestguildid)).sendMessage(msgembed).queue(); } else if (event.getReactionEmote().getName().equals("❌")) { msg.delete().queue(); - MessageEmbed msgembed = new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, - new EmbedBuilder().setTitle("Guild linking denied.").setDescription("The Guild denied the link. :(")).build(); + MessageEmbed msgembed = new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Guild linking denied.").setDescription("The Guild denied the link. :(").build(); event.getChannel().sendMessage(msgembed).queue(); event.getJDA().getTextChannelById(rethink.getLinkChannel(requestguildid)).sendMessage(msgembed).queue(); } diff --git a/src/main/java/com/bbn/hadder/listener/MentionListener.java b/src/main/java/com/bbn/hadder/listener/MentionListener.java index 07e2cc3..f356a9a 100644 --- a/src/main/java/com/bbn/hadder/listener/MentionListener.java +++ b/src/main/java/com/bbn/hadder/listener/MentionListener.java @@ -28,7 +28,7 @@ public class MentionListener extends ListenerAdapter { .addField("Guilds", String.valueOf(event.getJDA().getGuilds().size()), false) .addField("Prefix (User)", rethink.getUserPrefix(event.getAuthor().getId()), false) .addField("Prefix (Guild)", rethink.getGuildPrefix(event.getGuild().getId()), false); - event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, builder).build()).queue(); + event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).build()).queue(); } } } diff --git a/src/main/java/com/bbn/hadder/listener/PrivateMessageListener.java b/src/main/java/com/bbn/hadder/listener/PrivateMessageListener.java index 6bd21cf..f542d21 100644 --- a/src/main/java/com/bbn/hadder/listener/PrivateMessageListener.java +++ b/src/main/java/com/bbn/hadder/listener/PrivateMessageListener.java @@ -28,8 +28,8 @@ public class PrivateMessageListener extends ListenerAdapter { .setDescription(event.getMessage().getContentRaw()) .setTimestamp(Instant.now()); - Skidder.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, message).build()).queue(); - Hax.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO, message).build()).queue(); + Skidder.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).build()).queue(); + Hax.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).build()).queue(); } } } diff --git a/src/main/java/com/bbn/hadder/utils/MessageEditor.java b/src/main/java/com/bbn/hadder/utils/MessageEditor.java index 3a2e33c..3f7f619 100644 --- a/src/main/java/com/bbn/hadder/utils/MessageEditor.java +++ b/src/main/java/com/bbn/hadder/utils/MessageEditor.java @@ -7,29 +7,30 @@ import java.time.Instant; public class MessageEditor { - public EmbedBuilder setDefaultSettings(MessageType type, EmbedBuilder embedBuilder) { - switch (type) { + public EmbedBuilder setDefaultSettings(MessageType type) { + EmbedBuilder builder = new EmbedBuilder(); + switch (type) { case INFO: - embedBuilder.setColor(new Color(47,94,105)).setTimestamp(Instant.now()); + builder.setColor(new Color(47,94,105)).setTimestamp(Instant.now()); break; case ERROR: - embedBuilder.setColor(Color.RED).setTimestamp(Instant.now()); + builder.setColor(Color.RED).setTimestamp(Instant.now()); break; case WARNING: - embedBuilder.setColor(Color.ORANGE).setTimestamp(Instant.now()); + builder.setColor(Color.ORANGE).setTimestamp(Instant.now()); break; case NO_PERMISSION: - embedBuilder.setTitle("⛔ No Permission ⛔").setDescription("You are not authorized to execute this command!").setColor(Color.RED).setTimestamp(Instant.now()); + builder.setTitle("⛔ No Permission ⛔").setDescription("You are not authorized to execute this command!").setColor(Color.RED).setTimestamp(Instant.now()); break; case NO_SELF_PERMISSION: - embedBuilder.setTitle("⛔ No Permission ⛔").setDescription("Unfortunately, I do not have the required rights to perform this action").setColor(Color.RED).setTimestamp(Instant.now()); + builder.setTitle("⛔ No Permission ⛔").setDescription("Unfortunately, I do not have the required rights to perform this action").setColor(Color.RED).setTimestamp(Instant.now()); break; } - return embedBuilder; + return builder; } public enum MessageType { From 7f44c2358be9fbdb301de4538911febb0359451e Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sat, 30 Nov 2019 12:50:48 +0100 Subject: [PATCH 45/67] SelfMentionListener fix --- src/main/java/com/bbn/hadder/listener/MentionListener.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/bbn/hadder/listener/MentionListener.java b/src/main/java/com/bbn/hadder/listener/MentionListener.java index f356a9a..39b64d2 100644 --- a/src/main/java/com/bbn/hadder/listener/MentionListener.java +++ b/src/main/java/com/bbn/hadder/listener/MentionListener.java @@ -21,14 +21,14 @@ public class MentionListener extends ListenerAdapter { public void onMessageReceived(@Nonnull MessageReceivedEvent event) { if (event.isFromType(ChannelType.TEXT)) { if (event.getMessage().getContentRaw().equals(event.getGuild().getSelfMember().getAsMention())) { - EmbedBuilder builder = new EmbedBuilder() + event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle("Hello I'm Hadder.") .setAuthor(event.getJDA().getSelfUser().getName(), event.getJDA().getSelfUser().getAvatarUrl(), event.getJDA().getSelfUser().getAvatarUrl()) .addField("Users", String.valueOf(event.getJDA().getUsers().size()), false) .addField("Guilds", String.valueOf(event.getJDA().getGuilds().size()), false) .addField("Prefix (User)", rethink.getUserPrefix(event.getAuthor().getId()), false) - .addField("Prefix (Guild)", rethink.getGuildPrefix(event.getGuild().getId()), false); - event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).build()).queue(); + .addField("Prefix (Guild)", rethink.getGuildPrefix(event.getGuild().getId()), false) + .build()).queue(); } } } From 7abbe283256809ac1395e26511de83e51791f2c9 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sat, 30 Nov 2019 12:52:36 +0100 Subject: [PATCH 46/67] PrivateMessageListener fix --- .../com/bbn/hadder/listener/GuildListener.java | 3 --- .../java/com/bbn/hadder/listener/LinkListener.java | 1 - .../hadder/listener/PrivateMessageListener.java | 14 +++++++++----- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/bbn/hadder/listener/GuildListener.java b/src/main/java/com/bbn/hadder/listener/GuildListener.java index 6cbf2d7..920f10c 100644 --- a/src/main/java/com/bbn/hadder/listener/GuildListener.java +++ b/src/main/java/com/bbn/hadder/listener/GuildListener.java @@ -8,7 +8,6 @@ import com.bbn.hadder.Rethink; import com.bbn.hadder.core.Config; import com.bbn.hadder.utils.BotList; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import net.dv8tion.jda.api.entities.Member; import net.dv8tion.jda.api.events.guild.GuildJoinEvent; import net.dv8tion.jda.api.events.guild.GuildLeaveEvent; @@ -37,7 +36,6 @@ public class GuildListener extends ListenerAdapter { }).start(); rethink.insertGuild(event.getGuild().getId()); - EmbedBuilder builder = new EmbedBuilder(); event.getJDA().getTextChannelById("475722540140986369").sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle("Joined Server") .setThumbnail(event.getGuild().getIconUrl()) @@ -53,7 +51,6 @@ public class GuildListener extends ListenerAdapter { } public void onGuildLeave(GuildLeaveEvent event) { - EmbedBuilder builder = new EmbedBuilder(); event.getJDA().getTextChannelById("475722540140986369").sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle("Left Server") .setThumbnail(event.getGuild().getIconUrl()) diff --git a/src/main/java/com/bbn/hadder/listener/LinkListener.java b/src/main/java/com/bbn/hadder/listener/LinkListener.java index cffe561..5c34a70 100644 --- a/src/main/java/com/bbn/hadder/listener/LinkListener.java +++ b/src/main/java/com/bbn/hadder/listener/LinkListener.java @@ -3,7 +3,6 @@ package com.bbn.hadder.listener; import com.bbn.hadder.Rethink; import com.bbn.hadder.core.LinkUtils; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import net.dv8tion.jda.api.Permission; import net.dv8tion.jda.api.entities.MessageEmbed; import net.dv8tion.jda.api.events.message.MessageReceivedEvent; diff --git a/src/main/java/com/bbn/hadder/listener/PrivateMessageListener.java b/src/main/java/com/bbn/hadder/listener/PrivateMessageListener.java index f542d21..da43ef8 100644 --- a/src/main/java/com/bbn/hadder/listener/PrivateMessageListener.java +++ b/src/main/java/com/bbn/hadder/listener/PrivateMessageListener.java @@ -22,14 +22,18 @@ public class PrivateMessageListener extends ListenerAdapter { PrivateChannel Skidder = event.getJDA().getUserById("477141528981012511").openPrivateChannel().complete(); PrivateChannel Hax = event.getJDA().getUserById("261083609148948488").openPrivateChannel().complete(); - EmbedBuilder message = new EmbedBuilder() + Skidder.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) .setTitle("New DM by " + event.getAuthor().getAsTag()) .setAuthor(event.getAuthor().getName(), event.getAuthor().getAvatarUrl(), event.getAuthor().getAvatarUrl()) .setDescription(event.getMessage().getContentRaw()) - .setTimestamp(Instant.now()); - - Skidder.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).build()).queue(); - Hax.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).build()).queue(); + .setTimestamp(Instant.now()) + .build()).queue(); + Hax.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("New DM by " + event.getAuthor().getAsTag()) + .setAuthor(event.getAuthor().getName(), event.getAuthor().getAvatarUrl(), event.getAuthor().getAvatarUrl()) + .setDescription(event.getMessage().getContentRaw()) + .setTimestamp(Instant.now()) + .build()).queue(); } } } From 459fa9cffd241fb49f9140e1b30864106c0dc8e8 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sat, 30 Nov 2019 14:37:52 +0100 Subject: [PATCH 47/67] Remove Unused Imports --- .../commands/moderation/RoleCommand.java | 1 - .../hadder/commands/nsfw/BoobsCommand.java | 1 - .../bbn/hadder/commands/nsfw/CumCommand.java | 1 - .../bbn/hadder/listener/CommandListener.java | 14 ++++++------- .../bbn/hadder/listener/MentionListener.java | 21 ++++++++----------- .../listener/PrivateMessageListener.java | 1 - .../bbn/hadder/listener/RulesListener.java | 14 +++++-------- 7 files changed, 20 insertions(+), 33 deletions(-) diff --git a/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java index 091a104..1647df8 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java @@ -3,7 +3,6 @@ package com.bbn.hadder.commands.moderation; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import net.dv8tion.jda.api.Permission; import net.dv8tion.jda.api.entities.Member; import net.dv8tion.jda.api.entities.Role; diff --git a/src/main/java/com/bbn/hadder/commands/nsfw/BoobsCommand.java b/src/main/java/com/bbn/hadder/commands/nsfw/BoobsCommand.java index 0b85d18..3b74e25 100644 --- a/src/main/java/com/bbn/hadder/commands/nsfw/BoobsCommand.java +++ b/src/main/java/com/bbn/hadder/commands/nsfw/BoobsCommand.java @@ -7,7 +7,6 @@ package com.bbn.hadder.commands.nsfw; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; diff --git a/src/main/java/com/bbn/hadder/commands/nsfw/CumCommand.java b/src/main/java/com/bbn/hadder/commands/nsfw/CumCommand.java index 774c380..acb2da9 100644 --- a/src/main/java/com/bbn/hadder/commands/nsfw/CumCommand.java +++ b/src/main/java/com/bbn/hadder/commands/nsfw/CumCommand.java @@ -7,7 +7,6 @@ package com.bbn.hadder.commands.nsfw; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import okhttp3.OkHttpClient; import okhttp3.Request; import okhttp3.Response; diff --git a/src/main/java/com/bbn/hadder/listener/CommandListener.java b/src/main/java/com/bbn/hadder/listener/CommandListener.java index b0d4bc9..82df7a8 100644 --- a/src/main/java/com/bbn/hadder/listener/CommandListener.java +++ b/src/main/java/com/bbn/hadder/listener/CommandListener.java @@ -22,14 +22,12 @@ public class CommandListener extends ListenerAdapter { @Override public void onMessageReceived(MessageReceivedEvent event) { - if (event.isFromType(ChannelType.TEXT)) { - if (!event.getAuthor().isBot()) { - String[] prefixes = {rethink.getUserPrefix(event.getAuthor().getId()), rethink.getGuildPrefix(event.getGuild().getId()), event.getGuild().getSelfMember().getAsMention()+" ", event.getGuild().getSelfMember().getAsMention()}; - for (String prefix : prefixes) { - if (event.getMessage().getContentRaw().startsWith(prefix)) { - handler.handle(event, rethink, prefix); - return; - } + if (event.isFromType(ChannelType.TEXT) && !event.getAuthor().isBot()) { + String[] prefixes = {rethink.getUserPrefix(event.getAuthor().getId()), rethink.getGuildPrefix(event.getGuild().getId()), event.getGuild().getSelfMember().getAsMention() + " ", event.getGuild().getSelfMember().getAsMention()}; + for (String prefix : prefixes) { + if (event.getMessage().getContentRaw().startsWith(prefix)) { + handler.handle(event, rethink, prefix); + return; } } } diff --git a/src/main/java/com/bbn/hadder/listener/MentionListener.java b/src/main/java/com/bbn/hadder/listener/MentionListener.java index 39b64d2..3d46a3d 100644 --- a/src/main/java/com/bbn/hadder/listener/MentionListener.java +++ b/src/main/java/com/bbn/hadder/listener/MentionListener.java @@ -2,7 +2,6 @@ package com.bbn.hadder.listener; import com.bbn.hadder.Rethink; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import net.dv8tion.jda.api.entities.ChannelType; import net.dv8tion.jda.api.events.message.MessageReceivedEvent; import net.dv8tion.jda.api.hooks.ListenerAdapter; @@ -19,17 +18,15 @@ public class MentionListener extends ListenerAdapter { @Override public void onMessageReceived(@Nonnull MessageReceivedEvent event) { - if (event.isFromType(ChannelType.TEXT)) { - if (event.getMessage().getContentRaw().equals(event.getGuild().getSelfMember().getAsMention())) { - event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("Hello I'm Hadder.") - .setAuthor(event.getJDA().getSelfUser().getName(), event.getJDA().getSelfUser().getAvatarUrl(), event.getJDA().getSelfUser().getAvatarUrl()) - .addField("Users", String.valueOf(event.getJDA().getUsers().size()), false) - .addField("Guilds", String.valueOf(event.getJDA().getGuilds().size()), false) - .addField("Prefix (User)", rethink.getUserPrefix(event.getAuthor().getId()), false) - .addField("Prefix (Guild)", rethink.getGuildPrefix(event.getGuild().getId()), false) - .build()).queue(); - } + if (event.isFromType(ChannelType.TEXT) && event.getMessage().getContentRaw().equals(event.getGuild().getSelfMember().getAsMention())) { + event.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Hello I'm Hadder.") + .setAuthor(event.getJDA().getSelfUser().getName(), event.getJDA().getSelfUser().getAvatarUrl(), event.getJDA().getSelfUser().getAvatarUrl()) + .addField("Users", String.valueOf(event.getJDA().getUsers().size()), false) + .addField("Guilds", String.valueOf(event.getJDA().getGuilds().size()), false) + .addField("Prefix (User)", rethink.getUserPrefix(event.getAuthor().getId()), false) + .addField("Prefix (Guild)", rethink.getGuildPrefix(event.getGuild().getId()), false) + .build()).queue(); } } } diff --git a/src/main/java/com/bbn/hadder/listener/PrivateMessageListener.java b/src/main/java/com/bbn/hadder/listener/PrivateMessageListener.java index da43ef8..f0b4b40 100644 --- a/src/main/java/com/bbn/hadder/listener/PrivateMessageListener.java +++ b/src/main/java/com/bbn/hadder/listener/PrivateMessageListener.java @@ -5,7 +5,6 @@ package com.bbn.hadder.listener; */ import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import net.dv8tion.jda.api.entities.ChannelType; import net.dv8tion.jda.api.entities.PrivateChannel; import net.dv8tion.jda.api.events.message.MessageReceivedEvent; diff --git a/src/main/java/com/bbn/hadder/listener/RulesListener.java b/src/main/java/com/bbn/hadder/listener/RulesListener.java index 5c225e6..7b35d9b 100644 --- a/src/main/java/com/bbn/hadder/listener/RulesListener.java +++ b/src/main/java/com/bbn/hadder/listener/RulesListener.java @@ -23,11 +23,9 @@ public class RulesListener extends ListenerAdapter { if (!event.getMember().getUser().isBot()) { if (event.getReactionEmote().getEmoji().equals("✅")) { event.getGuild().addRoleToMember(event.getMember(), event.getGuild().getRoleById(rethink.getRulesRID(event.getGuild().getId()))).reason("Accepted rules").queue(); - } else if (event.getReactionEmote().getEmoji().equals("❌")) { - if (event.getGuild().getSelfMember().canInteract(event.getMember())) { - event.getReaction().removeReaction().queue(); - event.getMember().kick().reason("Declined the rules"); - } + } else if (event.getReactionEmote().getEmoji().equals("❌") && event.getGuild().getSelfMember().canInteract(event.getMember())) { + event.getReaction().removeReaction().queue(); + event.getMember().kick().reason("Declined the rules"); } } } @@ -36,10 +34,8 @@ public class RulesListener extends ListenerAdapter { @Override public void onMessageReactionRemove(MessageReactionRemoveEvent event) { if (event.getMessageId().equals(rethink.getRulesMID(event.getGuild().getId()))) { - if (!event.getMember().getUser().isBot()) { - if (event.getReactionEmote().getEmoji().equals("✅")) { - event.getGuild().removeRoleFromMember(event.getMember(), event.getGuild().getRoleById(rethink.getRulesRID(event.getGuild().getId()))).reason("Withdrawal of the acceptance of the rules").queue(); - } + if (!event.getMember().getUser().isBot() && event.getReactionEmote().getEmoji().equals("✅")) { + event.getGuild().removeRoleFromMember(event.getMember(), event.getGuild().getRoleById(rethink.getRulesRID(event.getGuild().getId()))).reason("Withdrawal of the acceptance of the rules").queue(); } } } From 91047e5b056b1621e574c31c55b67e3b8968303f Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sat, 30 Nov 2019 14:39:51 +0100 Subject: [PATCH 48/67] Codacy Badge --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 668a57d..8cf4149 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,7 @@ The Hadder Discord bot is a multi-purpose Discord Bot. [![Build Status](https://github.com/BigBotNetwork/Hadder/workflows/Hadder/badge.svg)](https://github.com/BigBotNetwork/Hadder) +[![Codacy Badge](https://api.codacy.com/project/badge/Grade/ddb8cb7ec85f467caa691c175e1f01b5)](https://www.codacy.com/gh/BigBotNetwork/Hadder?utm_source=github.com&utm_medium=referral&utm_content=BigBotNetwork/Hadder&utm_campaign=Badge_Grade) [![Discord Bots](https://top.gg/api/widget/637002314162372639.svg)](https://top.gg/bot/637002314162372639) From eac328ea6b33f864e94e76de84413ae986f46c7d Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sat, 30 Nov 2019 20:21:11 +0100 Subject: [PATCH 49/67] setAutoReconnect --- src/main/java/com/bbn/hadder/Hadder.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/com/bbn/hadder/Hadder.java b/src/main/java/com/bbn/hadder/Hadder.java index b525a64..d228513 100644 --- a/src/main/java/com/bbn/hadder/Hadder.java +++ b/src/main/java/com/bbn/hadder/Hadder.java @@ -35,6 +35,7 @@ public class Hadder { DefaultShardManagerBuilder builder = new DefaultShardManagerBuilder(); + builder.setAutoReconnect(true); builder.setShardsTotal(1); builder.setActivity(Activity.streaming("on the BigBotNetwork", "https://twitch.tv/BigBotNetwork")); builder.setToken(config.getBotToken()); From 2ada69c8f17ded3d861f58704511c77a86e91c98 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sun, 1 Dec 2019 09:44:19 +0100 Subject: [PATCH 50/67] New Widget --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 8cf4149..3508381 100644 --- a/README.md +++ b/README.md @@ -8,3 +8,4 @@ The Hadder Discord bot is a multi-purpose Discord Bot. [![Discord Bots](https://top.gg/api/widget/637002314162372639.svg)](https://top.gg/bot/637002314162372639) +[![Hadder's Widget](https://api.botlist.space/widget/637002314162372639/2 "Hadder's Widget")](https://botlist.space/bot/637002314162372639?utm_source=bls&utm_medium=widget&utm_campaign=637002314162372639) From d414539814784b535f12c079dfc6e8bad4dc4306 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sun, 1 Dec 2019 09:53:22 +0100 Subject: [PATCH 51/67] Add BotList.Space --- src/main/java/com/bbn/hadder/core/Config.java | 4 ++++ src/main/java/com/bbn/hadder/utils/BotList.java | 17 ++++++++++++++++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/bbn/hadder/core/Config.java b/src/main/java/com/bbn/hadder/core/Config.java index 93729e1..7abbf78 100644 --- a/src/main/java/com/bbn/hadder/core/Config.java +++ b/src/main/java/com/bbn/hadder/core/Config.java @@ -137,4 +137,8 @@ public class Config { public String getDiscordBotsToken() { return config.getJSONObject("Tokens").getString("DiscordBots"); } + + public String getBotListSpaceToken() { + return config.getJSONObject("Tokens").getString("BotListSpace"); + } } diff --git a/src/main/java/com/bbn/hadder/utils/BotList.java b/src/main/java/com/bbn/hadder/utils/BotList.java index 042cd47..b86bc0d 100644 --- a/src/main/java/com/bbn/hadder/utils/BotList.java +++ b/src/main/java/com/bbn/hadder/utils/BotList.java @@ -27,6 +27,7 @@ public class BotList { private static String DiscordExtremeList = "https://discordextremelist.xyz/api/bot/637002314162372639"; private static String DiscordBotReviews = "https://discordbotreviews.xyz/api/bot/637002314162372639/stats"; private static String DiscordBots = "https://top.gg/api/bots/637002314162372639/stats"; + private static String BotListSpace = "https://api.botlist.space/v1/bots/:637002314162372639"; private Config config; @@ -179,7 +180,21 @@ public class BotList { } catch (IOException e) { e.printStackTrace(); } + + // BotListSpace + + Request botlistspace = new Request.Builder() + .url(BotListSpace) + .post(body) + .addHeader("Authorization", config.getBotListSpaceToken()) + .build(); + + try { + new OkHttpClient().newCall(botlistspace).execute().close(); + System.out.println("Successfully posted count to BotList.Space!"); + } catch (IOException e) { + e.printStackTrace(); + } } } - } From 6cb0ab4c4bd283d8ac434872a5a8131e0a7391c5 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Sun, 1 Dec 2019 10:02:12 +0100 Subject: [PATCH 52/67] Remove ":" --- src/main/java/com/bbn/hadder/utils/BotList.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/bbn/hadder/utils/BotList.java b/src/main/java/com/bbn/hadder/utils/BotList.java index b86bc0d..5bbba34 100644 --- a/src/main/java/com/bbn/hadder/utils/BotList.java +++ b/src/main/java/com/bbn/hadder/utils/BotList.java @@ -27,7 +27,7 @@ public class BotList { private static String DiscordExtremeList = "https://discordextremelist.xyz/api/bot/637002314162372639"; private static String DiscordBotReviews = "https://discordbotreviews.xyz/api/bot/637002314162372639/stats"; private static String DiscordBots = "https://top.gg/api/bots/637002314162372639/stats"; - private static String BotListSpace = "https://api.botlist.space/v1/bots/:637002314162372639"; + private static String BotListSpace = "https://api.botlist.space/v1/bots/637002314162372639"; private Config config; From fd2258a6fbfb8be0e74a01bd43128f033c09955a Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Mon, 2 Dec 2019 08:02:08 +0100 Subject: [PATCH 53/67] GuildPrefix Message Fix --- .../com/bbn/hadder/commands/moderation/GuildPrefixCommand.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/bbn/hadder/commands/moderation/GuildPrefixCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/GuildPrefixCommand.java index bd91d1d..38b9d21 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/GuildPrefixCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/GuildPrefixCommand.java @@ -14,7 +14,7 @@ public class GuildPrefixCommand implements Command { if (!args[0].contains("\"")) { event.getRethink().setGuildPrefix(args[0], event.getGuild().getId()); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).setTitle("✅ Successfully set ✅").setDescription("I successfully set the new prefix for you to " + args[0]).build()).queue(); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).setTitle("✅ Successfully set ✅").setDescription("I successfully set the new prefix for the guild to " + args[0]).build()).queue(); } else { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING).setDescription("The prefix must not contain **\"**").build()).queue(); } From 40e4215d6098c90da7daeed78b05431057158fb8 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Mon, 2 Dec 2019 08:28:20 +0100 Subject: [PATCH 54/67] Invite Link Detector --- src/main/java/com/bbn/hadder/Hadder.java | 2 + src/main/java/com/bbn/hadder/Rethink.java | 45 ++++--- .../moderation/InviteDetectCommand.java | 71 +++++++++++ .../hadder/listener/InviteLinkListener.java | 118 ++++++++++++++++++ .../com/bbn/hadder/listener/LinkListener.java | 5 +- 5 files changed, 221 insertions(+), 20 deletions(-) create mode 100644 src/main/java/com/bbn/hadder/commands/moderation/InviteDetectCommand.java create mode 100644 src/main/java/com/bbn/hadder/listener/InviteLinkListener.java diff --git a/src/main/java/com/bbn/hadder/Hadder.java b/src/main/java/com/bbn/hadder/Hadder.java index d228513..8125491 100644 --- a/src/main/java/com/bbn/hadder/Hadder.java +++ b/src/main/java/com/bbn/hadder/Hadder.java @@ -78,6 +78,7 @@ public class Hadder { new LeaveCommand(), new GuildLeaveCommand(), new MemeCommand(), + new InviteDetectCommand(), new LinkCommand()), config, helpCommand); builder.addEventListeners( @@ -87,6 +88,7 @@ public class Hadder { new GuildListener(rethink, config), new ReadyListener(rethink, config), new LinkListener(rethink), + new InviteLinkListener(rethink), new RulesListener(rethink)); try { diff --git a/src/main/java/com/bbn/hadder/Rethink.java b/src/main/java/com/bbn/hadder/Rethink.java index e6ce4d6..5b41cd8 100644 --- a/src/main/java/com/bbn/hadder/Rethink.java +++ b/src/main/java/com/bbn/hadder/Rethink.java @@ -32,7 +32,7 @@ public class Rethink { .connect(); System.out.println("DB CONNECTED"); } catch (Exception e) { - System.out.println(e.toString()); + e.printStackTrace(); System.out.println("DB CONNECTION FAILED"); } } @@ -59,7 +59,7 @@ public class Rethink { } private String update(String table, String wherevalue, String what, String whatvalue) { - String out=""; + String out = ""; try { Cursor cursor = r.table(table).get(wherevalue).update(r.hashMap(what, whatvalue)).run(conn); out=cursor.toString(); @@ -95,16 +95,16 @@ public class Rethink { } - public String setUserPrefix(String prefix, String userid) { - return this.update("user", userid, "prefix", prefix); + public void setUserPrefix(String prefix, String userid) { + this.update("user", userid, "prefix", prefix); } public String getUserPrefix(String id) { return (String) this.get("user", "id", id, "prefix"); } - public String setGuildPrefix(String prefix, String guildid) { - return this.update("server", guildid, "prefix", prefix); + public void setGuildPrefix(String prefix, String guildid) { + this.update("server", guildid, "prefix", prefix); } public String getGuildPrefix(String id) { @@ -115,12 +115,12 @@ public class Rethink { return new JSONArray((String) this.get("server", "id", id, "links")); } - public String addLinkedGuild(String guildid, String linkid) { + public void addLinkedGuild(String guildid, String linkid) { JSONArray links = getLinks(guildid); for (int i = 0; links.length()>i; i++) { - if (links.getString(i).equals(linkid)) return null; + if (links.getString(i).equals(linkid)) return; } - return this.update("server", guildid, "links", this.getLinks(guildid).put(linkid).toString()); + this.update("server", guildid, "links", this.getLinks(guildid).put(linkid).toString()); } public String removeLinkedGuild(String guildid, String linkid) { @@ -134,26 +134,25 @@ public class Rethink { return this.update("server", guildid, "links", linkedguildslist.toString()); } - public String setLinkChannel(String guildid, String channelid) { - return this.update("server", guildid, "linkchannel", channelid); + public void setLinkChannel(String guildid, String channelid) { + this.update("server", guildid, "linkchannel", channelid); } public String getLinkChannel(String guildid) { return (String) this.get("server", "id", guildid, "linkchannel"); } - public String insertGuild(String id) { - return this.insert("server", r.hashMap("id", id).with("prefix", "h.").with("links", "[]").with("linkchannel", "").with("message_id", "").with("role_id", "")); + public void insertGuild(String id) { + this.insert("server", r.hashMap("id", id).with("prefix", "h.").with("links", "[]").with("linkchannel", "").with("message_id", "").with("role_id", "").with("invite_detect", false)); } - public String insertUser(String id) { - return this.insert("user", r.hashMap("id", id).with("prefix", "h.")); + public void insertUser(String id) { + this.insert("user", r.hashMap("id", id).with("prefix", "h.")); } - public String updateRules(String guild_id, String message_id, String role_id) { + public void updateRules(String guild_id, String message_id, String role_id) { this.update("server", guild_id, "message_id", message_id); this.update("server", guild_id, "role_id", role_id); - return null; } public String getRulesMID(String guild_id) { @@ -164,4 +163,16 @@ public class Rethink { return (String) this.get("server", "id", guild_id, "role_id"); } + public void setInviteDetection(String guild_id, boolean b) { + try { + r.table("server").get(guild_id).update(r.hashMap("invite_detect", b)).run(conn); + } catch (ClassCastException e) { + e.printStackTrace(); + } + } + + public Boolean getInviteDetection(String guild_id) { + return (Boolean) this.get("server", "id", guild_id, "invite_detect"); + } + } diff --git a/src/main/java/com/bbn/hadder/commands/moderation/InviteDetectCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/InviteDetectCommand.java new file mode 100644 index 0000000..4a5a6d2 --- /dev/null +++ b/src/main/java/com/bbn/hadder/commands/moderation/InviteDetectCommand.java @@ -0,0 +1,71 @@ +package com.bbn.hadder.commands.moderation; + +/* + * @author Skidder / GregTCLTK + */ + +import com.bbn.hadder.commands.Command; +import com.bbn.hadder.commands.CommandEvent; +import com.bbn.hadder.utils.MessageEditor; +import net.dv8tion.jda.api.Permission; + +public class InviteDetectCommand implements Command { + + @Override + public void executed(String[] args, CommandEvent event) { + if (args.length == 1) { + if (event.getMember().hasPermission(Permission.MANAGE_SERVER)) { + switch (args[0].toLowerCase()) { + case "on": + if (!event.getRethink().getInviteDetection(event.getGuild().getId())) { + event.getRethink().setInviteDetection(event.getGuild().getId(), true); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Successfully activated") + .setDescription("I successfully activated the invite link detection for this guild.") + .build()).queue(); + } else { + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING) + .setTitle("Already activated") + .setDescription("The invite link detection is already activated on this guild.") + .build()).queue(); + } + break; + + case "off": + if (event.getRethink().getInviteDetection(event.getGuild().getId())) { + event.getRethink().setInviteDetection(event.getGuild().getId(), false); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Successfully deactivated") + .setDescription("I successfully deactivated the invite link detection for this guild.") + .build()).queue(); + } else { + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING) + .setTitle("Already deactivated") + .setDescription("The invite link detection is already deactivated on this guild.") + .build()).queue(); + } + break; + } + } else { + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); + } + } else { + event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); + } + } + + @Override + public String[] labels() { + return new String[]{"invitedetect", "detectinvite"}; + } + + @Override + public String description() { + return "Activate or deactivate the Discord invite link detection."; + } + + @Override + public String usage() { + return ""; + } +} diff --git a/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java b/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java new file mode 100644 index 0000000..96d18f0 --- /dev/null +++ b/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java @@ -0,0 +1,118 @@ +package com.bbn.hadder.listener; + +/* + * @author Skidder / GregTCLTK + */ + +import com.bbn.hadder.Rethink; +import com.bbn.hadder.utils.MessageEditor; +import net.dv8tion.jda.api.Permission; +import net.dv8tion.jda.api.entities.ChannelType; +import net.dv8tion.jda.api.events.message.MessageReceivedEvent; +import net.dv8tion.jda.api.events.message.MessageUpdateEvent; +import net.dv8tion.jda.api.hooks.ListenerAdapter; +import okhttp3.OkHttpClient; +import okhttp3.Request; +import okhttp3.Response; +import org.json.JSONObject; + +import javax.annotation.Nonnull; + +public class InviteLinkListener extends ListenerAdapter { + + private Rethink rethink; + + public InviteLinkListener(Rethink rethink) { + this.rethink = rethink; + } + + @Override + public void onMessageReceived(@Nonnull MessageReceivedEvent event) { + if (event.isFromType(ChannelType.TEXT)) { + if (event.getMessage().getContentRaw().contains("discord.gg/")) { + if (!event.getMember().hasPermission(Permission.ADMINISTRATOR)) { + if (rethink.getInviteDetection(event.getGuild().getId())) { + String split = event.getMessage().getContentRaw().split("discord.gg/", 10)[1]; + String invite = split.split(" ")[0]; + OkHttpClient client = new OkHttpClient(); + Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/invites/" + invite).build(); + try { + Response response = client.newCall(request).execute(); + JSONObject json = new JSONObject(response.body().string()); + if (!json.toString().contains("\"message\":")) { + event.getMessage().delete().reason("Invite Link detected").queue(); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + } else { + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); + } + } else if (event.getMessage().getContentRaw().contains("discordapp.com/invite")) { + if (!event.getMember().hasPermission(Permission.ADMINISTRATOR)) { + if (rethink.getInviteDetection(event.getGuild().getId())) { + String split = event.getMessage().getContentRaw().split("discordapp.com/invite/", 10)[1]; + String invite = split.split(" ")[0]; + OkHttpClient client = new OkHttpClient(); + Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/invites/" + invite).build(); + try { + Response response = client.newCall(request).execute(); + JSONObject json = new JSONObject(response.body().string()); + if (!json.toString().contains("\"message\":")) { + event.getMessage().delete().reason("Invite Link detected").queue(); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + } + } + } + } + + @Override + public void onMessageUpdate(@Nonnull MessageUpdateEvent event) { + if (event.isFromType(ChannelType.TEXT)) { + if (event.getMessage().getContentRaw().contains("discord.gg/")) { + if (event.getMember().hasPermission(Permission.MANAGE_SERVER)) { + if (rethink.getInviteDetection(event.getGuild().getId())) { + String split = event.getMessage().getContentRaw().split("discord.gg/", 10)[1]; + String invite = split.split(" ")[0]; + OkHttpClient client = new OkHttpClient(); + Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/invites/" + invite).build(); + try { + Response response = client.newCall(request).execute(); + JSONObject json = new JSONObject(response.body().string()); + if (!json.toString().contains("\"message\":")) { + event.getMessage().delete().reason("Invite Link detected").queue(); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + } else { + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); + } + } else if (event.getMessage().getContentRaw().contains("discordapp.com/invite")) { + if (event.getMember().hasPermission(Permission.MANAGE_SERVER)) { + if (rethink.getInviteDetection(event.getGuild().getId())) { + String split = event.getMessage().getContentRaw().split("discordapp.com/invite/", 10)[1]; + String invite = split.split(" ")[0]; + OkHttpClient client = new OkHttpClient(); + Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/invites/" + invite).build(); + try { + Response response = client.newCall(request).execute(); + JSONObject json = new JSONObject(response.body().string()); + if (!json.toString().contains("\"message\":")) { + event.getMessage().delete().reason("Invite Link detected").queue(); + } + } catch (Exception e) { + e.printStackTrace(); + } + } + } + } + } + } +} diff --git a/src/main/java/com/bbn/hadder/listener/LinkListener.java b/src/main/java/com/bbn/hadder/listener/LinkListener.java index 5c34a70..5981d05 100644 --- a/src/main/java/com/bbn/hadder/listener/LinkListener.java +++ b/src/main/java/com/bbn/hadder/listener/LinkListener.java @@ -4,6 +4,7 @@ import com.bbn.hadder.Rethink; import com.bbn.hadder.core.LinkUtils; import com.bbn.hadder.utils.MessageEditor; import net.dv8tion.jda.api.Permission; +import net.dv8tion.jda.api.entities.ChannelType; import net.dv8tion.jda.api.entities.MessageEmbed; import net.dv8tion.jda.api.events.message.MessageReceivedEvent; import net.dv8tion.jda.api.events.message.react.MessageReactionAddEvent; @@ -70,11 +71,9 @@ public class LinkListener extends ListenerAdapter { @Override public void onMessageReceived(@Nonnull MessageReceivedEvent event) { - if (!event.isWebhookMessage()) { - if (event.getChannel().getId().equals(rethink.getLinkChannel(event.getGuild().getId()))) { + if (!event.isWebhookMessage() && event.getChannel().getId().equals(rethink.getLinkChannel(event.getGuild().getId())) && event.isFromType(ChannelType.TEXT)) { new LinkUtils().sendAll(rethink.getLinks(event.getGuild().getId()), event.getJDA(), event.getMessage(), event.getAuthor(), new ArrayList<>() { }, rethink, false); - } } } } From 79c6e5ddee42af6b69afb5c2e646dee73bc807ff Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Mon, 2 Dec 2019 08:43:48 +0100 Subject: [PATCH 55/67] Eval Command fix --- .../hadder/commands/owner/EvalCommand.java | 28 ++++++++++--------- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java b/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java index 216b076..189a156 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java @@ -8,14 +8,12 @@ import com.bbn.hadder.Hadder; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.EmbedBuilder; import javax.script.ScriptEngine; import javax.script.ScriptEngineManager; import javax.script.ScriptException; import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; -import java.util.concurrent.ScheduledFuture; import java.util.concurrent.TimeUnit; public class EvalCommand implements Command { @@ -46,11 +44,10 @@ public class EvalCommand implements Command { ScheduledExecutorService service = Executors.newScheduledThreadPool(1); - ScheduledFuture future = service.schedule(() -> { + service.schedule(() -> { long startExec = System.currentTimeMillis(); - Object out = null; - EmbedBuilder builder = new EmbedBuilder(); + Object out; try { String script = ""; @@ -58,17 +55,22 @@ public class EvalCommand implements Command { args[i] = args[i].replace("```java", "").replace("```", ""); script += i == args.length-1 ? args[i]:args[i]+" "; } - builder.addField("Input", "```java\n\n" + script + "```", false); - out = engine.eval(script); - builder.addField("Output", "```java\n\n" + out.toString() + "```", false); + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Eval Command") + .addField("Input", "```java\n\n" + script + "```", false) + .addField("Output", "```java\n\n" + out.toString() + "```", false) + .addField("Timing", System.currentTimeMillis()-startExec + " milliseconds", false) + .build()).queue(); } catch (Exception ex) { - builder.addField("Error", "```java\n\n" + ex.getMessage() + "```", false); - } + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Eval Command") + .addField("Error", "```java\n\n" + ex.getMessage() + "```", false) + .addField("Timing", System.currentTimeMillis()-startExec + " milliseconds", false) + .build()).queue(); - builder.addField("Timing", System.currentTimeMillis()-startExec + " milliseconds", false); - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).setTitle("Eval Command").build()).queue(); + } service.shutdownNow(); @@ -89,7 +91,7 @@ public class EvalCommand implements Command { @Override public String description() { - return "You know what a eval command is ;)"; + return "Execute the given code"; } @Override From d53068dd50f640f81b4d2b249e498999def49401 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Mon, 2 Dec 2019 08:47:48 +0100 Subject: [PATCH 56/67] Code improvements --- .../{misc => general}/EqualsCommand.java | 6 +++++- .../hadder/commands/general/HelpCommand.java | 2 +- .../{misc => general}/InviteCommand.java | 6 +++++- .../com/bbn/hadder/listener/RulesListener.java | 18 +++++++----------- 4 files changed, 18 insertions(+), 14 deletions(-) rename src/main/java/com/bbn/hadder/commands/{misc => general}/EqualsCommand.java (96%) rename src/main/java/com/bbn/hadder/commands/{misc => general}/InviteCommand.java (92%) diff --git a/src/main/java/com/bbn/hadder/commands/misc/EqualsCommand.java b/src/main/java/com/bbn/hadder/commands/general/EqualsCommand.java similarity index 96% rename from src/main/java/com/bbn/hadder/commands/misc/EqualsCommand.java rename to src/main/java/com/bbn/hadder/commands/general/EqualsCommand.java index 71e6b47..d23bead 100644 --- a/src/main/java/com/bbn/hadder/commands/misc/EqualsCommand.java +++ b/src/main/java/com/bbn/hadder/commands/general/EqualsCommand.java @@ -1,10 +1,14 @@ -package com.bbn.hadder.commands.misc; +package com.bbn.hadder.commands.general; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.EventWaiter; import com.bbn.hadder.utils.MessageEditor; +/* + * @author Skidder / GregTCLTK + */ + public class EqualsCommand implements Command { @Override diff --git a/src/main/java/com/bbn/hadder/commands/general/HelpCommand.java b/src/main/java/com/bbn/hadder/commands/general/HelpCommand.java index f86dd29..bb7c868 100644 --- a/src/main/java/com/bbn/hadder/commands/general/HelpCommand.java +++ b/src/main/java/com/bbn/hadder/commands/general/HelpCommand.java @@ -47,7 +47,7 @@ public class HelpCommand implements Command { } else { for (Command cmd : event.getCommandHandler().getCommandList()) { for (String label : cmd.labels()) { - if (label.toLowerCase().equals(args[0])) { + if (label.equalsIgnoreCase(args[0])) { sendHelp(cmd, event.getRethink(), event.getAuthor(), event.getTextChannel()); } } diff --git a/src/main/java/com/bbn/hadder/commands/misc/InviteCommand.java b/src/main/java/com/bbn/hadder/commands/general/InviteCommand.java similarity index 92% rename from src/main/java/com/bbn/hadder/commands/misc/InviteCommand.java rename to src/main/java/com/bbn/hadder/commands/general/InviteCommand.java index a5c90ef..1d99179 100644 --- a/src/main/java/com/bbn/hadder/commands/misc/InviteCommand.java +++ b/src/main/java/com/bbn/hadder/commands/general/InviteCommand.java @@ -1,4 +1,4 @@ -package com.bbn.hadder.commands.misc; +package com.bbn.hadder.commands.general; /* * @author Skidder / GregTCLTK @@ -9,6 +9,10 @@ import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; +/* + * @author Skidder / GregTCLTK + */ + public class InviteCommand implements Command { @Override diff --git a/src/main/java/com/bbn/hadder/listener/RulesListener.java b/src/main/java/com/bbn/hadder/listener/RulesListener.java index 7b35d9b..221ad4a 100644 --- a/src/main/java/com/bbn/hadder/listener/RulesListener.java +++ b/src/main/java/com/bbn/hadder/listener/RulesListener.java @@ -19,24 +19,20 @@ public class RulesListener extends ListenerAdapter { @Override public void onMessageReactionAdd(MessageReactionAddEvent event) { - if (event.getMessageId().equals(rethink.getRulesMID(event.getGuild().getId()))) { - if (!event.getMember().getUser().isBot()) { - if (event.getReactionEmote().getEmoji().equals("✅")) { - event.getGuild().addRoleToMember(event.getMember(), event.getGuild().getRoleById(rethink.getRulesRID(event.getGuild().getId()))).reason("Accepted rules").queue(); - } else if (event.getReactionEmote().getEmoji().equals("❌") && event.getGuild().getSelfMember().canInteract(event.getMember())) { - event.getReaction().removeReaction().queue(); - event.getMember().kick().reason("Declined the rules"); - } + if (event.getMessageId().equals(rethink.getRulesMID(event.getGuild().getId())) && !event.getMember().getUser().isBot()) { + if (event.getReactionEmote().getEmoji().equals("✅")) { + event.getGuild().addRoleToMember(event.getMember(), event.getGuild().getRoleById(rethink.getRulesRID(event.getGuild().getId()))).reason("Accepted rules").queue(); + } else if (event.getReactionEmote().getEmoji().equals("❌") && event.getGuild().getSelfMember().canInteract(event.getMember())) { + event.getReaction().removeReaction().queue(); + event.getMember().kick().reason("Declined the rules"); } } } @Override public void onMessageReactionRemove(MessageReactionRemoveEvent event) { - if (event.getMessageId().equals(rethink.getRulesMID(event.getGuild().getId()))) { - if (!event.getMember().getUser().isBot() && event.getReactionEmote().getEmoji().equals("✅")) { + if (event.getMessageId().equals(rethink.getRulesMID(event.getGuild().getId())) && !event.getMember().getUser().isBot() && event.getReactionEmote().getEmoji().equals("✅")) { event.getGuild().removeRoleFromMember(event.getMember(), event.getGuild().getRoleById(rethink.getRulesRID(event.getGuild().getId()))).reason("Withdrawal of the acceptance of the rules").queue(); - } } } } From 67faa70aaf6a0daa32197f8d7d03037508f6186a Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Mon, 2 Dec 2019 08:56:36 +0100 Subject: [PATCH 57/67] More code improvements --- .../commands/moderation/LinkCommand.java | 3 +- .../hadder/commands/owner/RebootCommand.java | 2 +- .../commands/owner/ShutdownCommand.java | 2 +- .../com/bbn/hadder/listener/LinkListener.java | 60 +++++++++---------- .../listener/PrivateMessageListener.java | 33 +++++----- 5 files changed, 45 insertions(+), 55 deletions(-) diff --git a/src/main/java/com/bbn/hadder/commands/moderation/LinkCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/LinkCommand.java index 5e9c393..84a91a3 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/LinkCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/LinkCommand.java @@ -10,8 +10,7 @@ public class LinkCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { if (args.length == 0) event.getHelpCommand().sendHelp(this, event.getRethink(), event.getAuthor(), event.getTextChannel()); - switch (args[0]) { - + switch (args[0].toLowerCase()) { case "add": if (args.length != 2) return; String linkid = args[1]; diff --git a/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java b/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java index 364c149..cb37c27 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java @@ -14,7 +14,7 @@ public class RebootCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { if (event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { - System.exit(69); + Runtime.getRuntime().exit(69); } else { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } diff --git a/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java b/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java index e904e4c..14cfdd2 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java @@ -16,7 +16,7 @@ public class ShutdownCommand implements Command { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO).setTitle("Shutdown").build()).queue(); event.getJDA().getShardManager().shutdown(); System.out.println("Bot shut down via Command..."); - System.exit(0); + Runtime.getRuntime().exit(69); } else { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } diff --git a/src/main/java/com/bbn/hadder/listener/LinkListener.java b/src/main/java/com/bbn/hadder/listener/LinkListener.java index 5981d05..968c173 100644 --- a/src/main/java/com/bbn/hadder/listener/LinkListener.java +++ b/src/main/java/com/bbn/hadder/listener/LinkListener.java @@ -15,7 +15,7 @@ import java.util.ArrayList; public class LinkListener extends ListenerAdapter { - Rethink rethink; + private Rethink rethink; public LinkListener(Rethink rethink) { this.rethink = rethink; @@ -26,44 +26,38 @@ public class LinkListener extends ListenerAdapter { event.getChannel().retrieveMessageById(event.getMessageId()).queue( msg -> { if (event.getMember().hasPermission(Permission.MANAGE_CHANNEL)) { - if (!event.getMember().getUser().equals(event.getJDA().getSelfUser())) { - if (msg.getAuthor().equals(event.getJDA().getSelfUser())) { - if (msg.getEmbeds().size() == 1) { - if (msg.getEmbeds().get(0).getFooter() == null) { - if (msg.getEmbeds().get(0).getTitle().endsWith(") wants to link guilds!")) { - String requestguild = msg.getEmbeds().get(0).getTitle().replaceAll("\\) wants to link guilds!", ""); - String requestguildid = null; - for (int i = requestguild.length() - 1; i >= 0; i--) { - if (String.valueOf(requestguild.charAt(i)).equals("(")) { - requestguildid = requestguild.substring(i + 1); - break; - } - } - if (requestguildid != null) { - if (event.getReactionEmote().getName().equals("✅")) { - rethink.addLinkedGuild(event.getGuild().getId(), requestguildid); - rethink.addLinkedGuild(requestguildid, event.getGuild().getId()); + if (!event.getMember().getUser().equals(event.getJDA().getSelfUser()) && msg.getAuthor().equals(event.getJDA().getSelfUser()) && msg.getEmbeds().size() == 1 && msg.getEmbeds().get(0).getFooter() == null && msg.getEmbeds().get(0).getTitle().endsWith(") wants to link guilds!")) { + String requestguild = msg.getEmbeds().get(0).getTitle().replaceAll("\\) wants to link guilds!", ""); + String requestguildid = null; + for (int i = requestguild.length() - 1; i >= 0; i--) { + if (String.valueOf(requestguild.charAt(i)).equals("(")) { + requestguildid = requestguild.substring(i + 1); + break; + } + } + if (requestguildid != null) { + if (event.getReactionEmote().getName().equals("✅")) { + rethink.addLinkedGuild(event.getGuild().getId(), requestguildid); + rethink.addLinkedGuild(requestguildid, event.getGuild().getId()); - msg.delete().queue(); + msg.delete().queue(); - MessageEmbed msgembed = new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("Guilds linked!").setDescription("The Guild allowed the link. Have fun!").build(); - event.getChannel().sendMessage(msgembed).queue(); - event.getJDA().getTextChannelById(rethink.getLinkChannel(requestguildid)).sendMessage(msgembed).queue(); - } else if (event.getReactionEmote().getName().equals("❌")) { - msg.delete().queue(); + MessageEmbed msgembed = new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Guilds linked!").setDescription("The Guild allowed the link. Have fun!").build(); + event.getChannel().sendMessage(msgembed).queue(); + event.getJDA().getTextChannelById(rethink.getLinkChannel(requestguildid)).sendMessage(msgembed).queue(); + } else if (event.getReactionEmote().getName().equals("❌")) { + msg.delete().queue(); - MessageEmbed msgembed = new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("Guild linking denied.").setDescription("The Guild denied the link. :(").build(); - event.getChannel().sendMessage(msgembed).queue(); - event.getJDA().getTextChannelById(rethink.getLinkChannel(requestguildid)).sendMessage(msgembed).queue(); - } - } - } - } + MessageEmbed msgembed = new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Guild linking denied.").setDescription("The Guild denied the linking. :(").build(); + event.getChannel().sendMessage(msgembed).queue(); + event.getJDA().getTextChannelById(rethink.getLinkChannel(requestguildid)).sendMessage(msgembed).queue(); } } } + } else { + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } } ); diff --git a/src/main/java/com/bbn/hadder/listener/PrivateMessageListener.java b/src/main/java/com/bbn/hadder/listener/PrivateMessageListener.java index f0b4b40..8672e28 100644 --- a/src/main/java/com/bbn/hadder/listener/PrivateMessageListener.java +++ b/src/main/java/com/bbn/hadder/listener/PrivateMessageListener.java @@ -15,25 +15,22 @@ import java.time.Instant; public class PrivateMessageListener extends ListenerAdapter { public void onMessageReceived(MessageReceivedEvent event) { - if (event.isFromType(ChannelType.PRIVATE)) { - if (!event.getAuthor().getId().equals(event.getJDA().getSelfUser().getId())) { + if (event.isFromType(ChannelType.PRIVATE) && !event.getAuthor().getId().equals(event.getJDA().getSelfUser().getId())) { + PrivateChannel Skidder = event.getJDA().getUserById("477141528981012511").openPrivateChannel().complete(); + PrivateChannel Hax = event.getJDA().getUserById("261083609148948488").openPrivateChannel().complete(); - PrivateChannel Skidder = event.getJDA().getUserById("477141528981012511").openPrivateChannel().complete(); - PrivateChannel Hax = event.getJDA().getUserById("261083609148948488").openPrivateChannel().complete(); - - Skidder.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("New DM by " + event.getAuthor().getAsTag()) - .setAuthor(event.getAuthor().getName(), event.getAuthor().getAvatarUrl(), event.getAuthor().getAvatarUrl()) - .setDescription(event.getMessage().getContentRaw()) - .setTimestamp(Instant.now()) - .build()).queue(); - Hax.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("New DM by " + event.getAuthor().getAsTag()) - .setAuthor(event.getAuthor().getName(), event.getAuthor().getAvatarUrl(), event.getAuthor().getAvatarUrl()) - .setDescription(event.getMessage().getContentRaw()) - .setTimestamp(Instant.now()) - .build()).queue(); - } + Skidder.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("New DM by " + event.getAuthor().getAsTag()) + .setAuthor(event.getAuthor().getName(), event.getAuthor().getAvatarUrl(), event.getAuthor().getAvatarUrl()) + .setDescription(event.getMessage().getContentRaw()) + .setTimestamp(Instant.now()) + .build()).queue(); + Hax.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("New DM by " + event.getAuthor().getAsTag()) + .setAuthor(event.getAuthor().getName(), event.getAuthor().getAvatarUrl(), event.getAuthor().getAvatarUrl()) + .setDescription(event.getMessage().getContentRaw()) + .setTimestamp(Instant.now()) + .build()).queue(); } } } From 8bea23f41b7420e6c593d0d363008648e9d199c5 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Mon, 2 Dec 2019 09:11:15 +0100 Subject: [PATCH 58/67] 4 more improvements --- .../moderation/InviteDetectCommand.java | 3 +- .../commands/moderation/RoleCommand.java | 3 +- .../hadder/listener/InviteLinkListener.java | 112 ++++++++---------- .../com/bbn/hadder/utils/MessageEditor.java | 5 +- 4 files changed, 54 insertions(+), 69 deletions(-) diff --git a/src/main/java/com/bbn/hadder/commands/moderation/InviteDetectCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/InviteDetectCommand.java index 4a5a6d2..f956bd9 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/InviteDetectCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/InviteDetectCommand.java @@ -15,7 +15,8 @@ public class InviteDetectCommand implements Command { public void executed(String[] args, CommandEvent event) { if (args.length == 1) { if (event.getMember().hasPermission(Permission.MANAGE_SERVER)) { - switch (args[0].toLowerCase()) { + String opinion = args[0].toLowerCase(); + switch (opinion) { case "on": if (!event.getRethink().getInviteDetection(event.getGuild().getId())) { event.getRethink().setInviteDetection(event.getGuild().getId(), true); diff --git a/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java index 1647df8..19dfe54 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java @@ -14,7 +14,8 @@ public class RoleCommand implements Command { if (args.length > 0) { if (event.getMember().hasPermission(Permission.MANAGE_ROLES)) { if (event.getGuild().getSelfMember().hasPermission(Permission.MANAGE_ROLES) || event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { - switch (args[0].toLowerCase()) { + String action = args[0].toLowerCase(); + switch (action) { case "add": if (event.getMessage().getMentionedMembers().size() > 0 && event.getMessage().getMentionedRoles().size() > 0) { for (Member member : event.getMessage().getMentionedMembers()) { diff --git a/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java b/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java index 96d18f0..0a6310c 100644 --- a/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java +++ b/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java @@ -30,41 +30,35 @@ public class InviteLinkListener extends ListenerAdapter { public void onMessageReceived(@Nonnull MessageReceivedEvent event) { if (event.isFromType(ChannelType.TEXT)) { if (event.getMessage().getContentRaw().contains("discord.gg/")) { - if (!event.getMember().hasPermission(Permission.ADMINISTRATOR)) { - if (rethink.getInviteDetection(event.getGuild().getId())) { - String split = event.getMessage().getContentRaw().split("discord.gg/", 10)[1]; - String invite = split.split(" ")[0]; - OkHttpClient client = new OkHttpClient(); - Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/invites/" + invite).build(); - try { - Response response = client.newCall(request).execute(); - JSONObject json = new JSONObject(response.body().string()); - if (!json.toString().contains("\"message\":")) { - event.getMessage().delete().reason("Invite Link detected").queue(); - } - } catch (Exception e) { - e.printStackTrace(); + if (!event.getMember().hasPermission(Permission.ADMINISTRATOR) && rethink.getInviteDetection(event.getGuild().getId())) { + String split = event.getMessage().getContentRaw().split("discord.gg/", 10)[1]; + String invite = split.split(" ")[0]; + OkHttpClient client = new OkHttpClient(); + Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/invites/" + invite).build(); + try { + Response response = client.newCall(request).execute(); + JSONObject json = new JSONObject(response.body().string()); + if (!json.toString().contains("\"message\":")) { + event.getMessage().delete().reason("Invite Link detected").queue(); } + } catch (Exception e) { + e.printStackTrace(); } - } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } } else if (event.getMessage().getContentRaw().contains("discordapp.com/invite")) { - if (!event.getMember().hasPermission(Permission.ADMINISTRATOR)) { - if (rethink.getInviteDetection(event.getGuild().getId())) { - String split = event.getMessage().getContentRaw().split("discordapp.com/invite/", 10)[1]; - String invite = split.split(" ")[0]; - OkHttpClient client = new OkHttpClient(); - Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/invites/" + invite).build(); - try { - Response response = client.newCall(request).execute(); - JSONObject json = new JSONObject(response.body().string()); - if (!json.toString().contains("\"message\":")) { - event.getMessage().delete().reason("Invite Link detected").queue(); - } - } catch (Exception e) { - e.printStackTrace(); + if (!event.getMember().hasPermission(Permission.ADMINISTRATOR) && rethink.getInviteDetection(event.getGuild().getId())) { + String split = event.getMessage().getContentRaw().split("discordapp.com/invite/", 10)[1]; + String invite = split.split(" ")[0]; + OkHttpClient client = new OkHttpClient(); + Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/invites/" + invite).build(); + try { + Response response = client.newCall(request).execute(); + JSONObject json = new JSONObject(response.body().string()); + if (!json.toString().contains("\"message\":")) { + event.getMessage().delete().reason("Invite Link detected").queue(); } + } catch (Exception e) { + e.printStackTrace(); } } } @@ -74,43 +68,33 @@ public class InviteLinkListener extends ListenerAdapter { @Override public void onMessageUpdate(@Nonnull MessageUpdateEvent event) { if (event.isFromType(ChannelType.TEXT)) { - if (event.getMessage().getContentRaw().contains("discord.gg/")) { - if (event.getMember().hasPermission(Permission.MANAGE_SERVER)) { - if (rethink.getInviteDetection(event.getGuild().getId())) { - String split = event.getMessage().getContentRaw().split("discord.gg/", 10)[1]; - String invite = split.split(" ")[0]; - OkHttpClient client = new OkHttpClient(); - Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/invites/" + invite).build(); - try { - Response response = client.newCall(request).execute(); - JSONObject json = new JSONObject(response.body().string()); - if (!json.toString().contains("\"message\":")) { - event.getMessage().delete().reason("Invite Link detected").queue(); - } - } catch (Exception e) { - e.printStackTrace(); - } + if (event.getMessage().getContentRaw().contains("discord.gg/") && event.getMember().hasPermission(Permission.MANAGE_SERVER) && rethink.getInviteDetection(event.getGuild().getId())) { + String split = event.getMessage().getContentRaw().split("discord.gg/", 10)[1]; + String invite = split.split(" ")[0]; + OkHttpClient client = new OkHttpClient(); + Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/invites/" + invite).build(); + try { + Response response = client.newCall(request).execute(); + JSONObject json = new JSONObject(response.body().string()); + if (!json.toString().contains("\"message\":")) { + event.getMessage().delete().reason("Invite Link detected").queue(); } - } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); + } catch (Exception e) { + e.printStackTrace(); } - } else if (event.getMessage().getContentRaw().contains("discordapp.com/invite")) { - if (event.getMember().hasPermission(Permission.MANAGE_SERVER)) { - if (rethink.getInviteDetection(event.getGuild().getId())) { - String split = event.getMessage().getContentRaw().split("discordapp.com/invite/", 10)[1]; - String invite = split.split(" ")[0]; - OkHttpClient client = new OkHttpClient(); - Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/invites/" + invite).build(); - try { - Response response = client.newCall(request).execute(); - JSONObject json = new JSONObject(response.body().string()); - if (!json.toString().contains("\"message\":")) { - event.getMessage().delete().reason("Invite Link detected").queue(); - } - } catch (Exception e) { - e.printStackTrace(); - } + } else if (event.getMessage().getContentRaw().contains("discordapp.com/invite") && event.getMember().hasPermission(Permission.MANAGE_SERVER) && rethink.getInviteDetection(event.getGuild().getId())) { + String split = event.getMessage().getContentRaw().split("discordapp.com/invite/", 10)[1]; + String invite = split.split(" ")[0]; + OkHttpClient client = new OkHttpClient(); + Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/invites/" + invite).build(); + try { + Response response = client.newCall(request).execute(); + JSONObject json = new JSONObject(response.body().string()); + if (!json.toString().contains("\"message\":")) { + event.getMessage().delete().reason("Invite Link detected").queue(); } + } catch (Exception e) { + e.printStackTrace(); } } } diff --git a/src/main/java/com/bbn/hadder/utils/MessageEditor.java b/src/main/java/com/bbn/hadder/utils/MessageEditor.java index 3f7f619..81425e7 100644 --- a/src/main/java/com/bbn/hadder/utils/MessageEditor.java +++ b/src/main/java/com/bbn/hadder/utils/MessageEditor.java @@ -9,9 +9,9 @@ public class MessageEditor { public EmbedBuilder setDefaultSettings(MessageType type) { EmbedBuilder builder = new EmbedBuilder(); - switch (type) { + switch (type) { case INFO: - builder.setColor(new Color(47,94,105)).setTimestamp(Instant.now()); + builder.setColor(new Color(47, 94, 105)).setTimestamp(Instant.now()); break; case ERROR: @@ -40,5 +40,4 @@ public class MessageEditor { NO_PERMISSION, NO_SELF_PERMISSION } - } From 2e8a8fb102ac3f09b94f60e3bdee2246d9618ba1 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Mon, 2 Dec 2019 09:15:26 +0100 Subject: [PATCH 59/67] Last code improvements :D --- .../hadder/listener/InviteLinkListener.java | 52 +++++++++---------- 1 file changed, 25 insertions(+), 27 deletions(-) diff --git a/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java b/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java index 0a6310c..b6564a8 100644 --- a/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java +++ b/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java @@ -67,35 +67,33 @@ public class InviteLinkListener extends ListenerAdapter { @Override public void onMessageUpdate(@Nonnull MessageUpdateEvent event) { - if (event.isFromType(ChannelType.TEXT)) { - if (event.getMessage().getContentRaw().contains("discord.gg/") && event.getMember().hasPermission(Permission.MANAGE_SERVER) && rethink.getInviteDetection(event.getGuild().getId())) { - String split = event.getMessage().getContentRaw().split("discord.gg/", 10)[1]; - String invite = split.split(" ")[0]; - OkHttpClient client = new OkHttpClient(); - Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/invites/" + invite).build(); - try { - Response response = client.newCall(request).execute(); - JSONObject json = new JSONObject(response.body().string()); - if (!json.toString().contains("\"message\":")) { - event.getMessage().delete().reason("Invite Link detected").queue(); - } - } catch (Exception e) { - e.printStackTrace(); + if (event.isFromType(ChannelType.TEXT) && event.getMessage().getContentRaw().contains("discord.gg/") && event.getMember().hasPermission(Permission.MANAGE_SERVER) && rethink.getInviteDetection(event.getGuild().getId())) { + String split = event.getMessage().getContentRaw().split("discord.gg/", 10)[1]; + String invite = split.split(" ")[0]; + OkHttpClient client = new OkHttpClient(); + Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/invites/" + invite).build(); + try { + Response response = client.newCall(request).execute(); + JSONObject json = new JSONObject(response.body().string()); + if (!json.toString().contains("\"message\":")) { + event.getMessage().delete().reason("Invite Link detected").queue(); } - } else if (event.getMessage().getContentRaw().contains("discordapp.com/invite") && event.getMember().hasPermission(Permission.MANAGE_SERVER) && rethink.getInviteDetection(event.getGuild().getId())) { - String split = event.getMessage().getContentRaw().split("discordapp.com/invite/", 10)[1]; - String invite = split.split(" ")[0]; - OkHttpClient client = new OkHttpClient(); - Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/invites/" + invite).build(); - try { - Response response = client.newCall(request).execute(); - JSONObject json = new JSONObject(response.body().string()); - if (!json.toString().contains("\"message\":")) { - event.getMessage().delete().reason("Invite Link detected").queue(); - } - } catch (Exception e) { - e.printStackTrace(); + } catch (Exception e) { + e.printStackTrace(); + } + } else if (event.getMessage().getContentRaw().contains("discordapp.com/invite") && event.getMember().hasPermission(Permission.MANAGE_SERVER) && rethink.getInviteDetection(event.getGuild().getId())) { + String split = event.getMessage().getContentRaw().split("discordapp.com/invite/", 10)[1]; + String invite = split.split(" ")[0]; + OkHttpClient client = new OkHttpClient(); + Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/invites/" + invite).build(); + try { + Response response = client.newCall(request).execute(); + JSONObject json = new JSONObject(response.body().string()); + if (!json.toString().contains("\"message\":")) { + event.getMessage().delete().reason("Invite Link detected").queue(); } + } catch (Exception e) { + e.printStackTrace(); } } } From d9bb7a60a865dd3b36e8e0e74944a6b7c4e49d0d Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Mon, 2 Dec 2019 14:04:50 +0100 Subject: [PATCH 60/67] MessageUpdateListener Fix --- src/main/java/com/bbn/hadder/listener/InviteLinkListener.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java b/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java index b6564a8..b77f536 100644 --- a/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java +++ b/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java @@ -67,7 +67,7 @@ public class InviteLinkListener extends ListenerAdapter { @Override public void onMessageUpdate(@Nonnull MessageUpdateEvent event) { - if (event.isFromType(ChannelType.TEXT) && event.getMessage().getContentRaw().contains("discord.gg/") && event.getMember().hasPermission(Permission.MANAGE_SERVER) && rethink.getInviteDetection(event.getGuild().getId())) { + if (event.isFromType(ChannelType.TEXT) && event.getMessage().getContentRaw().contains("discord.gg/") && !event.getMember().hasPermission(Permission.ADMINISTRATOR) && rethink.getInviteDetection(event.getGuild().getId())) { String split = event.getMessage().getContentRaw().split("discord.gg/", 10)[1]; String invite = split.split(" ")[0]; OkHttpClient client = new OkHttpClient(); @@ -81,7 +81,7 @@ public class InviteLinkListener extends ListenerAdapter { } catch (Exception e) { e.printStackTrace(); } - } else if (event.getMessage().getContentRaw().contains("discordapp.com/invite") && event.getMember().hasPermission(Permission.MANAGE_SERVER) && rethink.getInviteDetection(event.getGuild().getId())) { + } else if (event.getMessage().getContentRaw().contains("discordapp.com/invite") && !event.getMember().hasPermission(Permission.ADMINISTRATOR) && rethink.getInviteDetection(event.getGuild().getId())) { String split = event.getMessage().getContentRaw().split("discordapp.com/invite/", 10)[1]; String invite = split.split(" ")[0]; OkHttpClient client = new OkHttpClient(); From 281598f5656af0dda71a749db9aa11a37ee1fd7c Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 2 Dec 2019 13:21:31 +0000 Subject: [PATCH 61/67] Bump lavaplayer from 1.3.29 to 1.3.32 Bumps lavaplayer from 1.3.29 to 1.3.32. Signed-off-by: dependabot-preview[bot] --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index ea1142c..0c95b79 100644 --- a/pom.xml +++ b/pom.xml @@ -65,7 +65,7 @@ com.sedmelluq lavaplayer - 1.3.29 + 1.3.32 From f63162ffc36060975e52c919626498ea1e4f20df Mon Sep 17 00:00:00 2001 From: "dependabot-preview[bot]" <27856297+dependabot-preview[bot]@users.noreply.github.com> Date: Mon, 2 Dec 2019 13:21:57 +0000 Subject: [PATCH 62/67] Bump JDA from 4.0.0_67 to 4.0.0_69 Bumps JDA from 4.0.0_67 to 4.0.0_69. Signed-off-by: dependabot-preview[bot] --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index ea1142c..8c046ee 100644 --- a/pom.xml +++ b/pom.xml @@ -25,7 +25,7 @@ net.dv8tion JDA - 4.0.0_67 + 4.0.0_69 org.json From 9d028e629c686c9bc778603a2015ed4852449377 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Mon, 2 Dec 2019 18:14:35 +0100 Subject: [PATCH 63/67] Fix --- src/main/java/com/bbn/hadder/listener/LinkListener.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/bbn/hadder/listener/LinkListener.java b/src/main/java/com/bbn/hadder/listener/LinkListener.java index 968c173..d678b8d 100644 --- a/src/main/java/com/bbn/hadder/listener/LinkListener.java +++ b/src/main/java/com/bbn/hadder/listener/LinkListener.java @@ -25,8 +25,8 @@ public class LinkListener extends ListenerAdapter { public void onMessageReactionAdd(@Nonnull MessageReactionAddEvent event) { event.getChannel().retrieveMessageById(event.getMessageId()).queue( msg -> { - if (event.getMember().hasPermission(Permission.MANAGE_CHANNEL)) { - if (!event.getMember().getUser().equals(event.getJDA().getSelfUser()) && msg.getAuthor().equals(event.getJDA().getSelfUser()) && msg.getEmbeds().size() == 1 && msg.getEmbeds().get(0).getFooter() == null && msg.getEmbeds().get(0).getTitle().endsWith(") wants to link guilds!")) { + if (!event.getMember().getUser().equals(event.getJDA().getSelfUser()) && msg.getAuthor().equals(event.getJDA().getSelfUser()) && msg.getEmbeds().size() == 1 && msg.getEmbeds().get(0).getFooter() == null && msg.getEmbeds().get(0).getTitle().endsWith(") wants to link guilds!")) { + if (event.getMember().hasPermission(Permission.MANAGE_CHANNEL)) { String requestguild = msg.getEmbeds().get(0).getTitle().replaceAll("\\) wants to link guilds!", ""); String requestguildid = null; for (int i = requestguild.length() - 1; i >= 0; i--) { @@ -55,9 +55,9 @@ public class LinkListener extends ListenerAdapter { event.getJDA().getTextChannelById(rethink.getLinkChannel(requestguildid)).sendMessage(msgembed).queue(); } } + } else { + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } - } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } } ); From e7e55e44ba22e200a034509673764a133fc38f48 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Mon, 2 Dec 2019 18:38:43 +0100 Subject: [PATCH 64/67] Rules Command feature --- example-config.json | 25 +- src/main/java/com/bbn/hadder/Rethink.java | 12 +- .../moderation/InviteDetectCommand.java | 2 +- .../commands/moderation/RulesCommand.java | 225 +++++++++--------- .../hadder/listener/InviteLinkListener.java | 1 - .../bbn/hadder/listener/RulesListener.java | 25 +- 6 files changed, 153 insertions(+), 137 deletions(-) diff --git a/example-config.json b/example-config.json index b56984e..f201256 100644 --- a/example-config.json +++ b/example-config.json @@ -2,22 +2,23 @@ "Owners": [], "Database":{"IP":"", - "Port":6775, - "DBName":"", - "Username":"", - "Password":""}, - "Tokens":{ - "BotToken":"", - "Giphy":"", + "Port": 6775, + "DBName": "", + "Username": "", + "Password": ""}, + "Tokens": { + "BotToken": "", + "Giphy": "", "GitHub": "", - "MythicalBotList":"", - "BotsForDiscord":"", - "DiscordBotList":"", - "DiscordBestBots":"", + "MythicalBotList": "", + "BotsForDiscord": "", + "DiscordBotList": "", + "DiscordBestBots": "", "DiscordBoats": "", "YetAnotherBotList": "", "DiscordExtremeList": "", "DiscordBotReviews": "", - "DiscordBots": "" + "DiscordBots": "", + "BotListSpace": "" } } diff --git a/src/main/java/com/bbn/hadder/Rethink.java b/src/main/java/com/bbn/hadder/Rethink.java index 5b41cd8..283a1a1 100644 --- a/src/main/java/com/bbn/hadder/Rethink.java +++ b/src/main/java/com/bbn/hadder/Rethink.java @@ -150,9 +150,11 @@ public class Rethink { this.insert("user", r.hashMap("id", id).with("prefix", "h.")); } - public void updateRules(String guild_id, String message_id, String role_id) { + public void updateRules(String guild_id, String message_id, String role_id, String accept_emote, String decline_emote) { this.update("server", guild_id, "message_id", message_id); this.update("server", guild_id, "role_id", role_id); + this.update("server", guild_id, "accept_emote", accept_emote); + this.update("server", guild_id, "decline_emote", decline_emote); } public String getRulesMID(String guild_id) { @@ -163,6 +165,14 @@ public class Rethink { return (String) this.get("server", "id", guild_id, "role_id"); } + public String getRulesAEmote(String guild_id) { + return (String) this.get("server", "id", guild_id, "accept_emote"); + } + + public String getRulesDEmote(String guild_id) { + return (String) this.get("server", "id", guild_id, "decline_emote"); + } + public void setInviteDetection(String guild_id, boolean b) { try { r.table("server").get(guild_id).update(r.hashMap("invite_detect", b)).run(conn); diff --git a/src/main/java/com/bbn/hadder/commands/moderation/InviteDetectCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/InviteDetectCommand.java index f956bd9..12ddc03 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/InviteDetectCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/InviteDetectCommand.java @@ -14,7 +14,7 @@ public class InviteDetectCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { if (args.length == 1) { - if (event.getMember().hasPermission(Permission.MANAGE_SERVER)) { + if (event.getMember().hasPermission(Permission.MANAGE_SERVER) || event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { String opinion = args[0].toLowerCase(); switch (opinion) { case "on": diff --git a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java index 4903b7b..9ae75f5 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java @@ -9,9 +9,11 @@ import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.EventWaiter; import com.bbn.hadder.utils.MessageEditor; import net.dv8tion.jda.api.Permission; +import net.dv8tion.jda.api.entities.Emote; import net.dv8tion.jda.api.entities.Message; import net.dv8tion.jda.api.entities.Role; import net.dv8tion.jda.api.entities.TextChannel; +import net.dv8tion.jda.api.events.message.guild.GuildMessageReceivedEvent; public class RulesCommand implements Command { @@ -27,64 +29,7 @@ public class RulesCommand implements Command { if (event1.getMessage().getMentionedChannels().size() == 1) { try { TextChannel channel = event1.getMessage().getMentionedChannels().get(0); - if (channel.getGuild().getId().equals(event1.getGuild().getId())) { - if (event.getGuild().getSelfMember().hasPermission(channel, Permission.MESSAGE_WRITE)) { - event1.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("Rules") - .setDescription("The channel was successfully set to " + channel.getName() + ". Please send me the rules now.") - .build()).queue(); - new EventWaiter().newOnMessageEventWaiter(event2 -> { - String message = event2.getMessage().getContentDisplay(); - event2.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("Role to assign") - .setDescription("The rules were successfully set. Please send me the name of the role which the user receives after he accepted the rules.") - .build()).queue(); - new EventWaiter().newOnMessageEventWaiter(event3 -> { - if (event.getMessage().getMentionedRoles().size() == 1) { - Role role = event.getMessage().getMentionedRoles().get(0); - if (event3.getGuild().getSelfMember().canInteract(role)) { - event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("The role has been successfully set to " + role.getName() + ".") - .build()).queue(); - Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("Rules") - .setDescription(message) - .build()).complete(); - rules.addReaction("✅").queue(); - rules.addReaction("❌").queue(); - event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); - } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); - } - } else { - Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentStripped(), true).get(0); - if (event3.getGuild().getSelfMember().canInteract(role)) { - event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("The role has been successfully set to " + role.getName() + ".") - .build()).queue(); - Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("Rules") - .setDescription(message) - .build()).complete(); - rules.addReaction("✅").queue(); - rules.addReaction("❌").queue(); - event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); - } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); - } - } - }, event.getJDA(), event.getAuthor()); - }, event.getJDA(), event.getAuthor()); - } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION) - .build()).queue(); - } - } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING) - .setTitle("Wrong Guild") - .setDescription("The mentioned channel must be on this guid!") - .build()).queue(); - } + createRules(event, event1, channel); } catch (Exception e) { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR) .setTitle("Channel not found") @@ -94,64 +39,7 @@ public class RulesCommand implements Command { } else { try { TextChannel channel = event1.getGuild().getTextChannelsByName(event1.getMessage().getContentRaw(), true).get(0); - if (channel.getGuild().getId().equals(event1.getGuild().getId())) { - if (event.getGuild().getSelfMember().hasPermission(channel, Permission.MESSAGE_WRITE)) { - event1.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("Rules") - .setDescription("The channel was successfully set to " + channel.getName() + ". Please send me the rules now.") - .build()).queue(); - new EventWaiter().newOnMessageEventWaiter(event2 -> { - String message = event2.getMessage().getContentDisplay(); - event2.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("Role to assign") - .setDescription("The rules were successfully set. Please send me the name of the role which the user receives after he accepted the rules.") - .build()).queue(); - new EventWaiter().newOnMessageEventWaiter(event3 -> { - if (event.getMessage().getMentionedRoles().size() == 1) { - Role role = event.getMessage().getMentionedRoles().get(0); - if (event3.getGuild().getSelfMember().canInteract(role)) { - event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("The role has been successfully set to " + role.getName() + ".") - .build()).queue(); - Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("Rules") - .setDescription(message) - .build()).complete(); - rules.addReaction("✅").queue(); - rules.addReaction("❌").queue(); - event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); - } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); - } - } else { - Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentStripped(), true).get(0); - if (event3.getGuild().getSelfMember().canInteract(role)) { - event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("The role has been successfully set to " + role.getName() + ".") - .build()).queue(); - Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("Rules") - .setDescription(message) - .build()).complete(); - rules.addReaction("✅").queue(); - rules.addReaction("❌").queue(); - event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId()); - } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); - } - } - }, event.getJDA(), event.getAuthor()); - }, event.getJDA(), event.getAuthor()); - } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION) - .build()).queue(); - } - } else { - event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING) - .setTitle("Wrong Guild") - .setDescription("The mentioned channel must be on this guid!") - .build()).queue(); - } + createRules(event, event1, channel); } catch (Exception e) { event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR) .setTitle("Channel not found") @@ -168,6 +56,111 @@ public class RulesCommand implements Command { } } + public void createRules(CommandEvent event, GuildMessageReceivedEvent event1, TextChannel channel) { + if (channel.getGuild().getId().equals(event1.getGuild().getId())) { + if (event.getGuild().getSelfMember().hasPermission(channel, Permission.MESSAGE_WRITE)) { + event1.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Rules") + .setDescription("The channel was successfully set to " + channel.getName() + ". Please send me the rules now.") + .build()).queue(); + new EventWaiter().newOnMessageEventWaiter(event2 -> { + String message = event2.getMessage().getContentDisplay(); + event2.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Role to assign") + .setDescription("The rules were successfully set. Please send me the name of the role which the user receives after he accepted the rules.") + .build()).queue(); + new EventWaiter().newOnMessageEventWaiter(event3 -> { + if (event.getMessage().getMentionedRoles().size() == 1) { + Role role = event.getMessage().getMentionedRoles().get(0); + setRole(event, channel, message, event3, role); + } else { + Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentStripped(), true).get(0); + setRole(event, channel, message, event3, role); + } + }, event.getJDA(), event.getAuthor()); + }, event.getJDA(), event.getAuthor()); + } else { + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_PERMISSION) + .build()).queue(); + } + } else { + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING) + .setTitle("Wrong Guild") + .setDescription("The mentioned channel must be on this guid!") + .build()).queue(); + } + } + + public void setRole(CommandEvent event, TextChannel channel, String message, GuildMessageReceivedEvent event3, Role role) { + if (event3.getGuild().getSelfMember().canInteract(role)) { + event3.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Custom Accept Emote") + .setDescription("The role has been successfully set to " + role.getName() + ". Now send me the emote on which your user should react to to get verified.") + .build()).queue(); + new EventWaiter().newOnMessageEventWaiter(event4 -> { + if (event4.getMessage().getEmotes().size() == 1) { + Emote aemote = event4.getMessage().getEmotes().get(0); + event4.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Custom Decline Emote") + .setDescription("The first emote has been successfully set to " + aemote + ". Please send me now the decline emote.") + .build()).queue(); + new EventWaiter().newOnMessageEventWaiter(event5 -> { + Emote demote = event5.getMessage().getEmotes().get(0); + Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Rules") + .setDescription(message) + .build()).complete(); + try { + rules.addReaction(aemote).queue(); + rules.addReaction(demote).queue(); + event5.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Successfully set the rules") + .setDescription("I successfully send the rules in " + channel.getAsMention() + ".") + .build()).queue(); + } catch (Exception e) { + event5.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR) + .setTitle("Error") + .setDescription("I can not access the custom emote(s),") + .build()).queue(); + e.printStackTrace(); + } + event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId(), aemote.toString(), demote.toString()); + }, event.getJDA(), event.getAuthor()); + } else { + String aemote = event4.getMessage().getContentRaw(); + event4.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Custom Decline Emote") + .setDescription("The first emote has been successfully set. Please send me now the decline emote.") + .build()).queue(); + new EventWaiter().newOnMessageEventWaiter(event5 -> { + String demote = event5.getMessage().getContentRaw(); + Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Rules") + .setDescription(message) + .build()).complete(); + try { + rules.addReaction(aemote).queue(); + rules.addReaction(demote).queue(); + event5.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Successfully set the rules") + .setDescription("I successfully send the rules in " + channel.getAsMention() + ".") + .build()).queue(); + } catch (Exception e) { + event5.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR) + .setTitle("Error") + .setDescription("The given emote can't be used.") + .build()).queue(); + e.printStackTrace(); + } + event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId(), aemote, demote); + }, event.getJDA(), event.getAuthor()); + } + }, event.getJDA(), event.getAuthor()); + } else { + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); + } + } + @Override public String[] labels() { return new String[]{"rules", "rule", "setup"}; diff --git a/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java b/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java index b77f536..dfac529 100644 --- a/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java +++ b/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java @@ -5,7 +5,6 @@ package com.bbn.hadder.listener; */ import com.bbn.hadder.Rethink; -import com.bbn.hadder.utils.MessageEditor; import net.dv8tion.jda.api.Permission; import net.dv8tion.jda.api.entities.ChannelType; import net.dv8tion.jda.api.events.message.MessageReceivedEvent; diff --git a/src/main/java/com/bbn/hadder/listener/RulesListener.java b/src/main/java/com/bbn/hadder/listener/RulesListener.java index 221ad4a..43ca93f 100644 --- a/src/main/java/com/bbn/hadder/listener/RulesListener.java +++ b/src/main/java/com/bbn/hadder/listener/RulesListener.java @@ -20,18 +20,31 @@ public class RulesListener extends ListenerAdapter { @Override public void onMessageReactionAdd(MessageReactionAddEvent event) { if (event.getMessageId().equals(rethink.getRulesMID(event.getGuild().getId())) && !event.getMember().getUser().isBot()) { - if (event.getReactionEmote().getEmoji().equals("✅")) { - event.getGuild().addRoleToMember(event.getMember(), event.getGuild().getRoleById(rethink.getRulesRID(event.getGuild().getId()))).reason("Accepted rules").queue(); - } else if (event.getReactionEmote().getEmoji().equals("❌") && event.getGuild().getSelfMember().canInteract(event.getMember())) { - event.getReaction().removeReaction().queue(); - event.getMember().kick().reason("Declined the rules"); + if (event.getReactionEmote().isEmote()) { + if (rethink.getRulesAEmote(event.getGuild().getId()).contains(event.getReactionEmote().getId())) { + event.getGuild().addRoleToMember(event.getMember(), event.getGuild().getRoleById(rethink.getRulesRID(event.getGuild().getId()))).reason("Accepted rules").queue(); + } else if (rethink.getRulesDEmote(event.getGuild().getId()).contains(event.getReactionEmote().getId())) { + event.getReaction().removeReaction(event.getUser()).queue(); + if (event.getGuild().getSelfMember().canInteract(event.getMember())) { + event.getMember().kick().reason("Declined the rules"); + } + } + } else { + if (event.getReactionEmote().getEmoji().equals(rethink.getRulesAEmote(event.getGuild().getId()))) { + event.getGuild().addRoleToMember(event.getMember(), event.getGuild().getRoleById(rethink.getRulesRID(event.getGuild().getId()))).reason("Accepted rules").queue(); + } else if (event.getReactionEmote().getEmoji().equals(rethink.getRulesDEmote(event.getGuild().getId()))) { + event.getReaction().removeReaction(event.getUser()).queue(); + if (event.getGuild().getSelfMember().canInteract(event.getMember())) { + event.getMember().kick().reason("Declined the rules"); + } + } } } } @Override public void onMessageReactionRemove(MessageReactionRemoveEvent event) { - if (event.getMessageId().equals(rethink.getRulesMID(event.getGuild().getId())) && !event.getMember().getUser().isBot() && event.getReactionEmote().getEmoji().equals("✅")) { + if (event.getMessageId().equals(rethink.getRulesMID(event.getGuild().getId())) && !event.getMember().getUser().isBot()) { event.getGuild().removeRoleFromMember(event.getMember(), event.getGuild().getRoleById(rethink.getRulesRID(event.getGuild().getId()))).reason("Withdrawal of the acceptance of the rules").queue(); } } From f41dd11d3efbb02c9bb959ea590c93ca345f4f1a Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Mon, 2 Dec 2019 18:51:05 +0100 Subject: [PATCH 65/67] Combine one if else statement --- .../hadder/listener/InviteLinkListener.java | 26 +++++++++---------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java b/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java index dfac529..b8bc2bb 100644 --- a/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java +++ b/src/main/java/com/bbn/hadder/listener/InviteLinkListener.java @@ -44,21 +44,19 @@ public class InviteLinkListener extends ListenerAdapter { e.printStackTrace(); } } - } else if (event.getMessage().getContentRaw().contains("discordapp.com/invite")) { - if (!event.getMember().hasPermission(Permission.ADMINISTRATOR) && rethink.getInviteDetection(event.getGuild().getId())) { - String split = event.getMessage().getContentRaw().split("discordapp.com/invite/", 10)[1]; - String invite = split.split(" ")[0]; - OkHttpClient client = new OkHttpClient(); - Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/invites/" + invite).build(); - try { - Response response = client.newCall(request).execute(); - JSONObject json = new JSONObject(response.body().string()); - if (!json.toString().contains("\"message\":")) { - event.getMessage().delete().reason("Invite Link detected").queue(); - } - } catch (Exception e) { - e.printStackTrace(); + } else if (event.getMessage().getContentRaw().contains("discordapp.com/invite") && !event.getMember().hasPermission(Permission.ADMINISTRATOR) && rethink.getInviteDetection(event.getGuild().getId())) { + String split = event.getMessage().getContentRaw().split("discordapp.com/invite/", 10)[1]; + String invite = split.split(" ")[0]; + OkHttpClient client = new OkHttpClient(); + Request request = new Request.Builder().url("https://canary.discordapp.com/api/v6/invites/" + invite).build(); + try { + Response response = client.newCall(request).execute(); + JSONObject json = new JSONObject(response.body().string()); + if (!json.toString().contains("\"message\":")) { + event.getMessage().delete().reason("Invite Link detected").queue(); } + } catch (Exception e) { + e.printStackTrace(); } } } From f838793e19d43fcc4d53ce6e882c6abb85d28078 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Mon, 2 Dec 2019 19:31:15 +0100 Subject: [PATCH 66/67] Rules Command improvement --- .../commands/moderation/RulesCommand.java | 82 +++++++++++-------- .../com/bbn/hadder/utils/MessageEditor.java | 29 +++++-- 2 files changed, 72 insertions(+), 39 deletions(-) diff --git a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java index 9ae75f5..d6e80f8 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java @@ -106,25 +106,32 @@ public class RulesCommand implements Command { .build()).queue(); new EventWaiter().newOnMessageEventWaiter(event5 -> { Emote demote = event5.getMessage().getEmotes().get(0); - Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("Rules") - .setDescription(message) - .build()).complete(); - try { - rules.addReaction(aemote).queue(); - rules.addReaction(demote).queue(); - event5.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("Successfully set the rules") - .setDescription("I successfully send the rules in " + channel.getAsMention() + ".") + if (!aemote.equals(demote)) { + Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Rules") + .setDescription(message) + .build()).complete(); + try { + rules.addReaction(aemote).queue(); + rules.addReaction(demote).queue(); + event5.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Successfully set the rules") + .setDescription("I successfully send the rules in " + channel.getAsMention() + ".") + .build()).queue(); + } catch (Exception e) { + event5.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR) + .setTitle("Error") + .setDescription("I can not access the custom emote(s),") + .build()).queue(); + e.printStackTrace(); + } + event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId(), aemote.toString(), demote.toString()); + } else { + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING) + .setTitle("Emotes are equal") + .setDescription("The 1st and 2nd emote equals each other.") .build()).queue(); - } catch (Exception e) { - event5.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR) - .setTitle("Error") - .setDescription("I can not access the custom emote(s),") - .build()).queue(); - e.printStackTrace(); } - event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId(), aemote.toString(), demote.toString()); }, event.getJDA(), event.getAuthor()); } else { String aemote = event4.getMessage().getContentRaw(); @@ -134,25 +141,32 @@ public class RulesCommand implements Command { .build()).queue(); new EventWaiter().newOnMessageEventWaiter(event5 -> { String demote = event5.getMessage().getContentRaw(); - Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("Rules") - .setDescription(message) - .build()).complete(); - try { - rules.addReaction(aemote).queue(); - rules.addReaction(demote).queue(); - event5.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) - .setTitle("Successfully set the rules") - .setDescription("I successfully send the rules in " + channel.getAsMention() + ".") + if (!aemote.equals(demote)) { + Message rules = channel.sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Rules") + .setDescription(message) + .build()).complete(); + try { + rules.addReaction(aemote).queue(); + rules.addReaction(demote).queue(); + event5.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.INFO) + .setTitle("Successfully set the rules") + .setDescription("I successfully send the rules in " + channel.getAsMention() + ".") + .build()).queue(); + } catch (Exception e) { + event5.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR) + .setTitle("Error") + .setDescription("The given emote can't be used.") + .build()).queue(); + e.printStackTrace(); + } + event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId(), aemote, demote); + } else { + event.getTextChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.WARNING) + .setTitle("Emotes are equal") + .setDescription("The 1st and 2nd emote equals each other.") .build()).queue(); - } catch (Exception e) { - event5.getChannel().sendMessage(new MessageEditor().setDefaultSettings(MessageEditor.MessageType.ERROR) - .setTitle("Error") - .setDescription("The given emote can't be used.") - .build()).queue(); - e.printStackTrace(); } - event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId(), aemote, demote); }, event.getJDA(), event.getAuthor()); } }, event.getJDA(), event.getAuthor()); diff --git a/src/main/java/com/bbn/hadder/utils/MessageEditor.java b/src/main/java/com/bbn/hadder/utils/MessageEditor.java index 81425e7..0121acd 100644 --- a/src/main/java/com/bbn/hadder/utils/MessageEditor.java +++ b/src/main/java/com/bbn/hadder/utils/MessageEditor.java @@ -11,23 +11,42 @@ public class MessageEditor { EmbedBuilder builder = new EmbedBuilder(); switch (type) { case INFO: - builder.setColor(new Color(47, 94, 105)).setTimestamp(Instant.now()); + builder + .setColor(new Color(47, 94, 105)) + .setFooter("Hadder", "https://bigbotnetwork.com/images/Hadder.png") + .setTimestamp(Instant.now()); break; case ERROR: - builder.setColor(Color.RED).setTimestamp(Instant.now()); + builder + .setColor(Color.RED) + .setFooter("Hadder", "https://bigbotnetwork.com/images/Hadder.png") + .setTimestamp(Instant.now()); break; case WARNING: - builder.setColor(Color.ORANGE).setTimestamp(Instant.now()); + builder + .setColor(Color.ORANGE) + .setFooter("Hadder", "https://bigbotnetwork.com/images/Hadder.png") + .setTimestamp(Instant.now()); break; case NO_PERMISSION: - builder.setTitle("⛔ No Permission ⛔").setDescription("You are not authorized to execute this command!").setColor(Color.RED).setTimestamp(Instant.now()); + builder + .setTitle("⛔ No Permission ⛔") + .setDescription("You are not authorized to execute this command!") + .setColor(Color.RED) + .setFooter("Hadder", "https://bigbotnetwork.com/images/Hadder.png") + .setTimestamp(Instant.now()); break; case NO_SELF_PERMISSION: - builder.setTitle("⛔ No Permission ⛔").setDescription("Unfortunately, I do not have the required rights to perform this action").setColor(Color.RED).setTimestamp(Instant.now()); + builder + .setTitle("⛔ No Permission ⛔") + .setDescription("Unfortunately, I do not have the required rights to perform this action") + .setColor(Color.RED) + .setFooter("Hadder", "https://bigbotnetwork.com/images/Hadder.png") + .setTimestamp(Instant.now()); break; } return builder; From 9125d1b6d59b28f492a320f19afb3ad4077649b5 Mon Sep 17 00:00:00 2001 From: GregTCLTK Date: Mon, 2 Dec 2019 20:58:54 +0100 Subject: [PATCH 67/67] Triggers timeout --- src/main/java/com/bbn/hadder/Hadder.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/bbn/hadder/Hadder.java b/src/main/java/com/bbn/hadder/Hadder.java index 8125491..71e75f9 100644 --- a/src/main/java/com/bbn/hadder/Hadder.java +++ b/src/main/java/com/bbn/hadder/Hadder.java @@ -87,7 +87,7 @@ public class Hadder { new CommandListener(rethink, commandHandler), new GuildListener(rethink, config), new ReadyListener(rethink, config), - new LinkListener(rethink), + //new LinkListener(rethink), new InviteLinkListener(rethink), new RulesListener(rethink));