diff --git a/README.md b/README.md index aeba086..025df75 100644 --- a/README.md +++ b/README.md @@ -7,8 +7,6 @@ Hadder Discord is a multi-purpose Discord bot with 100% uptime. [![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) [![CodeFactor](https://www.codefactor.io/repository/github/bigbotnetwork/hadder/badge)](https://www.codefactor.io/repository/github/bigbotnetwork/hadder) [![Crowdin](https://badges.crowdin.net/e/bc0babde730eb3eada34778502a31b03/localized.svg)](https://bbn.crowdin.com/hadder) -[![GitHub issues](https://img.shields.io/github/issues/BigBotNetwork/Hadder)](https://github.com/BigBotNetwork/Hadder/issues) -[![GitHub license](https://img.shields.io/github/license/BigBotNetwork/Hadder)](https://github.com/BigBotNetwork/Hadder/blob/master/LICENSE) [![Discord Bots](https://top.gg/api/widget/637002314162372639.svg)](https://top.gg/bot/637002314162372639) diff --git a/example-config.json b/example-config.json index 437ec97..f201256 100644 --- a/example-config.json +++ b/example-config.json @@ -20,6 +20,5 @@ "DiscordBotReviews": "", "DiscordBots": "", "BotListSpace": "" - }, - "Clyde": "" + } } diff --git a/pom.xml b/pom.xml index 450bede..88c3108 100644 --- a/pom.xml +++ b/pom.xml @@ -16,6 +16,12 @@ + + junit + junit + 4.12 + test + net.dv8tion JDA @@ -131,20 +137,20 @@ - maven-assembly-plugin - - Hadder-Build - - - com.bbn.hadder.Hadder - - - - jar-with-dependencies - - false - - + maven-assembly-plugin + + Hadder-Build + + + com.bbn.hadder.Hadder + + + + jar-with-dependencies + + false + + diff --git a/src/main/java/com/bbn/hadder/Hadder.java b/src/main/java/com/bbn/hadder/Hadder.java index f96792f..bf30069 100644 --- a/src/main/java/com/bbn/hadder/Hadder.java +++ b/src/main/java/com/bbn/hadder/Hadder.java @@ -47,7 +47,7 @@ public class Hadder { helpCommand, new TestCommand(), new BanCommand(), - new UserPrefixCommand(), + new PrefixCommand(), new ShutdownCommand(), new KickCommand(), new PingCommand(), @@ -58,7 +58,7 @@ public class Hadder { new EqualsCommand(), new InviteCommand(), new NickCommand(), - new PrefixCommand(), + new GuildPrefixCommand(), new BlowjobCommand(), new PornCommand(), new AnalCommand(), @@ -87,8 +87,7 @@ public class Hadder { new RegionChangeCommand(), new AboutCommand(), new LanguageCommand(), - new ClydeCommand(), - new StarBoardCommand()), config, helpCommand); + new SetStarBoardCommand()), config, helpCommand); builder.addEventListeners( new MentionListener(rethink), diff --git a/src/main/java/com/bbn/hadder/Rethink.java b/src/main/java/com/bbn/hadder/Rethink.java index f501971..9d3ce64 100644 --- a/src/main/java/com/bbn/hadder/Rethink.java +++ b/src/main/java/com/bbn/hadder/Rethink.java @@ -81,10 +81,6 @@ public class Rethink { return out; } - public void remove(String table, String where, String wherevalue) { - r.table(table).filter(row -> row.g(where.toLowerCase()).eq(wherevalue)).delete().run(conn); - } - public void setup() { try { r.dbCreate("Hadder").run(conn); @@ -160,19 +156,15 @@ public class Rethink { } public void insertStarboardMessage(String messageid, String guildid, String starboardmessageid) { - this.insert("stars", r.hashMap("id", messageid).with("guild", guildid).with("starboardmsg", starboardmessageid)); + this.insert("stars", r.hashMap("msg", messageid).with("guild", guildid).with("starboardmsg", starboardmessageid)); } public String getStarboardMessage(String messageid) { - return (String) this.get("stars", "id", messageid, "starboardmsg"); - } - - public void removeStarboardMessage(String messageid) { - this.remove("stars", "id", messageid); + return (String) this.get("stars", "msg", messageid, "starboardmsg"); } public boolean hasStarboardMessage(String messageid) { - return this.get("stars", "id", messageid, "guild") != null; + return this.get("stars", "msg", messageid, "guild") != null; } public void updateRules(String guild_id, String message_id, String role_id, String accept_emote, String decline_emote) { 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 e3c852d..8f3f420 100644 --- a/src/main/java/com/bbn/hadder/commands/fun/AvatarCommand.java +++ b/src/main/java/com/bbn/hadder/commands/fun/AvatarCommand.java @@ -19,9 +19,7 @@ public class AvatarCommand implements Command { event.getMessageEditor().getMessage( MessageEditor.MessageType.INFO, "commands.fun.avatar.success.title", - member.getUser().getAsTag(), - "", - "") + member.getUser().getAsTag()) .setImage(member.getUser().getAvatarUrl()) .setFooter(member.getUser().getAsTag()) .build()).queue(); diff --git a/src/main/java/com/bbn/hadder/commands/fun/ClydeCommand.java b/src/main/java/com/bbn/hadder/commands/fun/ClydeCommand.java deleted file mode 100644 index 135ff57..0000000 --- a/src/main/java/com/bbn/hadder/commands/fun/ClydeCommand.java +++ /dev/null @@ -1,77 +0,0 @@ -package com.bbn.hadder.commands.fun; - -/* - * @author Skidder / GregTCLTK - */ - -import club.minnced.discord.webhook.WebhookClient; -import club.minnced.discord.webhook.WebhookClientBuilder; -import com.bbn.hadder.commands.Command; -import com.bbn.hadder.commands.CommandEvent; -import com.bbn.hadder.core.Perm; -import com.bbn.hadder.core.Perms; -import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.Permission; -import net.dv8tion.jda.api.entities.Icon; -import net.dv8tion.jda.api.entities.TextChannel; -import net.dv8tion.jda.api.entities.Webhook; - -import java.io.InputStream; -import java.net.URL; -import java.util.concurrent.TimeUnit; - -@Perms(Perm.MANAGE_WEBHOOKS) -public class ClydeCommand implements Command { - - @Override - public void executed(String[] args, CommandEvent event) { - if (args.length > 0) { - if (event.getGuild().getSelfMember().hasPermission(Permission.MANAGE_WEBHOOKS)) { - TextChannel channel = event.getMessage().getTextChannel(); - String content = event.getMessage().getContentRaw().replace(event.getRethink().getGuildPrefix(event.getGuild().getId()), "").replace(event.getRethink().getUserPrefix(event.getAuthor().getId()), "").replace("clyde", ""); - - Webhook webhook = channel.createWebhook(event.getConfig().getClydeName()).complete(); - try { - InputStream s = new URL("https://discordapp.com/assets/f78426a064bc9dd24847519259bc42af.png").openStream(); - webhook.getManager().setAvatar(Icon.from(s)).queue(); - - WebhookClientBuilder builder = new WebhookClientBuilder(webhook.getUrl()); - - WebhookClient client = builder.build(); - try { - TimeUnit.SECONDS.sleep(1); - } catch (InterruptedException e) { - e.printStackTrace(); - } - client.send(content); - } catch (Exception e) { - e.printStackTrace(); - } - try { - TimeUnit.SECONDS.sleep(2); - } catch (InterruptedException e) { - e.printStackTrace(); - } - webhook.delete().queue(); - } else { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); - } - } else event.getHelpCommand().sendHelp(this, event); - - } - - @Override - public String[] labels() { - return new String[]{"clyde"}; - } - - @Override - public String description() { - return "commands.fun.clyde.help.description"; - } - - @Override - public String usage() { - return "content"; - } -} 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 406d699..01c76c2 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/BanCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/BanCommand.java @@ -6,77 +6,79 @@ package com.bbn.hadder.commands.moderation; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; -import com.bbn.hadder.core.Perm; -import com.bbn.hadder.core.Perms; import com.bbn.hadder.utils.MessageEditor; +import net.dv8tion.jda.api.Permission; import net.dv8tion.jda.api.entities.Member; -@Perms(Perm.BAN_MEMBERS) public class BanCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { - if (event.getMessage().getMentionedMembers().size() == 1) { - Member victim = event.getMessage().getMentionedMembers().get(0); - if (!event.getAuthor().getId().equals(victim.getId())) { - 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(); - event.getTextChannel().sendMessage( - event.getMessageEditor().getMessage( - MessageEditor.MessageType.INFO, - "commands.moderation.ban.success.title", - "✅", - "commands.moderation.ban.success.description", - victim.getUser().getName() + ".").build()).queue(); - } else { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); - } - } else { - event.getTextChannel().sendMessage( - event.getMessageEditor().getMessage( - MessageEditor.MessageType.WARNING, - "commands.moderation.ban.error.title", - "commands.moderation.ban.myself.error.description").build()).queue(); - } - } else { - event.getTextChannel().sendMessage - (event.getMessageEditor().getMessage( - MessageEditor.MessageType.WARNING, - "commands.moderation.ban.error.title", - "commands.moderation.ban.yourself.error.description").build()).queue(); - } - } else if (event.getMessage().getMentionedMembers().size() == 0) { - event.getHelpCommand().sendHelp(this, event); - } else if (event.getMessage().getMentionedMembers().size() > 1) { - for (int i = 0; i < event.getMessage().getMentionedMembers().size(); i++) { - Member member = event.getMessage().getMentionedMembers().get(i); - if (!event.getAuthor().getId().equals(member.getId())) { - if (!event.getJDA().getSelfUser().getId().equals(member.getId())) { - if (event.getGuild().getSelfMember().canInteract(member)) { - event.getGuild().ban(member, 0).reason("Mass Ban by " + event.getAuthor().getAsTag()).queue(); + 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())) { + 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(); + event.getTextChannel().sendMessage( + event.getMessageEditor().getMessage( + MessageEditor.MessageType.INFO, + "commands.moderation.ban.success.title", + "✅", + "commands.moderation.ban.success.description", + victim.getUser().getName() + ".").build()).queue(); + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); + } } else { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); + event.getTextChannel().sendMessage( + event.getMessageEditor().getMessage( + MessageEditor.MessageType.WARNING, + "commands.moderation.ban.error.title", + "commands.moderation.ban.myself.error.description").build()).queue(); } } else { - event.getTextChannel().sendMessage( - event.getMessageEditor().getMessage( + event.getTextChannel().sendMessage + (event.getMessageEditor().getMessage( MessageEditor.MessageType.WARNING, "commands.moderation.ban.error.title", - "commands.moderation.ban.myself.error.description").build()).queue(); + "commands.moderation.ban.yourself.error.description").build()).queue(); } - } else { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage( - MessageEditor.MessageType.WARNING, - "commands.moderation.ban.error.title", - "commands.moderation.ban.yourself.error.description").build()).queue(); + } else if (event.getMessage().getMentionedMembers().size() == 0) { + event.getHelpCommand().sendHelp(this, event); + } else if (event.getMessage().getMentionedMembers().size() > 1) { + for (int i = 0; i < event.getMessage().getMentionedMembers().size(); i++) { + Member member = event.getMessage().getMentionedMembers().get(i); + if (!event.getAuthor().getId().equals(member.getId())) { + if (!event.getJDA().getSelfUser().getId().equals(member.getId())) { + if (event.getGuild().getSelfMember().canInteract(member)) { + event.getGuild().ban(member, 0).reason("Mass Ban by " + event.getAuthor().getAsTag()).queue(); + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); + } + } else { + event.getTextChannel().sendMessage( + event.getMessageEditor().getMessage( + MessageEditor.MessageType.WARNING, + "commands.moderation.ban.error.title", + "commands.moderation.ban.myself.error.description").build()).queue(); + } + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage( + MessageEditor.MessageType.WARNING, + "commands.moderation.ban.error.title", + "commands.moderation.ban.yourself.error.description").build()).queue(); + } + } + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.INFO, + "commands.moderation.ban.success.title", + "✅", + "commands.moderation.ban.massban.success.description", + String.valueOf(event.getMessage().getMentionedMembers().size())).build()).queue(); } - } - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.INFO, - "commands.moderation.ban.success.title", - "✅", - "commands.moderation.ban.massban.success.description", - String.valueOf(event.getMessage().getMentionedMembers().size())).build()).queue(); + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } } @@ -92,6 +94,6 @@ public class BanCommand implements Command { @Override public String usage() { - return "user"; + return "<@User>"; } } 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 6e3d248..05a6bbd 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/ClearCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/ClearCommand.java @@ -6,8 +6,6 @@ package com.bbn.hadder.commands.moderation; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; -import com.bbn.hadder.core.Perm; -import com.bbn.hadder.core.Perms; import com.bbn.hadder.utils.MessageEditor; import net.dv8tion.jda.api.Permission; import net.dv8tion.jda.api.entities.Message; @@ -16,57 +14,61 @@ import java.util.ArrayList; import java.util.List; import java.util.concurrent.TimeUnit; -@Perms(Perm.MANAGE_MESSAGES) + public class ClearCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { if (args.length > 0) { - if (event.getGuild().getSelfMember().hasPermission(Permission.MESSAGE_MANAGE)) { - if (args[0].equals("all")) { - List msg = event.getTextChannel().getIterableHistory().complete(); - for (Message message : msg) { - message.delete().queue(); - } - Message message = event.getTextChannel().sendMessage(event.getMessageEditor().getMessage( + 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)) { + if (args[0].equals("all")) { + List msg = event.getTextChannel().getIterableHistory().complete(); + for (Message message : msg) { + message.delete().queue(); + } + Message message = event.getTextChannel().sendMessage(event.getMessageEditor().getMessage( MessageEditor.MessageType.INFO, "commands.moderation.lear.all.success.title", "", "commands.moderation.lear.all.success.description", String.valueOf(msg.size())) - .build()).complete(); - try { - TimeUnit.SECONDS.sleep(3); - } catch (InterruptedException e) { - e.printStackTrace(); - } - message.delete().queue(); - } else { - try { - int nbToDelete = Integer.parseInt(args[0]); - if (nbToDelete < 1 || nbToDelete > 99) { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.WARNING, "", "commands.moderation.clear.number.error.description").build()).queue(); - } else { - List history = event.getTextChannel().getHistory().retrievePast(nbToDelete + 1).complete(); - List msgToDelete = new ArrayList<>(history); - event.getTextChannel().deleteMessages(msgToDelete).queue(); - Message msg = event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.INFO, "", "", "commands.moderation.clear.success.description", String.valueOf(nbToDelete)).build()).complete(); - try { - TimeUnit.SECONDS.sleep(2); - } catch (InterruptedException e) { - e.printStackTrace(); - } - msg.delete().queue(); + .build()).complete(); + try { + TimeUnit.SECONDS.sleep(3); + } catch (InterruptedException e) { + e.printStackTrace(); + } + message.delete().queue(); + } else { + try { + int nbToDelete = Integer.parseInt(args[0]); + if (nbToDelete < 1 || nbToDelete > 99) { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.WARNING, "", "commands.moderation.clear.number.error.description").build()).queue(); + } else { + List history = event.getTextChannel().getHistory().retrievePast(nbToDelete + 1).complete(); + List msgToDelete = new ArrayList<>(history); + event.getTextChannel().deleteMessages(msgToDelete).queue(); + Message msg = event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.INFO, "", "", "commands.moderation.clear.success.description", String.valueOf(nbToDelete)).build()).complete(); + try { + TimeUnit.SECONDS.sleep(2); + } catch (InterruptedException e) { + e.printStackTrace(); + } + msg.delete().queue(); + } + } catch (NumberFormatException e) { + event.getHelpCommand().sendHelp(this, event); + } catch (IllegalArgumentException e) { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.WARNING, "commands.moderation.clear.message.error.title", "commands.moderation.clear.message.error.description") + .build()).queue(); } - } catch (NumberFormatException e) { - event.getHelpCommand().sendHelp(this, event); - } catch (IllegalArgumentException e) { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.WARNING, "commands.moderation.clear.message.error.title", "commands.moderation.clear.message.error.description") - .build()).queue(); } + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } else { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } } else { event.getHelpCommand().sendHelp(this, event); diff --git a/src/main/java/com/bbn/hadder/commands/moderation/GuildPrefixCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/GuildPrefixCommand.java new file mode 100644 index 0000000..35bfb2b --- /dev/null +++ b/src/main/java/com/bbn/hadder/commands/moderation/GuildPrefixCommand.java @@ -0,0 +1,53 @@ +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.Permission; + +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.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { + if (args.length == 1) { + if (!args[0].contains("\"")) { + + event.getRethink().setGuildPrefix(args[0], event.getGuild().getId()); + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage( + MessageEditor.MessageType.INFO, + "commands.moderation.prefix.success.title", + "✅", + "commands.moderation.prefix.success.description", + args[0]).build() + ).queue(); + } else { + event.getTextChannel().sendMessage( + event.getMessageEditor().getMessage( + MessageEditor.MessageType.WARNING, + "", + "commands.moderation.prefix.error.description").build()).queue(); + } + } else { + event.getHelpCommand().sendHelp(this, event); + } + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); + } + } + + @Override + public String[] labels() { + return new String[]{"guildprefix"}; + } + + @Override + public String description() { + return "commands.moderation.prefix.help.description"; + } + + @Override + public String usage() { + return "guildprefix"; + } +} 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 37f9b0d..5bc0981 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/InviteDetectCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/InviteDetectCommand.java @@ -6,53 +6,54 @@ package com.bbn.hadder.commands.moderation; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; -import com.bbn.hadder.core.Perm; -import com.bbn.hadder.core.Perms; import com.bbn.hadder.utils.MessageEditor; import net.dv8tion.jda.api.Permission; -@Perms(Perm.MANAGE_SERVER) public class InviteDetectCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { if (args.length == 1) { - String opinion = args[0].toLowerCase(); - switch (opinion) { - case "on": - if (!event.getRethink().getInviteDetection(event.getGuild().getId())) { - event.getRethink().setInviteDetection(event.getGuild().getId(), true); - event.getTextChannel().sendMessage( - event.getMessageEditor().getMessage( - MessageEditor.MessageType.INFO, - "commands.moderation.invitedetect.activate.success.title", - "commands.moderation.invitedetect.activate.success.description") + if (event.getMember().hasPermission(Permission.MANAGE_SERVER) || event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { + String opinion = args[0].toLowerCase(); + switch (opinion) { + case "on": + if (!event.getRethink().getInviteDetection(event.getGuild().getId())) { + event.getRethink().setInviteDetection(event.getGuild().getId(), true); + event.getTextChannel().sendMessage( + event.getMessageEditor().getMessage( + MessageEditor.MessageType.INFO, + "commands.moderation.invitedetect.activate.success.title", + "commands.moderation.invitedetect.activate.success.description") .build()).queue(); - } else { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage( - MessageEditor.MessageType.WARNING, - "commands.moderation.invitedetect.activate.error.title", - "commands.moderation.invitedetect.activate.error.description") - .build()).queue(); - } - break; + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage( + MessageEditor.MessageType.WARNING, + "commands.moderation.invitedetect.activate.error.title", + "commands.moderation.invitedetect.activate.error.description") + .build()).queue(); + } + break; - case "off": - if (event.getRethink().getInviteDetection(event.getGuild().getId())) { - event.getRethink().setInviteDetection(event.getGuild().getId(), false); - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage( - MessageEditor.MessageType.INFO, - "commands.moderation.invitedetect.deactivate.success.title", - "commands.moderation.invitedetect.deactivate.success.description") - .build()).queue(); - } else { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage( - MessageEditor.MessageType.WARNING, - "commands.moderation.invitedetect.deactivate.error.title", - "commands.moderation.invitedetect.deactivate.error.description") - .build()).queue(); + case "off": + if (event.getRethink().getInviteDetection(event.getGuild().getId())) { + event.getRethink().setInviteDetection(event.getGuild().getId(), false); + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage( + MessageEditor.MessageType.INFO, + "commands.moderation.invitedetect.deactivate.success.title", + "commands.moderation.invitedetect.deactivate.success.description") + .build()).queue(); + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage( + MessageEditor.MessageType.WARNING, + "commands.moderation.invitedetect.deactivate.error.title", + "commands.moderation.invitedetect.deactivate.error.description") + .build()).queue(); + } + break; } - break; + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } } else { event.getHelpCommand().sendHelp(this, event); 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 911bb52..a894608 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/KickCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/KickCommand.java @@ -6,62 +6,63 @@ package com.bbn.hadder.commands.moderation; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; -import com.bbn.hadder.core.Perm; -import com.bbn.hadder.core.Perms; import com.bbn.hadder.utils.MessageEditor; +import net.dv8tion.jda.api.Permission; import net.dv8tion.jda.api.entities.Member; -@Perms(Perm.KICK_MEMBERS) + public class KickCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { - if (event.getMessage().getMentionedMembers().size() == 1) { - Member victim = event.getMessage().getMentionedMembers().get(0); - if (!event.getAuthor().getId().equals(victim.getId())) { - if (!event.getJDA().getSelfUser().getId().equals(victim.getId())) { - if (event.getGuild().getSelfMember().canInteract(victim)) { - event.getGuild().kick(victim, "Kicked by " + event.getAuthor().getAsTag()).queue(); - event.getTextChannel().sendMessage( - event.getMessageEditor().getMessage( - MessageEditor.MessageType.INFO, - "commands.moderation.kick.success.title", - "✅", - "commands.moderation.kick.success.description", - victim.getUser().getName()).build()).queue(); - } else { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); - } - } else { - event.getTextChannel().sendMessage( - event.getMessageEditor().getMessage( - MessageEditor.MessageType.WARNING, - "commands.moderation.kick.error.title", - "commands.moderation.kick.myself.error.description").build()).queue(); - } - } else { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.WARNING, "commands.moderation.kick.error.title", "commands.moderation.kick.yourself.error.description").build()).queue(); - } - } else if (event.getMessage().getMentionedMembers().size() == 0) { - event.getHelpCommand().sendHelp(this, event); - } else if (event.getMessage().getMentionedMembers().size() > 1) { - for (int i = 0; i < event.getMessage().getMentionedMembers().size(); i++) { - Member member = event.getMessage().getMentionedMembers().get(i); - if (!event.getAuthor().getId().equals(member.getId())) { - if (!event.getJDA().getSelfUser().getId().equals(member.getId())) { - if (event.getGuild().getSelfMember().canInteract(member)) { - event.getGuild().kick(member).reason("Mass Kicked by " + event.getAuthor().getAsTag()).queue(); + 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())) { + if (!event.getJDA().getSelfUser().getId().equals(victim.getId())) { + if (event.getGuild().getSelfMember().canInteract(victim)) { + event.getGuild().kick(victim, "Kicked by " + event.getAuthor().getAsTag()).queue(); + event.getTextChannel().sendMessage( + event.getMessageEditor().getMessage( + MessageEditor.MessageType.INFO, + "commands.moderation.kick.success.title", + "✅", + "commands.moderation.kick.success.description", + victim.getUser().getName()).build()).queue(); } else { event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } else { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.WARNING, "commands.moderation.kick.error.title", "commands.moderation.kick.myself.error.description").build()).queue(); + event.getTextChannel().sendMessage( + event.getMessageEditor().getMessage( + MessageEditor.MessageType.WARNING, + "commands.moderation.kick.error.title", + "commands.moderation.kick.myself.error.description").build()).queue(); } } else { event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.WARNING, "commands.moderation.kick.error.title", "commands.moderation.kick.yourself.error.description").build()).queue(); } + } else if (event.getMessage().getMentionedMembers().size() == 0) { + event.getHelpCommand().sendHelp(this, event); + } else if (event.getMessage().getMentionedMembers().size() > 1) { + for (int i = 0; i < event.getMessage().getMentionedMembers().size(); i++) { + Member member = event.getMessage().getMentionedMembers().get(i); + if (!event.getAuthor().getId().equals(member.getId())) { + if (!event.getJDA().getSelfUser().getId().equals(member.getId())) { + if (event.getGuild().getSelfMember().canInteract(member)) { + event.getGuild().kick(member).reason("Mass Kicked by " + event.getAuthor().getAsTag()).queue(); + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); + } + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.WARNING, "commands.moderation.kick.error.title","commands.moderation.kick.myself.error.description").build()).queue(); + } + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.WARNING, "commands.moderation.kick.error.title", "commands.moderation.kick.yourself.error.description").build()).queue(); + } + } + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.INFO,"commands.moderation.kick.success.title", "✅","commands.moderation.kick.masskick.success.description", String.valueOf(event.getMessage().getMentionedMembers().size())).build()).queue(); } - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.INFO, "commands.moderation.kick.success.title", "✅", "commands.moderation.kick.masskick.success.description", String.valueOf(event.getMessage().getMentionedMembers().size())).build()).queue(); } } @@ -77,6 +78,6 @@ public class KickCommand implements Command { @Override public String usage() { - return "user"; + return "<@User>"; } } 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 df21d5a..3b04bcf 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/NickCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/NickCommand.java @@ -6,90 +6,91 @@ package com.bbn.hadder.commands.moderation; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; -import com.bbn.hadder.core.Perm; -import com.bbn.hadder.core.Perms; import com.bbn.hadder.utils.MessageEditor; import net.dv8tion.jda.api.Permission; import net.dv8tion.jda.api.entities.Member; -@Perms(Perm.CHANGE_NICKNAME) public class NickCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { - 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())) { - if (event.getGuild().getSelfMember().canInteract(event.getMessage().getMentionedMembers().get(0))) { - 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(); - event.getTextChannel().sendMessage( - event.getMessageEditor().getMessage( - MessageEditor.MessageType.INFO, - "commands.moderation.nick.success.title", - "✅", - "commands.moderation.nick.success.description", - 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(); - event.getTextChannel().sendMessage( - event.getMessageEditor().getMessage( - MessageEditor.MessageType.INFO, - "commands.moderation.nick.success.title", - "✅", - "commands.moderation.nick.success.description", event.getMessage().getMentionedMembers().get(0).getUser().getAsTag() - ).build()).queue(); + 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())) { + if (event.getGuild().getSelfMember().canInteract(event.getMessage().getMentionedMembers().get(0))) { + 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(); + event.getTextChannel().sendMessage( + event.getMessageEditor().getMessage( + MessageEditor.MessageType.INFO, + "commands.moderation.nick.success.title", + "✅", + "commands.moderation.nick.success.description", + 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(); + event.getTextChannel().sendMessage( + event.getMessageEditor().getMessage( + MessageEditor.MessageType.INFO, + "commands.moderation.nick.success.title", + "✅", + "commands.moderation.nick.success.description", event.getMessage().getMentionedMembers().get(0).getUser().getAsTag() + ).build()).queue(); + } + } else { + event.getHelpCommand().sendHelp(this, event); } } else { - event.getHelpCommand().sendHelp(this, event); + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } else { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); + 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(); + event.getTextChannel().sendMessage( + event.getMessageEditor().getMessage( + MessageEditor.MessageType.INFO, + "commands.moderation.nick.success.title", + "✅", + "commands.moderation.nick.myself.success.description", + "").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(); + event.getTextChannel().sendMessage( + event.getMessageEditor().getMessage( + MessageEditor.MessageType.INFO, + "commands.moderation.nick.success.title", + "✅", + "commands.moderation.nick.myself.success.description", "" + ).build()).queue(); + } } + } else if (event.getMessage().getMentionedMembers().size() == 0) { + event.getHelpCommand().sendHelp(this, event); } 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(); - event.getTextChannel().sendMessage( - event.getMessageEditor().getMessage( - MessageEditor.MessageType.INFO, - "commands.moderation.nick.success.title", - "✅", - "commands.moderation.nick.myself.success.description", - "").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(); - event.getTextChannel().sendMessage( - event.getMessageEditor().getMessage( - MessageEditor.MessageType.INFO, - "commands.moderation.nick.success.title", - "✅", - "commands.moderation.nick.myself.success.description", "" - ).build()).queue(); + for (int i = 0; i < event.getMessage().getMentionedMembers().size(); i++) { + Member member = event.getMessage().getMentionedMembers().get(i); + if (!event.getJDA().getSelfUser().getId().equals(member.getId())) { + event.getGuild().modifyNickname(member, args[args.length - 1]).reason("Mass Nicked by " + event.getAuthor().getAsTag()).queue(); + } else { + event.getGuild().getSelfMember().modifyNickname(args[args.length - 1]).reason("Mass Nicked by " + event.getAuthor().getAsTag()).queue(); + } } + event.getTextChannel().sendMessage( + event.getMessageEditor().getMessage( + MessageEditor.MessageType.INFO, + "commands.moderation.nick.success.title", + "✅", + "commands.moderation.nick.myself.success.description", String.valueOf(event.getMessage().getMentionedMembers().size()) + ).build()).queue(); } - } else if (event.getMessage().getMentionedMembers().size() == 0) { - event.getHelpCommand().sendHelp(this, event); } else { - for (int i = 0; i < event.getMessage().getMentionedMembers().size(); i++) { - Member member = event.getMessage().getMentionedMembers().get(i); - if (!event.getJDA().getSelfUser().getId().equals(member.getId())) { - event.getGuild().modifyNickname(member, args[args.length - 1]).reason("Mass Nicked by " + event.getAuthor().getAsTag()).queue(); - } else { - event.getGuild().getSelfMember().modifyNickname(args[args.length - 1]).reason("Mass Nicked by " + event.getAuthor().getAsTag()).queue(); - } - } - event.getTextChannel().sendMessage( - event.getMessageEditor().getMessage( - MessageEditor.MessageType.INFO, - "commands.moderation.nick.success.title", - "✅", - "commands.moderation.nick.myself.success.description", String.valueOf(event.getMessage().getMentionedMembers().size()) - ).build()).queue(); + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } else { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/moderation/PrefixCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/PrefixCommand.java deleted file mode 100644 index 43742d9..0000000 --- a/src/main/java/com/bbn/hadder/commands/moderation/PrefixCommand.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.bbn.hadder.commands.moderation; - -import com.bbn.hadder.commands.Command; -import com.bbn.hadder.commands.CommandEvent; -import com.bbn.hadder.core.Perm; -import com.bbn.hadder.core.Perms; -import com.bbn.hadder.utils.MessageEditor; -import net.dv8tion.jda.api.Permission; - -@Perms(Perm.MANAGE_SERVER) -public class PrefixCommand implements Command { - - @Override - public void executed(String[] args, CommandEvent event) { - if (args.length == 1) { - if (!args[0].contains("\"")) { - - event.getRethink().setGuildPrefix(args[0], event.getGuild().getId()); - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage( - MessageEditor.MessageType.INFO, - "commands.moderation.prefix.success.title", - "✅", - "commands.moderation.prefix.success.description", - args[0]).build() - ).queue(); - } else { - event.getTextChannel().sendMessage( - event.getMessageEditor().getMessage( - MessageEditor.MessageType.WARNING, - "", - "commands.moderation.prefix.error.description").build()).queue(); - } - } else { - event.getHelpCommand().sendHelp(this, event); - } - } - - @Override - public String[] labels() { - return new String[]{"prefix"}; - } - - @Override - public String description() { - return "commands.moderation.prefix.help.description"; - } - - @Override - public String usage() { - return "prefix"; - } -} diff --git a/src/main/java/com/bbn/hadder/commands/moderation/RegionChangeCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/RegionChangeCommand.java index 416a26b..ee6af87 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RegionChangeCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RegionChangeCommand.java @@ -6,93 +6,91 @@ package com.bbn.hadder.commands.moderation; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; -import com.bbn.hadder.core.Perm; -import com.bbn.hadder.core.Perms; import com.bbn.hadder.utils.MessageEditor; import net.dv8tion.jda.api.Permission; import net.dv8tion.jda.api.Region; -@Perms(Perm.MANAGE_SERVER) public class RegionChangeCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { if (args.length == 1) { - if (event.getMember().hasPermission(Permission.MANAGE_SERVER) || event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { - switch (args[0].toLowerCase()) { - case "amsterdam": - setRegion(Region.AMSTERDAM, "Amsterdam", event); - break; - case "frankfurt": - setRegion(Region.FRANKFURT, "Frankfurt", event); - break; - case "eu-west": - setRegion(Region.EU_WEST, "EU West", event); - break; - case "eu-central": - setRegion(Region.EU_CENTRAL, "EU Central", event); - break; - case "europe": - setRegion(Region.EUROPE, "EUROPE", event); - break; - case "brazil": - setRegion(Region.BRAZIL, "Brazil", event); - break; - case "hongkong": - setRegion(Region.HONG_KONG, "Hong Kong", event); - break; - case "india": - setRegion(Region.INDIA, "India", event); - break; - case "japan": - setRegion(Region.JAPAN, "Japan", event); - break; - case "london": - setRegion(Region.LONDON, "London", event); - break; - case "russia": - setRegion(Region.RUSSIA, "Russia", event); - break; - case "singapore": - setRegion(Region.SINGAPORE, "Singapore", event); - break; - case "south-africa": - setRegion(Region.SOUTH_AFRICA, "South Africa", event); - break; - case "sydney": - setRegion(Region.SYDNEY, "Sydney", event); - break; - case "us-central": - setRegion(Region.US_CENTRAL, "US Central", event); - break; - case "us-east": - setRegion(Region.US_EAST, "US East", event); - break; - case "us-west": - setRegion(Region.US_WEST, "US West", event); - break; - case "us-south": - setRegion(Region.US_SOUTH, "US South", event); - break; - case "list": - event.getTextChannel().sendMessage( - event.getMessageEditor().getMessage( - MessageEditor.MessageType.INFO, - "commands.moderation.regionchange.regions.title", - "") - .setDescription("**LOCKED:**\n`amsterdam` `frankfurt` `eu-west` `eu-central` `london`\n\n**UNLOCKED:**\n`europe` `brazil` `hongkong` `india` `japan` `singapore` `south-africa` `sydney` `us-central` `us-east` `us-west` `us-south`") - .build()).queue(); - break; - } - } else - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); + if (event.getGuild().getSelfMember().hasPermission(Permission.MANAGE_SERVER)) { + if (event.getMember().hasPermission(Permission.MANAGE_SERVER) || event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { + switch (args[0].toLowerCase()) { + case "amsterdam": + setRegion(Region.AMSTERDAM, "Amsterdam", event); + break; + case "frankfurt": + setRegion(Region.FRANKFURT, "Frankfurt", event); + break; + case "eu-west": + setRegion(Region.EU_WEST, "EU West", event); + break; + case "eu-central": + setRegion(Region.EU_CENTRAL, "EU Central", event); + break; + case "europe": + setRegion(Region.EUROPE, "EUROPE", event); + break; + case "brazil": + setRegion(Region.BRAZIL, "Brazil", event); + break; + case "hongkong": + setRegion(Region.HONG_KONG, "Hong Kong", event); + break; + case "india": + setRegion(Region.INDIA, "India", event); + break; + case "japan": + setRegion(Region.JAPAN, "Japan", event); + break; + case "london": + setRegion(Region.LONDON, "London", event); + break; + case "russia": + setRegion(Region.RUSSIA, "Russia", event); + break; + case "singapore": + setRegion(Region.SINGAPORE, "Singapore", event); + break; + case "south-africa": + setRegion(Region.SOUTH_AFRICA, "South Africa", event); + break; + case "sydney": + setRegion(Region.SYDNEY, "Sydney", event); + break; + case "us-central": + setRegion(Region.US_CENTRAL, "US Central", event); + break; + case "us-east": + setRegion(Region.US_EAST, "US East", event); + break; + case "us-west": + setRegion(Region.US_WEST, "US West", event); + break; + case "us-south": + setRegion(Region.US_SOUTH, "US South", event); + break; + case "list": + event.getTextChannel().sendMessage( + event.getMessageEditor().getMessage( + MessageEditor.MessageType.INFO, + "commands.moderation.regionchange.regions.title", + "") + .setDescription("**LOCKED:**\n`amsterdam` `frankfurt` `eu-west` `eu-central` `london`\n\n**UNLOCKED:**\n`europe` `brazil` `hongkong` `india` `japan` `singapore` `south-africa` `sydney` `us-central` `us-east` `us-west` `us-south`") + .build()).queue(); + break; + } + } else event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); + } else event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } else event.getTextChannel().sendMessage( event.getMessageEditor().getMessage( MessageEditor.MessageType.INFO, "commands.moderation.regionchange.regions.title", "") .setDescription("**LOCKED:**\n`amsterdam` `frankfurt` `eu-west` `eu-central` `london`\n\n**UNLOCKED:**\n`europe` `brazil` `hongkong` `india` `japan` `singapore` `south-africa` `sydney` `us-central` `us-east` `us-west` `us-south`") - .build()).queue(); + .build()).queue(); } public void setRegion (Region region, String region_name, CommandEvent event) { 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 9c914bb..f8fac2a 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RoleCommand.java @@ -2,81 +2,81 @@ package com.bbn.hadder.commands.moderation; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; -import com.bbn.hadder.core.Perm; -import com.bbn.hadder.core.Perms; import com.bbn.hadder.utils.MessageEditor; import net.dv8tion.jda.api.Permission; import net.dv8tion.jda.api.entities.Member; import net.dv8tion.jda.api.entities.Role; -@Perms(Perm.MANAGE_ROLES) public class RoleCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { if (args.length > 0) { if (event.getMember().hasPermission(Permission.MANAGE_ROLES)) { - - 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()) { - for (Role role : event.getMessage().getMentionedRoles()) { - if (event.getGuild().getSelfMember().canInteract(member)) { - if (event.getGuild().getSelfMember().canInteract(role)) { - event.getGuild().addRoleToMember(member, role).reason("Role added by " + event.getAuthor().getAsTag()).queue(); + if (event.getGuild().getSelfMember().hasPermission(Permission.MANAGE_ROLES) || event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { + 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()) { + for (Role role : event.getMessage().getMentionedRoles()) { + if (event.getGuild().getSelfMember().canInteract(member)) { + if (event.getGuild().getSelfMember().canInteract(role)) { + event.getGuild().addRoleToMember(member, role).reason("Role added by " + event.getAuthor().getAsTag()).queue(); + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); + } } else { event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } - } else { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } + event.getChannel().sendMessage( + event.getMessageEditor().getMessage( + MessageEditor.MessageType.INFO, + "commands.moderation.role.add.success.title", + "✅", + "", + "commands.moderation.role.add.success.description", + String.valueOf(event.getMessage().getMentionedRoles().size()), + String.valueOf(event.getMessage().getMentionedMembers().size())) + .build()).queue(); } - event.getChannel().sendMessage( - event.getMessageEditor().getMessage( - MessageEditor.MessageType.INFO, - "commands.moderation.role.add.success.title", - "✅", - "", - "commands.moderation.role.add.success.description", - String.valueOf(event.getMessage().getMentionedRoles().size()), - String.valueOf(event.getMessage().getMentionedMembers().size())) - .build()).queue(); - } - break; + break; - case "remove": - 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(); + case "remove": + 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 { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); + } } else { event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } - } else { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } + event.getChannel().sendMessage( + event.getMessageEditor().getMessage( + MessageEditor.MessageType.INFO, + "commands.moderation.role.remove.success.title", + "✅", + "", + "commands.moderation.role.remove.success.description", + String.valueOf(event.getMessage().getMentionedRoles().size()), + String.valueOf(event.getMessage().getMentionedMembers().size())) + .build()).queue(); } - event.getChannel().sendMessage( - event.getMessageEditor().getMessage( - MessageEditor.MessageType.INFO, - "commands.moderation.role.remove.success.title", - "✅", - "", - "commands.moderation.role.remove.success.description", - String.valueOf(event.getMessage().getMentionedRoles().size()), - String.valueOf(event.getMessage().getMentionedMembers().size())) - .build()).queue(); - } - break; + break; + } + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); } } else { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } } else { event.getHelpCommand().sendHelp(this, event); 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 23fb16e..f39dd5c 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/RulesCommand.java @@ -6,8 +6,6 @@ package com.bbn.hadder.commands.moderation; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; -import com.bbn.hadder.core.Perm; -import com.bbn.hadder.core.Perms; import com.bbn.hadder.utils.EventWaiter; import com.bbn.hadder.utils.MessageEditor; import net.dv8tion.jda.api.Permission; @@ -17,45 +15,48 @@ import net.dv8tion.jda.api.entities.Role; import net.dv8tion.jda.api.entities.TextChannel; import net.dv8tion.jda.api.events.message.guild.GuildMessageReceivedEvent; -@Perms(Perm.MANAGE_SERVER) public class RulesCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { - if (event.getGuild().getSelfMember().hasPermission(Permission.MANAGE_ROLES)) { - event.getTextChannel().sendMessage( - event.getMessageEditor().getMessage( - MessageEditor.MessageType.INFO, - "commands.moderation.rules.setup.title", - "commands.moderation.rules.setup.description") - .build()).queue(); - new EventWaiter().newOnMessageEventWaiter(event1 -> { - if (event1.getMessage().getMentionedChannels().size() == 1) { - try { - TextChannel channel = event1.getMessage().getMentionedChannels().get(0); - createRules(event, event1, channel); - } catch (Exception e) { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.ERROR, - "commands.moderation.rules.channel.error.title", - "commands.moderation.rules.channel.error.description") - .build()).queue(); + 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( + event.getMessageEditor().getMessage( + MessageEditor.MessageType.INFO, + "commands.moderation.rules.setup.title", + "commands.moderation.rules.setup.description") + .build()).queue(); + new EventWaiter().newOnMessageEventWaiter(event1 -> { + if (event1.getMessage().getMentionedChannels().size() == 1) { + try { + TextChannel channel = event1.getMessage().getMentionedChannels().get(0); + createRules(event, event1, channel); + } catch (Exception e) { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.ERROR, + "commands.moderation.rules.channel.error.title", + "commands.moderation.rules.channel.error.description") + .build()).queue(); + } + } else { + try { + TextChannel channel = event1.getGuild().getTextChannelsByName(event1.getMessage().getContentRaw(), true).get(0); + createRules(event, event1, channel); + } catch (Exception e) { + event.getTextChannel().sendMessage( + event.getMessageEditor().getMessage( + MessageEditor.MessageType.ERROR, + "commands.moderation.rules.channel.error.title", + "commands.moderation.rules.channel.error.description") + .build()).queue(); + } } - } else { - try { - TextChannel channel = event1.getGuild().getTextChannelsByName(event1.getMessage().getContentRaw(), true).get(0); - createRules(event, event1, channel); - } catch (Exception e) { - event.getTextChannel().sendMessage( - event.getMessageEditor().getMessage( - MessageEditor.MessageType.ERROR, - "commands.moderation.rules.channel.error.title", - "commands.moderation.rules.channel.error.description") - .build()).queue(); - } - } - }, event.getJDA(), event.getAuthor()); + }, event.getJDA(), event.getAuthor()); + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); + } } else { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue(); + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); } } diff --git a/src/main/java/com/bbn/hadder/commands/moderation/StarBoardCommand.java b/src/main/java/com/bbn/hadder/commands/moderation/SetStarBoardCommand.java similarity index 92% rename from src/main/java/com/bbn/hadder/commands/moderation/StarBoardCommand.java rename to src/main/java/com/bbn/hadder/commands/moderation/SetStarBoardCommand.java index 50d6987..bfd32c6 100644 --- a/src/main/java/com/bbn/hadder/commands/moderation/StarBoardCommand.java +++ b/src/main/java/com/bbn/hadder/commands/moderation/SetStarBoardCommand.java @@ -3,10 +3,10 @@ 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.entities.TextChannel; -public class StarBoardCommand implements Command { - +public class SetStarBoardCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { if (event.getMessage().getMentionedChannels().size()==1) { @@ -35,7 +35,7 @@ public class StarBoardCommand implements Command { @Override public String[] labels() { - return new String[]{"starboard"}; + return new String[]{"setstarboard"}; } @Override 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 ca5fac2..06b73eb 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/EvalCommand.java @@ -7,8 +7,6 @@ package com.bbn.hadder.commands.owner; import com.bbn.hadder.Hadder; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; -import com.bbn.hadder.core.Perm; -import com.bbn.hadder.core.Perms; import com.bbn.hadder.utils.MessageEditor; import javax.script.ScriptEngine; @@ -18,79 +16,84 @@ import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.TimeUnit; -@Perms(Perm.BOT_OWNER) public class EvalCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { - 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("msg", event.getMessage()); - engine.put("shardmanager", Hadder.shardManager); - engine.put("rethink", event.getRethink()); - 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("author", event.getAuthor()); - engine.put("member", event.getMember()); - engine.put("self", event.getGuild().getSelfMember()); - - ScheduledExecutorService service = Executors.newScheduledThreadPool(1); - - service.schedule(() -> { - - long startExec = System.currentTimeMillis(); - Object out; + if (event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { + if (args.length > 0) { + ScriptEngine engine = new ScriptEngineManager().getEngineByName("nashorn"); 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] + " "; - } - out = engine.eval(script); - - event.getTextChannel().sendMessage(event.getMessageEditor() - .getMessage(MessageEditor.MessageType.INFO, "commands.owner.eval.success.title", "") - .addField(event.getMessageEditor().getTerm("commands.owner.eval.success.input"), - "```java\n\n" + script + "```", false) - .addField(event.getMessageEditor().getTerm("commands.owner.eval.success.output"), - "```java\n\n" + out.toString() + "```", false) - .addField(event.getMessageEditor().getTerm("commands.owner.eval.success.timing"), - System.currentTimeMillis() - startExec + " milliseconds", false) - .build()).queue(); - } catch (Exception ex) { - event.getTextChannel().sendMessage(event.getMessageEditor() - .getMessage(MessageEditor.MessageType.INFO, "commands.owner.eval.success.title", "") - .addField(event.getMessageEditor().getTerm("error"), - "```java\n\n" + ex.getMessage() + "```", false) - .addField(event.getMessageEditor().getTerm("commands.owner.eval.success.timing"), - System.currentTimeMillis() - startExec + " milliseconds", false) - .build()).queue(); - + engine.eval("var imports = new JavaImporter(java.io, java.lang, java.util);"); + } catch (ScriptException ex) { + ex.printStackTrace(); } - service.shutdownNow(); + engine.put("msg", event.getMessage()); + engine.put("shardmanager", Hadder.shardManager); + engine.put("rethink", event.getRethink()); + 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("author", event.getAuthor()); + engine.put("member", event.getMember()); + engine.put("self", event.getGuild().getSelfMember()); - }, 0, TimeUnit.MILLISECONDS); + ScheduledExecutorService service = Executors.newScheduledThreadPool(1); + service.schedule(() -> { + + long startExec = System.currentTimeMillis(); + Object out; + + 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] + " "; + } + out = engine.eval(script); + + event.getTextChannel().sendMessage(event.getMessageEditor() + .getMessage(MessageEditor.MessageType.INFO, "commands.owner.eval.success.title", "") + .addField(event.getMessageEditor().getTerm("commands.owner.eval.success.input"), + "```java\n\n" + script + "```", false) + .addField(event.getMessageEditor().getTerm("commands.owner.eval.success.output"), + "```java\n\n" + out.toString() + "```", false) + .addField(event.getMessageEditor().getTerm("commands.owner.eval.success.timing"), + System.currentTimeMillis() - startExec + " milliseconds", false) + .build()).queue(); + } catch (Exception ex) { + event.getTextChannel().sendMessage(event.getMessageEditor() + .getMessage(MessageEditor.MessageType.INFO, "commands.owner.eval.success.title", "") + .addField(event.getMessageEditor().getTerm("error"), + "```java\n\n" + ex.getMessage() + "```", false) + .addField(event.getMessageEditor().getTerm("commands.owner.eval.success.timing"), + System.currentTimeMillis() - startExec + " milliseconds", false) + .build()).queue(); + + } + + service.shutdownNow(); + + }, 0, TimeUnit.MILLISECONDS); + + } else { + event.getHelpCommand().sendHelp(this, event); + } } else { - event.getHelpCommand().sendHelp(this, event); + event.getTextChannel() + .sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_PERMISSION).build()) + .queue(); } } @Override public String[] labels() { - return new String[]{"eval"}; + return new String[] { "eval" }; } @Override 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 b35d07d..8b2a21e 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/GuildLeaveCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/GuildLeaveCommand.java @@ -6,19 +6,16 @@ package com.bbn.hadder.commands.owner; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; -import com.bbn.hadder.core.Perm; -import com.bbn.hadder.core.Perms; import com.bbn.hadder.utils.MessageEditor; import net.dv8tion.jda.api.entities.Guild; -@Perms(Perm.BOT_OWNER) public class GuildLeaveCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { - if (args.length > 0) { - Guild guild = event.getJDA().getGuildById(args[0]); - try { + 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(event.getMessageEditor() @@ -26,17 +23,19 @@ public class GuildLeaveCommand implements Command { "", "commands.owner.guildleave.success.description", guild.getName()) .build()) .queue(); - } catch (Exception e) { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.WARNING, "commands.owner.guildleave.error.title", "", "commands.owner.guildleave.help.description", guild.getName()).build()).queue(); + } else { + event.getHelpCommand().sendHelp(this, event); } } else { - event.getHelpCommand().sendHelp(this, event); + event.getTextChannel() + .sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_PERMISSION).build()) + .queue(); } } @Override public String[] labels() { - return new String[]{"guildleave"}; + return new String[] { "guildleave" }; } @Override 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 35a2377..4ce2138 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/RebootCommand.java @@ -6,15 +6,18 @@ package com.bbn.hadder.commands.owner; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; -import com.bbn.hadder.core.Perm; -import com.bbn.hadder.core.Perms; +import com.bbn.hadder.utils.MessageEditor; + -@Perms(Perm.BOT_OWNER) public class RebootCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { - Runtime.getRuntime().exit(69); + if (event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { + Runtime.getRuntime().exit(69); + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); + } } @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 a002481..4f9307a 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/ShutdownCommand.java @@ -6,19 +6,20 @@ package com.bbn.hadder.commands.owner; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; -import com.bbn.hadder.core.Perm; -import com.bbn.hadder.core.Perms; import com.bbn.hadder.utils.MessageEditor; -@Perms(Perm.BOT_OWNER) public class ShutdownCommand implements Command { @Override public void executed(String[] args, CommandEvent event) { - event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.INFO).setTitle("Shutdown").build()).queue(); - event.getJDA().getShardManager().shutdown(); - System.out.println("Bot shut down via Command..."); - Runtime.getRuntime().exit(69); + if (event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.INFO).setTitle("Shutdown").build()).queue(); + event.getJDA().getShardManager().shutdown(); + System.out.println("Bot shut down via Command..."); + Runtime.getRuntime().exit(69); + } else { + event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_PERMISSION).build()).queue(); + } } @Override diff --git a/src/main/java/com/bbn/hadder/commands/owner/TestCommand.java b/src/main/java/com/bbn/hadder/commands/owner/TestCommand.java index ae25810..0e8133b 100644 --- a/src/main/java/com/bbn/hadder/commands/owner/TestCommand.java +++ b/src/main/java/com/bbn/hadder/commands/owner/TestCommand.java @@ -2,8 +2,7 @@ package com.bbn.hadder.commands.owner; import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; -import com.bbn.hadder.core.Perm; -import com.bbn.hadder.core.Perms; +import com.bbn.hadder.utils.MessageEditor; import com.bbn.hadder.utils.MessageEditor.MessageType; /* diff --git a/src/main/java/com/bbn/hadder/commands/settings/UserPrefixCommand.java b/src/main/java/com/bbn/hadder/commands/settings/PrefixCommand.java similarity index 89% rename from src/main/java/com/bbn/hadder/commands/settings/UserPrefixCommand.java rename to src/main/java/com/bbn/hadder/commands/settings/PrefixCommand.java index bf360fe..4bb58af 100644 --- a/src/main/java/com/bbn/hadder/commands/settings/UserPrefixCommand.java +++ b/src/main/java/com/bbn/hadder/commands/settings/PrefixCommand.java @@ -8,7 +8,7 @@ import com.bbn.hadder.commands.Command; import com.bbn.hadder.commands.CommandEvent; import com.bbn.hadder.utils.MessageEditor; -public class UserPrefixCommand implements Command { +public class PrefixCommand implements Command { public void executed(String[] args, CommandEvent event) { if (args.length == 1) { @@ -26,7 +26,7 @@ public class UserPrefixCommand implements Command { @Override public String[] labels() { - return new String[] { "userprefix" }; + return new String[] { "prefix" }; } @Override @@ -36,6 +36,6 @@ public class UserPrefixCommand implements Command { @Override public String usage() { - return "userprefix"; + return "prefix"; } } diff --git a/src/main/java/com/bbn/hadder/core/CommandHandler.java b/src/main/java/com/bbn/hadder/core/CommandHandler.java index a51e674..fef5f60 100644 --- a/src/main/java/com/bbn/hadder/core/CommandHandler.java +++ b/src/main/java/com/bbn/hadder/core/CommandHandler.java @@ -7,7 +7,6 @@ import com.bbn.hadder.commands.general.HelpCommand; import com.bbn.hadder.utils.MessageEditor; import net.dv8tion.jda.api.events.message.MessageReceivedEvent; -import java.util.Arrays; import java.util.List; public class CommandHandler { @@ -31,24 +30,11 @@ public class CommandHandler { .replaceFirst(prefix, "").replaceFirst(invoke, ""); if (argString.startsWith(" ")) argString = argString.replaceFirst(" ", ""); String[] args = argString.split(" "); - if (args.length > 0 && args[0].equals("")) args = new String[0]; - - CommandEvent commandEvent = new CommandEvent(event.getJDA(), event.getResponseNumber(), event.getMessage(), rethink, - config, this, helpCommand, new MessageEditor(rethink, event.getAuthor())); - if (cmd.getClass().getAnnotations().length>0) { - if (!Arrays.asList(cmd.getClass().getAnnotations()).contains(Perms.class)) { - for (Perm perm : cmd.getClass().getAnnotation(Perms.class).value()) { - if (!perm.check(commandEvent)) { - commandEvent.getTextChannel() - .sendMessage(commandEvent.getMessageEditor().getMessage(MessageEditor.MessageType.NO_PERMISSION).build()) - .queue(); - return; - } - } - } - } - - cmd.executed(args, commandEvent); + if (args.length>0&&args[0].equals("")) args = new String[0]; + cmd.executed(args, + new CommandEvent(event.getJDA(), event.getResponseNumber(), event.getMessage(), rethink, + config, this, helpCommand, new MessageEditor(rethink, event.getAuthor())) + ); return; } } diff --git a/src/main/java/com/bbn/hadder/core/Config.java b/src/main/java/com/bbn/hadder/core/Config.java index fce590e..7abbf78 100644 --- a/src/main/java/com/bbn/hadder/core/Config.java +++ b/src/main/java/com/bbn/hadder/core/Config.java @@ -63,7 +63,6 @@ public class Config { .value("DiscordExtremeList").value(null) .value("DiscordBotReviews").value(null) .value("DiscordBots").value(null) - .value("BotListSpace").value(null) .endObject().endObject().toString(); } @@ -142,8 +141,4 @@ public class Config { public String getBotListSpaceToken() { return config.getJSONObject("Tokens").getString("BotListSpace"); } - - public String getClydeName() { - return config.getString("Clyde"); - } } diff --git a/src/main/java/com/bbn/hadder/core/Perm.java b/src/main/java/com/bbn/hadder/core/Perm.java deleted file mode 100644 index 4cd1b7a..0000000 --- a/src/main/java/com/bbn/hadder/core/Perm.java +++ /dev/null @@ -1,75 +0,0 @@ -package com.bbn.hadder.core; - -import com.bbn.hadder.commands.CommandEvent; -import net.dv8tion.jda.api.Permission; - -/** - * @author Skidder / GregTCLTK - * @author Hax / Hax6775 / Schlauer_Hax - */ - -public enum Perm { - - BOT_OWNER() { - @Override - public boolean check(CommandEvent event) { - return event.getConfig().getOwners().contains(event.getAuthor().getIdLong()); - } - }, - MANAGE_MESSAGES { - @Override - public boolean check(CommandEvent event) { - return event.getMember().hasPermission(Permission.MESSAGE_MANAGE) || event.getConfig().getOwners().contains(event.getAuthor().getIdLong()); - } - }, - EMBED_MESSAGES { - @Override - public boolean check(CommandEvent event) { - return event.getMember().hasPermission(Permission.MESSAGE_EMBED_LINKS) || event.getConfig().getOwners().contains(event.getAuthor().getIdLong()); - } - }, - BAN_MEMBERS { - @Override - public boolean check(CommandEvent event) { - return event.getMember().hasPermission(Permission.BAN_MEMBERS) || event.getConfig().getOwners().contains(event.getAuthor().getIdLong()); - } - }, - KICK_MEMBERS { - @Override - public boolean check(CommandEvent event) { - return event.getMember().hasPermission(Permission.KICK_MEMBERS) || event.getConfig().getOwners().contains(event.getAuthor().getIdLong()); - } - }, - MANAGE_SERVER { - @Override - public boolean check(CommandEvent event) { - return event.getMember().hasPermission(Permission.MANAGE_SERVER) || event.getConfig().getOwners().contains(event.getAuthor().getIdLong()); - } - }, - MANAGE_ROLES { - @Override - public boolean check(CommandEvent event) { - return event.getMember().hasPermission(Permission.MANAGE_ROLES) || event.getConfig().getOwners().contains(event.getAuthor().getIdLong()); - } - }, - CHANGE_NICKNAME { - @Override - public boolean check(CommandEvent event) { - return event.getMember().hasPermission(Permission.NICKNAME_CHANGE) || event.getConfig().getOwners().contains(event.getAuthor().getIdLong()); - } - }, - ADMINISTRATOR { - @Override - public boolean check(CommandEvent event) { - return event.getMember().hasPermission(Permission.ADMINISTRATOR) || event.getConfig().getOwners().contains(event.getAuthor().getIdLong()); - } - }, - MANAGE_WEBHOOKS { - @Override - public boolean check(CommandEvent event) { - return event.getMember().hasPermission(Permission.MANAGE_WEBHOOKS) || event.getConfig().getOwners().contains(event.getAuthor().getIdLong()); - } - }; - - public abstract boolean check(CommandEvent event); -} diff --git a/src/main/java/com/bbn/hadder/core/Perms.java b/src/main/java/com/bbn/hadder/core/Perms.java deleted file mode 100644 index 7fc8426..0000000 --- a/src/main/java/com/bbn/hadder/core/Perms.java +++ /dev/null @@ -1,14 +0,0 @@ -package com.bbn.hadder.core; - -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; - -/** - * @author Skidder / GregTCLTK - * @author Hax / Hax6775 / Schlauer_Hax - */ - -@Retention(RetentionPolicy.RUNTIME) -public @interface Perms { - Perm[] value() default {}; -} diff --git a/src/main/java/com/bbn/hadder/listener/StarboardListener.java b/src/main/java/com/bbn/hadder/listener/StarboardListener.java index 8bdf694..f5438a7 100644 --- a/src/main/java/com/bbn/hadder/listener/StarboardListener.java +++ b/src/main/java/com/bbn/hadder/listener/StarboardListener.java @@ -3,13 +3,13 @@ package com.bbn.hadder.listener; import com.bbn.hadder.Rethink; import net.dv8tion.jda.api.EmbedBuilder; import net.dv8tion.jda.api.MessageBuilder; -import net.dv8tion.jda.api.entities.MessageReaction; import net.dv8tion.jda.api.events.message.react.GenericMessageReactionEvent; 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; import javax.annotation.Nonnull; +import java.time.format.DateTimeFormatter; public class StarboardListener extends ListenerAdapter { @@ -33,68 +33,34 @@ public class StarboardListener extends ListenerAdapter { if (event.getReaction().getReactionEmote().getName().equals("⭐")) { if (!rethink.hasStarboardMessage(event.getMessageId())) { if (rethink.hasStarboardChannel(event.getGuild().getId())) { - - event.getTextChannel().retrieveMessageById(event.getMessageId()).queue( - msg -> { - Integer stars = 0; - for (MessageReaction reaction : msg.getReactions()) { - if (reaction.getReactionEmote().getName().equals("⭐")) { - stars = reaction.getCount(); - } + event.getChannel().retrieveMessageById(event.getMessageId()).queue(msg -> { + event.getGuild().getTextChannelById(rethink.getStarboardChannel(event.getGuild().getId())) + .sendMessage(new MessageBuilder() + .setContent("⭐1" + " " + event.getTextChannel().getAsMention()) + .setEmbed( + new EmbedBuilder() + .setAuthor(event.getUser().getAsTag()) + .setDescription(msg.getContentRaw()) + .setTimestamp(msg.getTimeCreated()).build()).build()).queue( + starboardmsg -> { + rethink.insertStarboardMessage(msg.getId(), event.getGuild().getId(), starboardmsg.getId()); } - - if (Integer.parseInt(rethink.getNeededstars(event.getGuild().getId())) <= stars) { - event.getGuild().getTextChannelById(rethink.getStarboardChannel(event.getGuild().getId())) - .sendMessage(new MessageBuilder() - .setContent("⭐ 1" + " " + event.getTextChannel().getAsMention()) - .setEmbed( - new EmbedBuilder() - .setAuthor(msg.getAuthor().getAsTag()) - .setDescription(msg.getContentRaw()) - .setTimestamp(msg.getTimeCreated()).build()).build()).queue( - starboardmsg -> { - rethink.insertStarboardMessage(msg.getId(), event.getGuild().getId(), starboardmsg.getId()); - } - ); - } - } - ); - + ); + }); } } else { - - event.getTextChannel().retrieveMessageById(event.getMessageId()).queue( + event.getGuild().getTextChannelById(rethink.getStarboardChannel(event.getGuild().getId())) + .retrieveMessageById(rethink.getStarboardMessage(event.getMessageId())).queue( msg -> { - Integer stars = 0; - for (MessageReaction reaction : msg.getReactions()) { - if (reaction.getReactionEmote().getName().equals("⭐")) { - stars = reaction.getCount(); - } - } - - Integer finalStars = stars; - event.getGuild().getTextChannelById(rethink.getStarboardChannel(event.getGuild().getId())) - .retrieveMessageById(rethink.getStarboardMessage(event.getMessageId())).queue( - msg2 -> { - - if (Integer.parseInt(rethink.getNeededstars(event.getGuild().getId())) <= finalStars) { - msg2.editMessage(new MessageBuilder() - .setContent("⭐ " + finalStars + " " + event.getTextChannel().getAsMention()) - .setEmbed( - new EmbedBuilder() - .setAuthor(msg.getAuthor().getAsTag()) - .setDescription(msg.getContentRaw()) - .setTimestamp(msg.getTimeCreated()).build()).build()).queue(); - } else { - msg2.delete().queue(); - rethink.removeStarboardMessage(msg.getId()); - } - } - ); - + msg.editMessage(new MessageBuilder() + .setContent("⭐" + event.getReaction().getCount() + " " + event.getTextChannel().getAsMention()) + .setEmbed( + new EmbedBuilder() + .setAuthor(event.getUser().getAsTag()) + .setDescription(msg.getContentRaw()) + .setTimestamp(msg.getTimeCreated()).build()).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 2f22d85..ec9c8fa 100644 --- a/src/main/java/com/bbn/hadder/utils/MessageEditor.java +++ b/src/main/java/com/bbn/hadder/utils/MessageEditor.java @@ -35,7 +35,7 @@ public class MessageEditor { public EmbedBuilder getMessage(MessageType type, String title_language_string, String title_extra, String title_extra_two, String description_language_string, String description_extra, String description_extra_two) { - String language = (this.user!=null) ? rethink.getLanguage(this.user.getId()) : null; + String language = rethink.getLanguage(this.user.getId()); EmbedBuilder eb = this.getDefaultSettings(type); if (!title_language_string.equals("")) eb.setTitle(this.handle(language, title_language_string, title_extra, title_extra_two)); if (!description_language_string.equals("")) eb.setDescription(this.handle(language, description_language_string, description_extra, description_extra_two)); @@ -47,7 +47,7 @@ public class MessageEditor { WARNING, INFO, NO_PERMISSION, - NO_SELF_PERMISSION, + NO_SELF_PERMISSION, NO_NSFW } diff --git a/src/main/resources/Translations/Translations_de.properties b/src/main/resources/Translations/Translations_de.properties index 66c66bc..06576ae 100644 --- a/src/main/resources/Translations/Translations_de.properties +++ b/src/main/resources/Translations/Translations_de.properties @@ -2,21 +2,19 @@ # @author Skidder / GregTCLTK # -# -# @author Skidder / GregTCLTK -# - Hadder = Hadderino +user = <@User> searchterm = username = number = /all -guildprefix = prefix = +userprefix = vc-name/id = user+nickname = <@user> region = guildid = +content = error = Error none = None @@ -29,6 +27,7 @@ commands.fun.gif.help.description = Look for a GIF on Giphy commands.fun.meme.success.title = Your random meme commands.fun.meme.api.error = The request to the meme API could not be processed. Please try it again later. commands.fun.meme.help.description = Sends you a random meme. +commands.fun.clyde.help.description = Send a message as a webhook named Clyde. commands.general.about.success.title = Hadder - About commands.general.about.success.description = Hadder is an open source Discord bot. @@ -98,7 +97,7 @@ commands.moderation.clear.message.error.title = No messages\! commands.moderation.clear.message.error.description = There are no messages in this channel. commands.moderation.clear.help.description = Deletes the specified number of messages. commands.moderation.prefix.success.title = %extra% Successfully set %extra% -commands.moderation.prefix.success.description = I successfully set the new prefix for the guild to %extra% +commands.moderation.prefix.success.description = I successfully set the new prefix for the guild to `%extra%`. commands.moderation.prefix.error.description = The prefix must not contain **"** commands.moderation.prefix.help.description = Sets the Guild-Prefix. commands.moderation.invitedetect.activate.success.title = Successfully activated @@ -206,6 +205,8 @@ commands.owner.eval.help.description = Execute the given code commands.owner.eval.help.usage = commands.owner.guildleave.success.title = Successfully left commands.owner.guildleave.success.description = I successfully left %extra%. +commands.owner.guildleave.error.title = Can not leave +commands.owner.guildleave.error.description = I can not leave from this guild. Maybe this isn't a ID? commands.owner.guildleave.help.description = Quit from a guild commands.owner.reboot.help.description = Restart the bot commands.owner.shutdown.success.title = Shutdown @@ -214,9 +215,9 @@ commands.owner.test.success = TEST my friends commands.owner.test.help.description = Just a little Test Command commands.settings.language.success.title = Language set -commands.settings.language.success.description = %extra% is your new language now. +commands.settings.language.success.description = `%extra%` is your new language now. commands.settings.language.help.description = Sets the new primary language for a user. commands.settings.language.help.usage = commands.settings.prefix.success.title = %extra% Successfully set %extra% -commands.settings.prefix.success.description = I successfully set the new prefix for you to %extra%. +commands.settings.prefix.success.description = I successfully set the new prefix for you to `%extra%`. commands.settings.prefix.help.description = Sets a new Prefix diff --git a/src/main/resources/Translations/Translations_es.properties b/src/main/resources/Translations/Translations_es.properties index 8c367dd..69d45cf 100644 --- a/src/main/resources/Translations/Translations_es.properties +++ b/src/main/resources/Translations/Translations_es.properties @@ -2,21 +2,19 @@ # @author Skidder / GregTCLTK # -# -# @author Skidder / GregTCLTK -# - Hadder = Hadder +user = <@User> searchterm = username = number = /all -guildprefix = prefix = +userprefix = vc-name/id = user+nickname = <@user> region = guildid = +content = error = Error none = None @@ -29,6 +27,7 @@ commands.fun.gif.help.description = Look for a GIF on Giphy commands.fun.meme.success.title = Your random meme commands.fun.meme.api.error = The request to the meme API could not be processed. Please try it again later. commands.fun.meme.help.description = Sends you a random meme. +commands.fun.clyde.help.description = Send a message as a webhook named Clyde. commands.general.about.success.title = Hadder - About commands.general.about.success.description = Hadder is an open source Discord bot. @@ -98,7 +97,7 @@ commands.moderation.clear.message.error.title = No messages\! commands.moderation.clear.message.error.description = There are no messages in this channel. commands.moderation.clear.help.description = Deletes the specified number of messages. commands.moderation.prefix.success.title = %extra% Successfully set %extra% -commands.moderation.prefix.success.description = I successfully set the new prefix for the guild to %extra% +commands.moderation.prefix.success.description = I successfully set the new prefix for the guild to `%extra%`. commands.moderation.prefix.error.description = The prefix must not contain **"** commands.moderation.prefix.help.description = Sets the Guild-Prefix. commands.moderation.invitedetect.activate.success.title = Successfully activated @@ -206,6 +205,8 @@ commands.owner.eval.help.description = Execute the given code commands.owner.eval.help.usage = commands.owner.guildleave.success.title = Successfully left commands.owner.guildleave.success.description = I successfully left %extra%. +commands.owner.guildleave.error.title = Can not leave +commands.owner.guildleave.error.description = I can not leave from this guild. Maybe this isn't a ID? commands.owner.guildleave.help.description = Quit from a guild commands.owner.reboot.help.description = Restart the bot commands.owner.shutdown.success.title = Shutdown @@ -214,9 +215,9 @@ commands.owner.test.success = TEST my friends commands.owner.test.help.description = Just a little Test Command commands.settings.language.success.title = Language set -commands.settings.language.success.description = %extra% is your new language now. +commands.settings.language.success.description = `%extra%` is your new language now. commands.settings.language.help.description = Sets the new primary language for a user. commands.settings.language.help.usage = commands.settings.prefix.success.title = %extra% Successfully set %extra% -commands.settings.prefix.success.description = I successfully set the new prefix for you to %extra%. +commands.settings.prefix.success.description = I successfully set the new prefix for you to `%extra%`. commands.settings.prefix.help.description = Sets a new Prefix diff --git a/src/main/resources/Translations/Translations_fr.properties b/src/main/resources/Translations/Translations_fr.properties index 8c367dd..69d45cf 100644 --- a/src/main/resources/Translations/Translations_fr.properties +++ b/src/main/resources/Translations/Translations_fr.properties @@ -2,21 +2,19 @@ # @author Skidder / GregTCLTK # -# -# @author Skidder / GregTCLTK -# - Hadder = Hadder +user = <@User> searchterm = username = number = /all -guildprefix = prefix = +userprefix = vc-name/id = user+nickname = <@user> region = guildid = +content = error = Error none = None @@ -29,6 +27,7 @@ commands.fun.gif.help.description = Look for a GIF on Giphy commands.fun.meme.success.title = Your random meme commands.fun.meme.api.error = The request to the meme API could not be processed. Please try it again later. commands.fun.meme.help.description = Sends you a random meme. +commands.fun.clyde.help.description = Send a message as a webhook named Clyde. commands.general.about.success.title = Hadder - About commands.general.about.success.description = Hadder is an open source Discord bot. @@ -98,7 +97,7 @@ commands.moderation.clear.message.error.title = No messages\! commands.moderation.clear.message.error.description = There are no messages in this channel. commands.moderation.clear.help.description = Deletes the specified number of messages. commands.moderation.prefix.success.title = %extra% Successfully set %extra% -commands.moderation.prefix.success.description = I successfully set the new prefix for the guild to %extra% +commands.moderation.prefix.success.description = I successfully set the new prefix for the guild to `%extra%`. commands.moderation.prefix.error.description = The prefix must not contain **"** commands.moderation.prefix.help.description = Sets the Guild-Prefix. commands.moderation.invitedetect.activate.success.title = Successfully activated @@ -206,6 +205,8 @@ commands.owner.eval.help.description = Execute the given code commands.owner.eval.help.usage = commands.owner.guildleave.success.title = Successfully left commands.owner.guildleave.success.description = I successfully left %extra%. +commands.owner.guildleave.error.title = Can not leave +commands.owner.guildleave.error.description = I can not leave from this guild. Maybe this isn't a ID? commands.owner.guildleave.help.description = Quit from a guild commands.owner.reboot.help.description = Restart the bot commands.owner.shutdown.success.title = Shutdown @@ -214,9 +215,9 @@ commands.owner.test.success = TEST my friends commands.owner.test.help.description = Just a little Test Command commands.settings.language.success.title = Language set -commands.settings.language.success.description = %extra% is your new language now. +commands.settings.language.success.description = `%extra%` is your new language now. commands.settings.language.help.description = Sets the new primary language for a user. commands.settings.language.help.usage = commands.settings.prefix.success.title = %extra% Successfully set %extra% -commands.settings.prefix.success.description = I successfully set the new prefix for you to %extra%. +commands.settings.prefix.success.description = I successfully set the new prefix for you to `%extra%`. commands.settings.prefix.help.description = Sets a new Prefix diff --git a/src/main/resources/Translations/Translations_ru.properties b/src/main/resources/Translations/Translations_ru.properties index 8c367dd..69d45cf 100644 --- a/src/main/resources/Translations/Translations_ru.properties +++ b/src/main/resources/Translations/Translations_ru.properties @@ -2,21 +2,19 @@ # @author Skidder / GregTCLTK # -# -# @author Skidder / GregTCLTK -# - Hadder = Hadder +user = <@User> searchterm = username = number = /all -guildprefix = prefix = +userprefix = vc-name/id = user+nickname = <@user> region = guildid = +content = error = Error none = None @@ -29,6 +27,7 @@ commands.fun.gif.help.description = Look for a GIF on Giphy commands.fun.meme.success.title = Your random meme commands.fun.meme.api.error = The request to the meme API could not be processed. Please try it again later. commands.fun.meme.help.description = Sends you a random meme. +commands.fun.clyde.help.description = Send a message as a webhook named Clyde. commands.general.about.success.title = Hadder - About commands.general.about.success.description = Hadder is an open source Discord bot. @@ -98,7 +97,7 @@ commands.moderation.clear.message.error.title = No messages\! commands.moderation.clear.message.error.description = There are no messages in this channel. commands.moderation.clear.help.description = Deletes the specified number of messages. commands.moderation.prefix.success.title = %extra% Successfully set %extra% -commands.moderation.prefix.success.description = I successfully set the new prefix for the guild to %extra% +commands.moderation.prefix.success.description = I successfully set the new prefix for the guild to `%extra%`. commands.moderation.prefix.error.description = The prefix must not contain **"** commands.moderation.prefix.help.description = Sets the Guild-Prefix. commands.moderation.invitedetect.activate.success.title = Successfully activated @@ -206,6 +205,8 @@ commands.owner.eval.help.description = Execute the given code commands.owner.eval.help.usage = commands.owner.guildleave.success.title = Successfully left commands.owner.guildleave.success.description = I successfully left %extra%. +commands.owner.guildleave.error.title = Can not leave +commands.owner.guildleave.error.description = I can not leave from this guild. Maybe this isn't a ID? commands.owner.guildleave.help.description = Quit from a guild commands.owner.reboot.help.description = Restart the bot commands.owner.shutdown.success.title = Shutdown @@ -214,9 +215,9 @@ commands.owner.test.success = TEST my friends commands.owner.test.help.description = Just a little Test Command commands.settings.language.success.title = Language set -commands.settings.language.success.description = %extra% is your new language now. +commands.settings.language.success.description = `%extra%` is your new language now. commands.settings.language.help.description = Sets the new primary language for a user. commands.settings.language.help.usage = commands.settings.prefix.success.title = %extra% Successfully set %extra% -commands.settings.prefix.success.description = I successfully set the new prefix for you to %extra%. +commands.settings.prefix.success.description = I successfully set the new prefix for you to `%extra%`. commands.settings.prefix.help.description = Sets a new Prefix diff --git a/src/main/resources/Translations/Translations_tr.properties b/src/main/resources/Translations/Translations_tr.properties index 8c367dd..69d45cf 100644 --- a/src/main/resources/Translations/Translations_tr.properties +++ b/src/main/resources/Translations/Translations_tr.properties @@ -2,21 +2,19 @@ # @author Skidder / GregTCLTK # -# -# @author Skidder / GregTCLTK -# - Hadder = Hadder +user = <@User> searchterm = username = number = /all -guildprefix = prefix = +userprefix = vc-name/id = user+nickname = <@user> region = guildid = +content = error = Error none = None @@ -29,6 +27,7 @@ commands.fun.gif.help.description = Look for a GIF on Giphy commands.fun.meme.success.title = Your random meme commands.fun.meme.api.error = The request to the meme API could not be processed. Please try it again later. commands.fun.meme.help.description = Sends you a random meme. +commands.fun.clyde.help.description = Send a message as a webhook named Clyde. commands.general.about.success.title = Hadder - About commands.general.about.success.description = Hadder is an open source Discord bot. @@ -98,7 +97,7 @@ commands.moderation.clear.message.error.title = No messages\! commands.moderation.clear.message.error.description = There are no messages in this channel. commands.moderation.clear.help.description = Deletes the specified number of messages. commands.moderation.prefix.success.title = %extra% Successfully set %extra% -commands.moderation.prefix.success.description = I successfully set the new prefix for the guild to %extra% +commands.moderation.prefix.success.description = I successfully set the new prefix for the guild to `%extra%`. commands.moderation.prefix.error.description = The prefix must not contain **"** commands.moderation.prefix.help.description = Sets the Guild-Prefix. commands.moderation.invitedetect.activate.success.title = Successfully activated @@ -206,6 +205,8 @@ commands.owner.eval.help.description = Execute the given code commands.owner.eval.help.usage = commands.owner.guildleave.success.title = Successfully left commands.owner.guildleave.success.description = I successfully left %extra%. +commands.owner.guildleave.error.title = Can not leave +commands.owner.guildleave.error.description = I can not leave from this guild. Maybe this isn't a ID? commands.owner.guildleave.help.description = Quit from a guild commands.owner.reboot.help.description = Restart the bot commands.owner.shutdown.success.title = Shutdown @@ -214,9 +215,9 @@ commands.owner.test.success = TEST my friends commands.owner.test.help.description = Just a little Test Command commands.settings.language.success.title = Language set -commands.settings.language.success.description = %extra% is your new language now. +commands.settings.language.success.description = `%extra%` is your new language now. commands.settings.language.help.description = Sets the new primary language for a user. commands.settings.language.help.usage = commands.settings.prefix.success.title = %extra% Successfully set %extra% -commands.settings.prefix.success.description = I successfully set the new prefix for you to %extra%. +commands.settings.prefix.success.description = I successfully set the new prefix for you to `%extra%`. commands.settings.prefix.help.description = Sets a new Prefix diff --git a/src/main/resources/Translations/Translations_zh.properties b/src/main/resources/Translations/Translations_zh.properties index 8c367dd..69d45cf 100644 --- a/src/main/resources/Translations/Translations_zh.properties +++ b/src/main/resources/Translations/Translations_zh.properties @@ -2,21 +2,19 @@ # @author Skidder / GregTCLTK # -# -# @author Skidder / GregTCLTK -# - Hadder = Hadder +user = <@User> searchterm = username = number = /all -guildprefix = prefix = +userprefix = vc-name/id = user+nickname = <@user> region = guildid = +content = error = Error none = None @@ -29,6 +27,7 @@ commands.fun.gif.help.description = Look for a GIF on Giphy commands.fun.meme.success.title = Your random meme commands.fun.meme.api.error = The request to the meme API could not be processed. Please try it again later. commands.fun.meme.help.description = Sends you a random meme. +commands.fun.clyde.help.description = Send a message as a webhook named Clyde. commands.general.about.success.title = Hadder - About commands.general.about.success.description = Hadder is an open source Discord bot. @@ -98,7 +97,7 @@ commands.moderation.clear.message.error.title = No messages\! commands.moderation.clear.message.error.description = There are no messages in this channel. commands.moderation.clear.help.description = Deletes the specified number of messages. commands.moderation.prefix.success.title = %extra% Successfully set %extra% -commands.moderation.prefix.success.description = I successfully set the new prefix for the guild to %extra% +commands.moderation.prefix.success.description = I successfully set the new prefix for the guild to `%extra%`. commands.moderation.prefix.error.description = The prefix must not contain **"** commands.moderation.prefix.help.description = Sets the Guild-Prefix. commands.moderation.invitedetect.activate.success.title = Successfully activated @@ -206,6 +205,8 @@ commands.owner.eval.help.description = Execute the given code commands.owner.eval.help.usage = commands.owner.guildleave.success.title = Successfully left commands.owner.guildleave.success.description = I successfully left %extra%. +commands.owner.guildleave.error.title = Can not leave +commands.owner.guildleave.error.description = I can not leave from this guild. Maybe this isn't a ID? commands.owner.guildleave.help.description = Quit from a guild commands.owner.reboot.help.description = Restart the bot commands.owner.shutdown.success.title = Shutdown @@ -214,9 +215,9 @@ commands.owner.test.success = TEST my friends commands.owner.test.help.description = Just a little Test Command commands.settings.language.success.title = Language set -commands.settings.language.success.description = %extra% is your new language now. +commands.settings.language.success.description = `%extra%` is your new language now. commands.settings.language.help.description = Sets the new primary language for a user. commands.settings.language.help.usage = commands.settings.prefix.success.title = %extra% Successfully set %extra% -commands.settings.prefix.success.description = I successfully set the new prefix for you to %extra%. +commands.settings.prefix.success.description = I successfully set the new prefix for you to `%extra%`. commands.settings.prefix.help.description = Sets a new Prefix