commit
bc566fc234
31 changed files with 682 additions and 604 deletions
|
|
@ -7,6 +7,8 @@ Hadder Discord is a multi-purpose Discord bot with 100% uptime.
|
||||||
[](https://www.codacy.com/gh/BigBotNetwork/Hadder?utm_source=github.com&utm_medium=referral&utm_content=BigBotNetwork/Hadder&utm_campaign=Badge_Grade)
|
[](https://www.codacy.com/gh/BigBotNetwork/Hadder?utm_source=github.com&utm_medium=referral&utm_content=BigBotNetwork/Hadder&utm_campaign=Badge_Grade)
|
||||||
[](https://www.codefactor.io/repository/github/bigbotnetwork/hadder)
|
[](https://www.codefactor.io/repository/github/bigbotnetwork/hadder)
|
||||||
[](https://bbn.crowdin.com/hadder)
|
[](https://bbn.crowdin.com/hadder)
|
||||||
|
[](https://github.com/BigBotNetwork/Hadder/issues)
|
||||||
|
[](https://github.com/BigBotNetwork/Hadder/blob/master/LICENSE)
|
||||||
|
|
||||||
<a href="https://discordextremelist.xyz/bots/Hadder"><img src="https://discordextremelist.xyz/api/bot/637002314162372639/widget"/></a>
|
<a href="https://discordextremelist.xyz/bots/Hadder"><img src="https://discordextremelist.xyz/api/bot/637002314162372639/widget"/></a>
|
||||||
[](https://top.gg/bot/637002314162372639)
|
[](https://top.gg/bot/637002314162372639)
|
||||||
|
|
|
||||||
|
|
@ -20,5 +20,6 @@
|
||||||
"DiscordBotReviews": "",
|
"DiscordBotReviews": "",
|
||||||
"DiscordBots": "",
|
"DiscordBots": "",
|
||||||
"BotListSpace": ""
|
"BotListSpace": ""
|
||||||
}
|
},
|
||||||
|
"Clyde": ""
|
||||||
}
|
}
|
||||||
|
|
|
||||||
32
pom.xml
32
pom.xml
|
|
@ -83,6 +83,10 @@
|
||||||
<artifactId>maven-resources-plugin</artifactId>
|
<artifactId>maven-resources-plugin</artifactId>
|
||||||
<version>3.1.0</version>
|
<version>3.1.0</version>
|
||||||
</plugin>
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<artifactId>maven-compiler-plugin</artifactId>
|
||||||
|
<version>3.8.1</version>
|
||||||
|
</plugin>
|
||||||
<plugin>
|
<plugin>
|
||||||
<artifactId>maven-surefire-plugin</artifactId>
|
<artifactId>maven-surefire-plugin</artifactId>
|
||||||
<version>2.22.2</version>
|
<version>2.22.2</version>
|
||||||
|
|
@ -127,20 +131,20 @@
|
||||||
</configuration>
|
</configuration>
|
||||||
</plugin>
|
</plugin>
|
||||||
<plugin>
|
<plugin>
|
||||||
<artifactId>maven-assembly-plugin</artifactId>
|
<artifactId>maven-assembly-plugin</artifactId>
|
||||||
<configuration>
|
<configuration>
|
||||||
<finalName>Hadder-Build</finalName>
|
<finalName>Hadder-Build</finalName>
|
||||||
<archive>
|
<archive>
|
||||||
<manifest>
|
<manifest>
|
||||||
<mainClass>com.bbn.hadder.Hadder</mainClass>
|
<mainClass>com.bbn.hadder.Hadder</mainClass>
|
||||||
</manifest>
|
</manifest>
|
||||||
</archive>
|
</archive>
|
||||||
<descriptorRefs>
|
<descriptorRefs>
|
||||||
<descriptorRef>jar-with-dependencies</descriptorRef>
|
<descriptorRef>jar-with-dependencies</descriptorRef>
|
||||||
</descriptorRefs>
|
</descriptorRefs>
|
||||||
<appendAssemblyId>false</appendAssemblyId>
|
<appendAssemblyId>false</appendAssemblyId>
|
||||||
</configuration>
|
</configuration>
|
||||||
</plugin>
|
</plugin>
|
||||||
</plugins>
|
</plugins>
|
||||||
</build>
|
</build>
|
||||||
</project>
|
</project>
|
||||||
|
|
|
||||||
|
|
@ -47,7 +47,7 @@ public class Hadder {
|
||||||
helpCommand,
|
helpCommand,
|
||||||
new TestCommand(),
|
new TestCommand(),
|
||||||
new BanCommand(),
|
new BanCommand(),
|
||||||
new PrefixCommand(),
|
new UserPrefixCommand(),
|
||||||
new ShutdownCommand(),
|
new ShutdownCommand(),
|
||||||
new KickCommand(),
|
new KickCommand(),
|
||||||
new PingCommand(),
|
new PingCommand(),
|
||||||
|
|
@ -58,7 +58,7 @@ public class Hadder {
|
||||||
new EqualsCommand(),
|
new EqualsCommand(),
|
||||||
new InviteCommand(),
|
new InviteCommand(),
|
||||||
new NickCommand(),
|
new NickCommand(),
|
||||||
new GuildPrefixCommand(),
|
new PrefixCommand(),
|
||||||
new BlowjobCommand(),
|
new BlowjobCommand(),
|
||||||
new PornCommand(),
|
new PornCommand(),
|
||||||
new AnalCommand(),
|
new AnalCommand(),
|
||||||
|
|
@ -87,6 +87,7 @@ public class Hadder {
|
||||||
new RegionChangeCommand(),
|
new RegionChangeCommand(),
|
||||||
new AboutCommand(),
|
new AboutCommand(),
|
||||||
new LanguageCommand(),
|
new LanguageCommand(),
|
||||||
|
new ClydeCommand(),
|
||||||
new StarBoardCommand()), config, helpCommand);
|
new StarBoardCommand()), config, helpCommand);
|
||||||
|
|
||||||
builder.addEventListeners(
|
builder.addEventListeners(
|
||||||
|
|
|
||||||
|
|
@ -1,67 +0,0 @@
|
||||||
/*
|
|
||||||
* @author Hax / Hax6775 / Schlauer_Hax
|
|
||||||
*/
|
|
||||||
|
|
||||||
package com.bbn.hadder.commands;
|
|
||||||
|
|
||||||
import net.dv8tion.jda.api.Permission;
|
|
||||||
|
|
||||||
public enum Perm {
|
|
||||||
|
|
||||||
BOT_OWNER() {
|
|
||||||
@Override
|
|
||||||
public boolean check(CommandEvent commandEvent) {
|
|
||||||
return commandEvent.getConfig().getOwners().contains(commandEvent.getAuthor().getIdLong());
|
|
||||||
}
|
|
||||||
},
|
|
||||||
MANAGE_MESSAGES {
|
|
||||||
@Override
|
|
||||||
public boolean check(CommandEvent commandEvent) {
|
|
||||||
return commandEvent.getMember().hasPermission(Permission.MESSAGE_MANAGE);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
EMBED_MESSAGES {
|
|
||||||
@Override
|
|
||||||
public boolean check(CommandEvent commandEvent) {
|
|
||||||
return commandEvent.getMember().hasPermission(Permission.MESSAGE_EMBED_LINKS);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
BAN_MEMBERS {
|
|
||||||
@Override
|
|
||||||
public boolean check(CommandEvent commandEvent) {
|
|
||||||
return commandEvent.getMember().hasPermission(Permission.BAN_MEMBERS);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
KICK_MEMBERS {
|
|
||||||
@Override
|
|
||||||
public boolean check(CommandEvent commandEvent) {
|
|
||||||
return commandEvent.getMember().hasPermission(Permission.KICK_MEMBERS);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
MANAGE_SERVER {
|
|
||||||
@Override
|
|
||||||
public boolean check(CommandEvent commandEvent) {
|
|
||||||
return commandEvent.getMember().hasPermission(Permission.MANAGE_SERVER);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
MANAGE_ROLES {
|
|
||||||
@Override
|
|
||||||
public boolean check(CommandEvent commandEvent) {
|
|
||||||
return commandEvent.getMember().hasPermission(Permission.MANAGE_ROLES);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
CHANGE_NICKNAME {
|
|
||||||
@Override
|
|
||||||
public boolean check(CommandEvent commandEvent) {
|
|
||||||
return commandEvent.getMember().hasPermission(Permission.NICKNAME_CHANGE);
|
|
||||||
}
|
|
||||||
},
|
|
||||||
ADMIN_PERMISSIONS {
|
|
||||||
@Override
|
|
||||||
public boolean check(CommandEvent commandEvent) {
|
|
||||||
return commandEvent.getMember().hasPermission(Permission.ADMINISTRATOR);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
public abstract boolean check(CommandEvent commandEvent);
|
|
||||||
}
|
|
||||||
|
|
@ -19,7 +19,9 @@ public class AvatarCommand implements Command {
|
||||||
event.getMessageEditor().getMessage(
|
event.getMessageEditor().getMessage(
|
||||||
MessageEditor.MessageType.INFO,
|
MessageEditor.MessageType.INFO,
|
||||||
"commands.fun.avatar.success.title",
|
"commands.fun.avatar.success.title",
|
||||||
member.getUser().getAsTag())
|
member.getUser().getAsTag(),
|
||||||
|
"",
|
||||||
|
"")
|
||||||
.setImage(member.getUser().getAvatarUrl())
|
.setImage(member.getUser().getAvatarUrl())
|
||||||
.setFooter(member.getUser().getAsTag())
|
.setFooter(member.getUser().getAsTag())
|
||||||
.build()).queue();
|
.build()).queue();
|
||||||
|
|
|
||||||
77
src/main/java/com/bbn/hadder/commands/fun/ClydeCommand.java
Normal file
77
src/main/java/com/bbn/hadder/commands/fun/ClydeCommand.java
Normal file
|
|
@ -0,0 +1,77 @@
|
||||||
|
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";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -6,79 +6,77 @@ package com.bbn.hadder.commands.moderation;
|
||||||
|
|
||||||
import com.bbn.hadder.commands.Command;
|
import com.bbn.hadder.commands.Command;
|
||||||
import com.bbn.hadder.commands.CommandEvent;
|
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;
|
||||||
import net.dv8tion.jda.api.Permission;
|
|
||||||
import net.dv8tion.jda.api.entities.Member;
|
import net.dv8tion.jda.api.entities.Member;
|
||||||
|
|
||||||
|
@Perms(Perm.BAN_MEMBERS)
|
||||||
public class BanCommand implements Command {
|
public class BanCommand implements Command {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void executed(String[] args, CommandEvent event) {
|
public void executed(String[] args, CommandEvent event) {
|
||||||
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) {
|
||||||
if (event.getMessage().getMentionedMembers().size() == 1) {
|
Member victim = event.getMessage().getMentionedMembers().get(0);
|
||||||
Member victim = event.getMessage().getMentionedMembers().get(0);
|
if (!event.getAuthor().getId().equals(victim.getId())) {
|
||||||
if (!event.getAuthor().getId().equals(victim.getId())) {
|
if (!event.getJDA().getSelfUser().getId().equals(victim.getId())) {
|
||||||
if (!event.getJDA().getSelfUser().getId().equals(victim.getId())) {
|
if (event.getGuild().getSelfMember().canInteract(victim)) {
|
||||||
if (event.getGuild().getSelfMember().canInteract(victim)) {
|
event.getGuild().ban(victim, 0, "Banned by " + event.getAuthor().getAsTag()).queue();
|
||||||
event.getGuild().ban(victim, 0, "Banned by " + event.getAuthor().getAsTag()).queue();
|
event.getTextChannel().sendMessage(
|
||||||
event.getTextChannel().sendMessage(
|
event.getMessageEditor().getMessage(
|
||||||
event.getMessageEditor().getMessage(
|
MessageEditor.MessageType.INFO,
|
||||||
MessageEditor.MessageType.INFO,
|
"commands.moderation.ban.success.title",
|
||||||
"commands.moderation.ban.success.title",
|
"✅",
|
||||||
"✅",
|
"commands.moderation.ban.success.description",
|
||||||
"commands.moderation.ban.success.description",
|
victim.getUser().getName() + ".").build()).queue();
|
||||||
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 {
|
} else {
|
||||||
event.getTextChannel().sendMessage
|
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue();
|
||||||
(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) {
|
} else {
|
||||||
event.getHelpCommand().sendHelp(this, event);
|
event.getTextChannel().sendMessage(
|
||||||
} else if (event.getMessage().getMentionedMembers().size() > 1) {
|
event.getMessageEditor().getMessage(
|
||||||
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,
|
MessageEditor.MessageType.WARNING,
|
||||||
"commands.moderation.ban.error.title",
|
"commands.moderation.ban.error.title",
|
||||||
"commands.moderation.ban.yourself.error.description").build()).queue();
|
"commands.moderation.ban.myself.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();
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_PERMISSION).build()).queue();
|
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();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -94,6 +92,6 @@ public class BanCommand implements Command {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String usage() {
|
public String usage() {
|
||||||
return "<@User>";
|
return "user";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,8 @@ package com.bbn.hadder.commands.moderation;
|
||||||
|
|
||||||
import com.bbn.hadder.commands.Command;
|
import com.bbn.hadder.commands.Command;
|
||||||
import com.bbn.hadder.commands.CommandEvent;
|
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;
|
||||||
import net.dv8tion.jda.api.Permission;
|
import net.dv8tion.jda.api.Permission;
|
||||||
import net.dv8tion.jda.api.entities.Message;
|
import net.dv8tion.jda.api.entities.Message;
|
||||||
|
|
@ -14,61 +16,57 @@ import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
|
|
||||||
|
@Perms(Perm.MANAGE_MESSAGES)
|
||||||
public class ClearCommand implements Command {
|
public class ClearCommand implements Command {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void executed(String[] args, CommandEvent event) {
|
public void executed(String[] args, CommandEvent event) {
|
||||||
if (args.length > 0) {
|
if (args.length > 0) {
|
||||||
if (event.getGuild().getMemberById(event.getAuthor().getId()).hasPermission(Permission.MESSAGE_MANAGE) || event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) {
|
if (event.getGuild().getSelfMember().hasPermission(Permission.MESSAGE_MANAGE)) {
|
||||||
if (event.getGuild().getMemberById(event.getJDA().getSelfUser().getId()).hasPermission(Permission.MESSAGE_MANAGE)) {
|
if (args[0].equals("all")) {
|
||||||
if (args[0].equals("all")) {
|
List<Message> msg = event.getTextChannel().getIterableHistory().complete();
|
||||||
List<Message> msg = event.getTextChannel().getIterableHistory().complete();
|
for (Message message : msg) {
|
||||||
for (Message message : msg) {
|
message.delete().queue();
|
||||||
message.delete().queue();
|
}
|
||||||
}
|
Message message = event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(
|
||||||
Message message = event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(
|
|
||||||
MessageEditor.MessageType.INFO,
|
MessageEditor.MessageType.INFO,
|
||||||
"commands.moderation.lear.all.success.title",
|
"commands.moderation.lear.all.success.title",
|
||||||
"",
|
"",
|
||||||
"commands.moderation.lear.all.success.description",
|
"commands.moderation.lear.all.success.description",
|
||||||
String.valueOf(msg.size()))
|
String.valueOf(msg.size()))
|
||||||
.build()).complete();
|
.build()).complete();
|
||||||
try {
|
try {
|
||||||
TimeUnit.SECONDS.sleep(3);
|
TimeUnit.SECONDS.sleep(3);
|
||||||
} catch (InterruptedException e) {
|
} catch (InterruptedException e) {
|
||||||
e.printStackTrace();
|
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<Message> history = event.getTextChannel().getHistory().retrievePast(nbToDelete + 1).complete();
|
|
||||||
List<Message> 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();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
message.delete().queue();
|
||||||
} else {
|
} else {
|
||||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue();
|
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<Message> history = event.getTextChannel().getHistory().retrievePast(nbToDelete + 1).complete();
|
||||||
|
List<Message> 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();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_PERMISSION).build()).queue();
|
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
event.getHelpCommand().sendHelp(this, event);
|
event.getHelpCommand().sendHelp(this, event);
|
||||||
|
|
|
||||||
|
|
@ -1,53 +0,0 @@
|
||||||
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";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -6,54 +6,53 @@ package com.bbn.hadder.commands.moderation;
|
||||||
|
|
||||||
import com.bbn.hadder.commands.Command;
|
import com.bbn.hadder.commands.Command;
|
||||||
import com.bbn.hadder.commands.CommandEvent;
|
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;
|
||||||
import net.dv8tion.jda.api.Permission;
|
import net.dv8tion.jda.api.Permission;
|
||||||
|
|
||||||
|
@Perms(Perm.MANAGE_SERVER)
|
||||||
public class InviteDetectCommand implements Command {
|
public class InviteDetectCommand implements Command {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void executed(String[] args, CommandEvent event) {
|
public void executed(String[] args, CommandEvent event) {
|
||||||
if (args.length == 1) {
|
if (args.length == 1) {
|
||||||
if (event.getMember().hasPermission(Permission.MANAGE_SERVER) || event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) {
|
String opinion = args[0].toLowerCase();
|
||||||
String opinion = args[0].toLowerCase();
|
switch (opinion) {
|
||||||
switch (opinion) {
|
case "on":
|
||||||
case "on":
|
if (!event.getRethink().getInviteDetection(event.getGuild().getId())) {
|
||||||
if (!event.getRethink().getInviteDetection(event.getGuild().getId())) {
|
event.getRethink().setInviteDetection(event.getGuild().getId(), true);
|
||||||
event.getRethink().setInviteDetection(event.getGuild().getId(), true);
|
event.getTextChannel().sendMessage(
|
||||||
event.getTextChannel().sendMessage(
|
event.getMessageEditor().getMessage(
|
||||||
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;
|
|
||||||
|
|
||||||
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,
|
MessageEditor.MessageType.INFO,
|
||||||
"commands.moderation.invitedetect.deactivate.success.title",
|
"commands.moderation.invitedetect.activate.success.title",
|
||||||
"commands.moderation.invitedetect.deactivate.success.description")
|
"commands.moderation.invitedetect.activate.success.description")
|
||||||
.build()).queue();
|
.build()).queue();
|
||||||
} else {
|
} else {
|
||||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(
|
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(
|
||||||
MessageEditor.MessageType.WARNING,
|
MessageEditor.MessageType.WARNING,
|
||||||
"commands.moderation.invitedetect.deactivate.error.title",
|
"commands.moderation.invitedetect.activate.error.title",
|
||||||
"commands.moderation.invitedetect.deactivate.error.description")
|
"commands.moderation.invitedetect.activate.error.description")
|
||||||
.build()).queue();
|
.build()).queue();
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
} else {
|
break;
|
||||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_PERMISSION).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;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
event.getHelpCommand().sendHelp(this, event);
|
event.getHelpCommand().sendHelp(this, event);
|
||||||
|
|
|
||||||
|
|
@ -6,63 +6,62 @@ package com.bbn.hadder.commands.moderation;
|
||||||
|
|
||||||
import com.bbn.hadder.commands.Command;
|
import com.bbn.hadder.commands.Command;
|
||||||
import com.bbn.hadder.commands.CommandEvent;
|
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;
|
||||||
import net.dv8tion.jda.api.Permission;
|
|
||||||
import net.dv8tion.jda.api.entities.Member;
|
import net.dv8tion.jda.api.entities.Member;
|
||||||
|
|
||||||
|
@Perms(Perm.KICK_MEMBERS)
|
||||||
public class KickCommand implements Command {
|
public class KickCommand implements Command {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void executed(String[] args, CommandEvent event) {
|
public void executed(String[] args, CommandEvent event) {
|
||||||
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) {
|
||||||
if (event.getMessage().getMentionedMembers().size() == 1) {
|
Member victim = event.getMessage().getMentionedMembers().get(0);
|
||||||
Member victim = event.getMessage().getMentionedMembers().get(0);
|
if (!event.getAuthor().getId().equals(victim.getId())) {
|
||||||
if (!event.getAuthor().getId().equals(victim.getId())) {
|
if (!event.getJDA().getSelfUser().getId().equals(victim.getId())) {
|
||||||
if (!event.getJDA().getSelfUser().getId().equals(victim.getId())) {
|
if (event.getGuild().getSelfMember().canInteract(victim)) {
|
||||||
if (event.getGuild().getSelfMember().canInteract(victim)) {
|
event.getGuild().kick(victim, "Kicked by " + event.getAuthor().getAsTag()).queue();
|
||||||
event.getGuild().kick(victim, "Kicked by " + event.getAuthor().getAsTag()).queue();
|
event.getTextChannel().sendMessage(
|
||||||
event.getTextChannel().sendMessage(
|
event.getMessageEditor().getMessage(
|
||||||
event.getMessageEditor().getMessage(
|
MessageEditor.MessageType.INFO,
|
||||||
MessageEditor.MessageType.INFO,
|
"commands.moderation.kick.success.title",
|
||||||
"commands.moderation.kick.success.title",
|
"✅",
|
||||||
"✅",
|
"commands.moderation.kick.success.description",
|
||||||
"commands.moderation.kick.success.description",
|
victim.getUser().getName()).build()).queue();
|
||||||
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();
|
||||||
} else {
|
} else {
|
||||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue();
|
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
event.getTextChannel().sendMessage(
|
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.WARNING, "commands.moderation.kick.error.title", "commands.moderation.kick.myself.error.description").build()).queue();
|
||||||
event.getMessageEditor().getMessage(
|
|
||||||
MessageEditor.MessageType.WARNING,
|
|
||||||
"commands.moderation.kick.error.title",
|
|
||||||
"commands.moderation.kick.myself.error.description").build()).queue();
|
|
||||||
}
|
}
|
||||||
} else {
|
} 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.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();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -78,6 +77,6 @@ public class KickCommand implements Command {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String usage() {
|
public String usage() {
|
||||||
return "<@User>";
|
return "user";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -6,91 +6,90 @@ package com.bbn.hadder.commands.moderation;
|
||||||
|
|
||||||
import com.bbn.hadder.commands.Command;
|
import com.bbn.hadder.commands.Command;
|
||||||
import com.bbn.hadder.commands.CommandEvent;
|
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;
|
||||||
import net.dv8tion.jda.api.Permission;
|
import net.dv8tion.jda.api.Permission;
|
||||||
import net.dv8tion.jda.api.entities.Member;
|
import net.dv8tion.jda.api.entities.Member;
|
||||||
|
|
||||||
|
@Perms(Perm.CHANGE_NICKNAME)
|
||||||
public class NickCommand implements Command {
|
public class NickCommand implements Command {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void executed(String[] args, CommandEvent event) {
|
public void executed(String[] args, CommandEvent event) {
|
||||||
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.getGuild().getSelfMember().hasPermission(Permission.NICKNAME_MANAGE)) {
|
if (event.getMessage().getMentionedMembers().size() == 1) {
|
||||||
if (event.getMessage().getMentionedMembers().size() == 1) {
|
if (!event.getMessage().getMentionedMembers().get(0).getId().equals(event.getGuild().getSelfMember().getId())) {
|
||||||
if (!event.getMessage().getMentionedMembers().get(0).getId().equals(event.getGuild().getSelfMember().getId())) {
|
if (event.getGuild().getSelfMember().canInteract(event.getMessage().getMentionedMembers().get(0))) {
|
||||||
if (event.getGuild().getSelfMember().canInteract(event.getMessage().getMentionedMembers().get(0))) {
|
if (args.length > 1) {
|
||||||
if (args.length > 1) {
|
if (event.getMessage().getContentRaw().startsWith(event.getRethink().getUserPrefix(event.getMember().getId()))) {
|
||||||
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.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.getTextChannel().sendMessage(
|
event.getMessageEditor().getMessage(
|
||||||
event.getMessageEditor().getMessage(
|
MessageEditor.MessageType.INFO,
|
||||||
MessageEditor.MessageType.INFO,
|
"commands.moderation.nick.success.title",
|
||||||
"commands.moderation.nick.success.title",
|
"✅",
|
||||||
"✅",
|
"commands.moderation.nick.success.description",
|
||||||
"commands.moderation.nick.success.description",
|
event.getMessage().getMentionedMembers().get(0).getUser().getAsTag()
|
||||||
event.getMessage().getMentionedMembers().get(0).getUser().getAsTag()
|
).build()).queue();
|
||||||
).build()).queue();
|
} else if (event.getMessage().getContentRaw().startsWith(event.getRethink().getGuildPrefix(event.getGuild().getId()))) {
|
||||||
} 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.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.getTextChannel().sendMessage(
|
event.getMessageEditor().getMessage(
|
||||||
event.getMessageEditor().getMessage(
|
MessageEditor.MessageType.INFO,
|
||||||
MessageEditor.MessageType.INFO,
|
"commands.moderation.nick.success.title",
|
||||||
"commands.moderation.nick.success.title",
|
"✅",
|
||||||
"✅",
|
"commands.moderation.nick.success.description", event.getMessage().getMentionedMembers().get(0).getUser().getAsTag()
|
||||||
"commands.moderation.nick.success.description", event.getMessage().getMentionedMembers().get(0).getUser().getAsTag()
|
).build()).queue();
|
||||||
).build()).queue();
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
event.getHelpCommand().sendHelp(this, event);
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue();
|
event.getHelpCommand().sendHelp(this, event);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (event.getMessage().getContentRaw().startsWith(event.getRethink().getUserPrefix(event.getMember().getId()))) {
|
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue();
|
||||||
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 {
|
} else {
|
||||||
for (int i = 0; i < event.getMessage().getMentionedMembers().size(); i++) {
|
if (event.getMessage().getContentRaw().startsWith(event.getRethink().getUserPrefix(event.getMember().getId()))) {
|
||||||
Member member = event.getMessage().getMentionedMembers().get(i);
|
event.getGuild().getSelfMember().modifyNickname(event.getMessage().getContentRaw().replaceFirst(event.getRethink().getUserPrefix(event.getMember().getId()) + "nick " + args[0], "")).reason("Nicked by " + event.getAuthor().getAsTag()).queue();
|
||||||
if (!event.getJDA().getSelfUser().getId().equals(member.getId())) {
|
event.getTextChannel().sendMessage(
|
||||||
event.getGuild().modifyNickname(member, args[args.length - 1]).reason("Mass Nicked by " + event.getAuthor().getAsTag()).queue();
|
event.getMessageEditor().getMessage(
|
||||||
} else {
|
MessageEditor.MessageType.INFO,
|
||||||
event.getGuild().getSelfMember().modifyNickname(args[args.length - 1]).reason("Mass Nicked by " + event.getAuthor().getAsTag()).queue();
|
"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();
|
||||||
}
|
}
|
||||||
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 {
|
} else {
|
||||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).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 {
|
} else {
|
||||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_PERMISSION).build()).queue();
|
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,52 @@
|
||||||
|
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";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -6,91 +6,93 @@ package com.bbn.hadder.commands.moderation;
|
||||||
|
|
||||||
import com.bbn.hadder.commands.Command;
|
import com.bbn.hadder.commands.Command;
|
||||||
import com.bbn.hadder.commands.CommandEvent;
|
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;
|
||||||
import net.dv8tion.jda.api.Permission;
|
import net.dv8tion.jda.api.Permission;
|
||||||
import net.dv8tion.jda.api.Region;
|
import net.dv8tion.jda.api.Region;
|
||||||
|
|
||||||
|
@Perms(Perm.MANAGE_SERVER)
|
||||||
public class RegionChangeCommand implements Command {
|
public class RegionChangeCommand implements Command {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void executed(String[] args, CommandEvent event) {
|
public void executed(String[] args, CommandEvent event) {
|
||||||
if (args.length == 1) {
|
if (args.length == 1) {
|
||||||
if (event.getGuild().getSelfMember().hasPermission(Permission.MANAGE_SERVER)) {
|
if (event.getMember().hasPermission(Permission.MANAGE_SERVER) || event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) {
|
||||||
if (event.getMember().hasPermission(Permission.MANAGE_SERVER) || event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) {
|
switch (args[0].toLowerCase()) {
|
||||||
switch (args[0].toLowerCase()) {
|
case "amsterdam":
|
||||||
case "amsterdam":
|
setRegion(Region.AMSTERDAM, "Amsterdam", event);
|
||||||
setRegion(Region.AMSTERDAM, "Amsterdam", event);
|
break;
|
||||||
break;
|
case "frankfurt":
|
||||||
case "frankfurt":
|
setRegion(Region.FRANKFURT, "Frankfurt", event);
|
||||||
setRegion(Region.FRANKFURT, "Frankfurt", event);
|
break;
|
||||||
break;
|
case "eu-west":
|
||||||
case "eu-west":
|
setRegion(Region.EU_WEST, "EU West", event);
|
||||||
setRegion(Region.EU_WEST, "EU West", event);
|
break;
|
||||||
break;
|
case "eu-central":
|
||||||
case "eu-central":
|
setRegion(Region.EU_CENTRAL, "EU Central", event);
|
||||||
setRegion(Region.EU_CENTRAL, "EU Central", event);
|
break;
|
||||||
break;
|
case "europe":
|
||||||
case "europe":
|
setRegion(Region.EUROPE, "EUROPE", event);
|
||||||
setRegion(Region.EUROPE, "EUROPE", event);
|
break;
|
||||||
break;
|
case "brazil":
|
||||||
case "brazil":
|
setRegion(Region.BRAZIL, "Brazil", event);
|
||||||
setRegion(Region.BRAZIL, "Brazil", event);
|
break;
|
||||||
break;
|
case "hongkong":
|
||||||
case "hongkong":
|
setRegion(Region.HONG_KONG, "Hong Kong", event);
|
||||||
setRegion(Region.HONG_KONG, "Hong Kong", event);
|
break;
|
||||||
break;
|
case "india":
|
||||||
case "india":
|
setRegion(Region.INDIA, "India", event);
|
||||||
setRegion(Region.INDIA, "India", event);
|
break;
|
||||||
break;
|
case "japan":
|
||||||
case "japan":
|
setRegion(Region.JAPAN, "Japan", event);
|
||||||
setRegion(Region.JAPAN, "Japan", event);
|
break;
|
||||||
break;
|
case "london":
|
||||||
case "london":
|
setRegion(Region.LONDON, "London", event);
|
||||||
setRegion(Region.LONDON, "London", event);
|
break;
|
||||||
break;
|
case "russia":
|
||||||
case "russia":
|
setRegion(Region.RUSSIA, "Russia", event);
|
||||||
setRegion(Region.RUSSIA, "Russia", event);
|
break;
|
||||||
break;
|
case "singapore":
|
||||||
case "singapore":
|
setRegion(Region.SINGAPORE, "Singapore", event);
|
||||||
setRegion(Region.SINGAPORE, "Singapore", event);
|
break;
|
||||||
break;
|
case "south-africa":
|
||||||
case "south-africa":
|
setRegion(Region.SOUTH_AFRICA, "South Africa", event);
|
||||||
setRegion(Region.SOUTH_AFRICA, "South Africa", event);
|
break;
|
||||||
break;
|
case "sydney":
|
||||||
case "sydney":
|
setRegion(Region.SYDNEY, "Sydney", event);
|
||||||
setRegion(Region.SYDNEY, "Sydney", event);
|
break;
|
||||||
break;
|
case "us-central":
|
||||||
case "us-central":
|
setRegion(Region.US_CENTRAL, "US Central", event);
|
||||||
setRegion(Region.US_CENTRAL, "US Central", event);
|
break;
|
||||||
break;
|
case "us-east":
|
||||||
case "us-east":
|
setRegion(Region.US_EAST, "US East", event);
|
||||||
setRegion(Region.US_EAST, "US East", event);
|
break;
|
||||||
break;
|
case "us-west":
|
||||||
case "us-west":
|
setRegion(Region.US_WEST, "US West", event);
|
||||||
setRegion(Region.US_WEST, "US West", event);
|
break;
|
||||||
break;
|
case "us-south":
|
||||||
case "us-south":
|
setRegion(Region.US_SOUTH, "US South", event);
|
||||||
setRegion(Region.US_SOUTH, "US South", event);
|
break;
|
||||||
break;
|
case "list":
|
||||||
case "list":
|
event.getTextChannel().sendMessage(
|
||||||
event.getTextChannel().sendMessage(
|
event.getMessageEditor().getMessage(
|
||||||
event.getMessageEditor().getMessage(
|
MessageEditor.MessageType.INFO,
|
||||||
MessageEditor.MessageType.INFO,
|
"commands.moderation.regionchange.regions.title",
|
||||||
"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`")
|
||||||
.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();
|
break;
|
||||||
break;
|
}
|
||||||
}
|
} else
|
||||||
} else event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_PERMISSION).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();
|
|
||||||
} else event.getTextChannel().sendMessage(
|
} else event.getTextChannel().sendMessage(
|
||||||
event.getMessageEditor().getMessage(
|
event.getMessageEditor().getMessage(
|
||||||
MessageEditor.MessageType.INFO,
|
MessageEditor.MessageType.INFO,
|
||||||
"commands.moderation.regionchange.regions.title",
|
"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`")
|
.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) {
|
public void setRegion (Region region, String region_name, CommandEvent event) {
|
||||||
|
|
|
||||||
|
|
@ -2,81 +2,81 @@ package com.bbn.hadder.commands.moderation;
|
||||||
|
|
||||||
import com.bbn.hadder.commands.Command;
|
import com.bbn.hadder.commands.Command;
|
||||||
import com.bbn.hadder.commands.CommandEvent;
|
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;
|
||||||
import net.dv8tion.jda.api.Permission;
|
import net.dv8tion.jda.api.Permission;
|
||||||
import net.dv8tion.jda.api.entities.Member;
|
import net.dv8tion.jda.api.entities.Member;
|
||||||
import net.dv8tion.jda.api.entities.Role;
|
import net.dv8tion.jda.api.entities.Role;
|
||||||
|
|
||||||
|
@Perms(Perm.MANAGE_ROLES)
|
||||||
public class RoleCommand implements Command {
|
public class RoleCommand implements Command {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void executed(String[] args, CommandEvent event) {
|
public void executed(String[] args, CommandEvent event) {
|
||||||
if (args.length > 0) {
|
if (args.length > 0) {
|
||||||
if (event.getMember().hasPermission(Permission.MANAGE_ROLES)) {
|
if (event.getMember().hasPermission(Permission.MANAGE_ROLES)) {
|
||||||
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();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
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;
|
|
||||||
|
|
||||||
case "remove":
|
String action = args[0].toLowerCase();
|
||||||
if (event.getMessage().getMentionedMembers().size() > 0 && event.getMessage().getMentionedRoles().size() > 0) {
|
switch (action) {
|
||||||
for (Member member : event.getMessage().getMentionedMembers()) {
|
case "add":
|
||||||
for (Role role : event.getMessage().getMentionedRoles()) {
|
if (event.getMessage().getMentionedMembers().size() > 0 && event.getMessage().getMentionedRoles().size() > 0) {
|
||||||
if (event.getGuild().getSelfMember().canInteract(member)) {
|
for (Member member : event.getMessage().getMentionedMembers()) {
|
||||||
if (event.getGuild().getSelfMember().canInteract(role)) {
|
for (Role role : event.getMessage().getMentionedRoles()) {
|
||||||
event.getGuild().removeRoleFromMember(member, role).reason("Role removed by " + event.getAuthor().getAsTag()).queue();
|
if (event.getGuild().getSelfMember().canInteract(member)) {
|
||||||
} else {
|
if (event.getGuild().getSelfMember().canInteract(role)) {
|
||||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue();
|
event.getGuild().addRoleToMember(member, role).reason("Role added by " + event.getAuthor().getAsTag()).queue();
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).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.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;
|
event.getChannel().sendMessage(
|
||||||
}
|
event.getMessageEditor().getMessage(
|
||||||
} else {
|
MessageEditor.MessageType.INFO,
|
||||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue();
|
"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;
|
||||||
|
|
||||||
|
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();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
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;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_PERMISSION).build()).queue();
|
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue();
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
event.getHelpCommand().sendHelp(this, event);
|
event.getHelpCommand().sendHelp(this, event);
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,8 @@ package com.bbn.hadder.commands.moderation;
|
||||||
|
|
||||||
import com.bbn.hadder.commands.Command;
|
import com.bbn.hadder.commands.Command;
|
||||||
import com.bbn.hadder.commands.CommandEvent;
|
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.EventWaiter;
|
||||||
import com.bbn.hadder.utils.MessageEditor;
|
import com.bbn.hadder.utils.MessageEditor;
|
||||||
import net.dv8tion.jda.api.Permission;
|
import net.dv8tion.jda.api.Permission;
|
||||||
|
|
@ -15,48 +17,45 @@ import net.dv8tion.jda.api.entities.Role;
|
||||||
import net.dv8tion.jda.api.entities.TextChannel;
|
import net.dv8tion.jda.api.entities.TextChannel;
|
||||||
import net.dv8tion.jda.api.events.message.guild.GuildMessageReceivedEvent;
|
import net.dv8tion.jda.api.events.message.guild.GuildMessageReceivedEvent;
|
||||||
|
|
||||||
|
@Perms(Perm.MANAGE_SERVER)
|
||||||
public class RulesCommand implements Command {
|
public class RulesCommand implements Command {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void executed(String[] args, CommandEvent event) {
|
public void executed(String[] args, CommandEvent event) {
|
||||||
if (event.getMember().hasPermission(Permission.MANAGE_SERVER) || event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) {
|
if (event.getGuild().getSelfMember().hasPermission(Permission.MANAGE_ROLES)) {
|
||||||
if (event.getGuild().getSelfMember().hasPermission(Permission.MANAGE_ROLES)) {
|
event.getTextChannel().sendMessage(
|
||||||
event.getTextChannel().sendMessage(
|
event.getMessageEditor().getMessage(
|
||||||
event.getMessageEditor().getMessage(
|
MessageEditor.MessageType.INFO,
|
||||||
MessageEditor.MessageType.INFO,
|
"commands.moderation.rules.setup.title",
|
||||||
"commands.moderation.rules.setup.title",
|
"commands.moderation.rules.setup.description")
|
||||||
"commands.moderation.rules.setup.description")
|
.build()).queue();
|
||||||
.build()).queue();
|
new EventWaiter().newOnMessageEventWaiter(event1 -> {
|
||||||
new EventWaiter().newOnMessageEventWaiter(event1 -> {
|
if (event1.getMessage().getMentionedChannels().size() == 1) {
|
||||||
if (event1.getMessage().getMentionedChannels().size() == 1) {
|
try {
|
||||||
try {
|
TextChannel channel = event1.getMessage().getMentionedChannels().get(0);
|
||||||
TextChannel channel = event1.getMessage().getMentionedChannels().get(0);
|
createRules(event, event1, channel);
|
||||||
createRules(event, event1, channel);
|
} catch (Exception e) {
|
||||||
} catch (Exception e) {
|
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.ERROR,
|
||||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.ERROR,
|
"commands.moderation.rules.channel.error.title",
|
||||||
"commands.moderation.rules.channel.error.title",
|
"commands.moderation.rules.channel.error.description")
|
||||||
"commands.moderation.rules.channel.error.description")
|
.build()).queue();
|
||||||
.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());
|
} else {
|
||||||
} else {
|
try {
|
||||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue();
|
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());
|
||||||
} else {
|
} else {
|
||||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_PERMISSION).build()).queue();
|
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,7 @@ import com.bbn.hadder.utils.MessageEditor;
|
||||||
import net.dv8tion.jda.api.entities.TextChannel;
|
import net.dv8tion.jda.api.entities.TextChannel;
|
||||||
|
|
||||||
public class StarBoardCommand implements Command {
|
public class StarBoardCommand implements Command {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void executed(String[] args, CommandEvent event) {
|
public void executed(String[] args, CommandEvent event) {
|
||||||
if (event.getMessage().getMentionedChannels().size()==1) {
|
if (event.getMessage().getMentionedChannels().size()==1) {
|
||||||
|
|
|
||||||
|
|
@ -7,8 +7,8 @@ package com.bbn.hadder.commands.owner;
|
||||||
import com.bbn.hadder.Hadder;
|
import com.bbn.hadder.Hadder;
|
||||||
import com.bbn.hadder.commands.Command;
|
import com.bbn.hadder.commands.Command;
|
||||||
import com.bbn.hadder.commands.CommandEvent;
|
import com.bbn.hadder.commands.CommandEvent;
|
||||||
import com.bbn.hadder.commands.Perm;
|
import com.bbn.hadder.core.Perm;
|
||||||
import com.bbn.hadder.commands.Perms;
|
import com.bbn.hadder.core.Perms;
|
||||||
import com.bbn.hadder.utils.MessageEditor;
|
import com.bbn.hadder.utils.MessageEditor;
|
||||||
|
|
||||||
import javax.script.ScriptEngine;
|
import javax.script.ScriptEngine;
|
||||||
|
|
|
||||||
|
|
@ -6,8 +6,8 @@ package com.bbn.hadder.commands.owner;
|
||||||
|
|
||||||
import com.bbn.hadder.commands.Command;
|
import com.bbn.hadder.commands.Command;
|
||||||
import com.bbn.hadder.commands.CommandEvent;
|
import com.bbn.hadder.commands.CommandEvent;
|
||||||
import com.bbn.hadder.commands.Perm;
|
import com.bbn.hadder.core.Perm;
|
||||||
import com.bbn.hadder.commands.Perms;
|
import com.bbn.hadder.core.Perms;
|
||||||
import com.bbn.hadder.utils.MessageEditor;
|
import com.bbn.hadder.utils.MessageEditor;
|
||||||
import net.dv8tion.jda.api.entities.Guild;
|
import net.dv8tion.jda.api.entities.Guild;
|
||||||
|
|
||||||
|
|
@ -16,34 +16,22 @@ public class GuildLeaveCommand implements Command {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void executed(String[] args, CommandEvent event) {
|
public void executed(String[] args, CommandEvent event) {
|
||||||
if (event.getConfig().getOwners().toString().contains(event.getAuthor().getId())) {
|
if (args.length > 0) {
|
||||||
if (args.length > 0) {
|
Guild guild = event.getJDA().getGuildById(args[0]);
|
||||||
Guild guild = event.getJDA().getGuildById(args[0]);
|
try {
|
||||||
try {
|
guild.leave().queue();
|
||||||
guild.leave().queue();
|
event.getTextChannel()
|
||||||
event.getTextChannel()
|
.sendMessage(event.getMessageEditor()
|
||||||
.sendMessage(event.getMessageEditor()
|
.getMessage(MessageEditor.MessageType.INFO, "commands.owner.guildleave.success.title",
|
||||||
.getMessage(MessageEditor.MessageType.INFO, "commands.owner.guildleave.success.title",
|
"", "commands.owner.guildleave.success.description", guild.getName())
|
||||||
"", "commands.owner.guildleave.success.description", guild.getName())
|
.build())
|
||||||
.build())
|
.queue();
|
||||||
.queue();
|
} catch (Exception e) {
|
||||||
} 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();
|
||||||
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.getTextChannel()
|
|
||||||
.sendMessage(event.getMessageEditor()
|
|
||||||
.getMessage(MessageEditor.MessageType.INFO, "commands.owner.guildleave.success.title",
|
|
||||||
"", "commands.owner.guildleave.success.description", guild.getName())
|
|
||||||
.build())
|
|
||||||
.queue();
|
|
||||||
} else {
|
} else {
|
||||||
event.getHelpCommand().sendHelp(this, event);
|
event.getHelpCommand().sendHelp(this, event);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
|
|
@ -6,9 +6,8 @@ package com.bbn.hadder.commands.owner;
|
||||||
|
|
||||||
import com.bbn.hadder.commands.Command;
|
import com.bbn.hadder.commands.Command;
|
||||||
import com.bbn.hadder.commands.CommandEvent;
|
import com.bbn.hadder.commands.CommandEvent;
|
||||||
import com.bbn.hadder.commands.Perm;
|
import com.bbn.hadder.core.Perm;
|
||||||
import com.bbn.hadder.commands.Perms;
|
import com.bbn.hadder.core.Perms;
|
||||||
import com.bbn.hadder.utils.MessageEditor;
|
|
||||||
|
|
||||||
@Perms(Perm.BOT_OWNER)
|
@Perms(Perm.BOT_OWNER)
|
||||||
public class RebootCommand implements Command {
|
public class RebootCommand implements Command {
|
||||||
|
|
|
||||||
|
|
@ -6,8 +6,8 @@ package com.bbn.hadder.commands.owner;
|
||||||
|
|
||||||
import com.bbn.hadder.commands.Command;
|
import com.bbn.hadder.commands.Command;
|
||||||
import com.bbn.hadder.commands.CommandEvent;
|
import com.bbn.hadder.commands.CommandEvent;
|
||||||
import com.bbn.hadder.commands.Perm;
|
import com.bbn.hadder.core.Perm;
|
||||||
import com.bbn.hadder.commands.Perms;
|
import com.bbn.hadder.core.Perms;
|
||||||
import com.bbn.hadder.utils.MessageEditor;
|
import com.bbn.hadder.utils.MessageEditor;
|
||||||
|
|
||||||
@Perms(Perm.BOT_OWNER)
|
@Perms(Perm.BOT_OWNER)
|
||||||
|
|
|
||||||
|
|
@ -2,18 +2,14 @@ package com.bbn.hadder.commands.owner;
|
||||||
|
|
||||||
import com.bbn.hadder.commands.Command;
|
import com.bbn.hadder.commands.Command;
|
||||||
import com.bbn.hadder.commands.CommandEvent;
|
import com.bbn.hadder.commands.CommandEvent;
|
||||||
import com.bbn.hadder.commands.Perm;
|
import com.bbn.hadder.core.Perm;
|
||||||
import com.bbn.hadder.commands.Perms;
|
import com.bbn.hadder.core.Perms;
|
||||||
import com.bbn.hadder.utils.MessageEditor;
|
|
||||||
import com.bbn.hadder.utils.MessageEditor.MessageType;
|
import com.bbn.hadder.utils.MessageEditor.MessageType;
|
||||||
|
|
||||||
import static com.bbn.hadder.commands.Perm.BOT_OWNER;
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* @author Skidder / GregTCLTK
|
* @author Skidder / GregTCLTK
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@Perms(Perm.BOT_OWNER)
|
|
||||||
public class TestCommand implements Command {
|
public class TestCommand implements Command {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@ import com.bbn.hadder.commands.Command;
|
||||||
import com.bbn.hadder.commands.CommandEvent;
|
import com.bbn.hadder.commands.CommandEvent;
|
||||||
import com.bbn.hadder.utils.MessageEditor;
|
import com.bbn.hadder.utils.MessageEditor;
|
||||||
|
|
||||||
public class PrefixCommand implements Command {
|
public class UserPrefixCommand implements Command {
|
||||||
|
|
||||||
public void executed(String[] args, CommandEvent event) {
|
public void executed(String[] args, CommandEvent event) {
|
||||||
if (args.length == 1) {
|
if (args.length == 1) {
|
||||||
|
|
@ -26,7 +26,7 @@ public class PrefixCommand implements Command {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String[] labels() {
|
public String[] labels() {
|
||||||
return new String[] { "prefix" };
|
return new String[] { "userprefix" };
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
@ -36,6 +36,6 @@ public class PrefixCommand implements Command {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String usage() {
|
public String usage() {
|
||||||
return "prefix";
|
return "userprefix";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -3,8 +3,6 @@ package com.bbn.hadder.core;
|
||||||
import com.bbn.hadder.Rethink;
|
import com.bbn.hadder.Rethink;
|
||||||
import com.bbn.hadder.commands.Command;
|
import com.bbn.hadder.commands.Command;
|
||||||
import com.bbn.hadder.commands.CommandEvent;
|
import com.bbn.hadder.commands.CommandEvent;
|
||||||
import com.bbn.hadder.commands.Perm;
|
|
||||||
import com.bbn.hadder.commands.Perms;
|
|
||||||
import com.bbn.hadder.commands.general.HelpCommand;
|
import com.bbn.hadder.commands.general.HelpCommand;
|
||||||
import com.bbn.hadder.utils.MessageEditor;
|
import com.bbn.hadder.utils.MessageEditor;
|
||||||
import net.dv8tion.jda.api.events.message.MessageReceivedEvent;
|
import net.dv8tion.jda.api.events.message.MessageReceivedEvent;
|
||||||
|
|
@ -38,7 +36,7 @@ public class CommandHandler {
|
||||||
CommandEvent commandEvent = new CommandEvent(event.getJDA(), event.getResponseNumber(), event.getMessage(), rethink,
|
CommandEvent commandEvent = new CommandEvent(event.getJDA(), event.getResponseNumber(), event.getMessage(), rethink,
|
||||||
config, this, helpCommand, new MessageEditor(rethink, event.getAuthor()));
|
config, this, helpCommand, new MessageEditor(rethink, event.getAuthor()));
|
||||||
if (cmd.getClass().getAnnotations().length>0) {
|
if (cmd.getClass().getAnnotations().length>0) {
|
||||||
if (Arrays.asList(cmd.getClass().getAnnotations()).contains(Perms.class)) {
|
if (!Arrays.asList(cmd.getClass().getAnnotations()).contains(Perms.class)) {
|
||||||
for (Perm perm : cmd.getClass().getAnnotation(Perms.class).value()) {
|
for (Perm perm : cmd.getClass().getAnnotation(Perms.class).value()) {
|
||||||
if (!perm.check(commandEvent)) {
|
if (!perm.check(commandEvent)) {
|
||||||
commandEvent.getTextChannel()
|
commandEvent.getTextChannel()
|
||||||
|
|
|
||||||
|
|
@ -63,6 +63,7 @@ public class Config {
|
||||||
.value("DiscordExtremeList").value(null)
|
.value("DiscordExtremeList").value(null)
|
||||||
.value("DiscordBotReviews").value(null)
|
.value("DiscordBotReviews").value(null)
|
||||||
.value("DiscordBots").value(null)
|
.value("DiscordBots").value(null)
|
||||||
|
.value("BotListSpace").value(null)
|
||||||
.endObject().endObject().toString();
|
.endObject().endObject().toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -141,4 +142,8 @@ public class Config {
|
||||||
public String getBotListSpaceToken() {
|
public String getBotListSpaceToken() {
|
||||||
return config.getJSONObject("Tokens").getString("BotListSpace");
|
return config.getJSONObject("Tokens").getString("BotListSpace");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getClydeName() {
|
||||||
|
return config.getString("Clyde");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
75
src/main/java/com/bbn/hadder/core/Perm.java
Normal file
75
src/main/java/com/bbn/hadder/core/Perm.java
Normal file
|
|
@ -0,0 +1,75 @@
|
||||||
|
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);
|
||||||
|
}
|
||||||
|
|
@ -1,12 +1,13 @@
|
||||||
/*
|
package com.bbn.hadder.core;
|
||||||
* @author Hax / Hax6775 / Schlauer_Hax
|
|
||||||
*/
|
|
||||||
|
|
||||||
package com.bbn.hadder.commands;
|
|
||||||
|
|
||||||
import java.lang.annotation.Retention;
|
import java.lang.annotation.Retention;
|
||||||
import java.lang.annotation.RetentionPolicy;
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author Skidder / GregTCLTK
|
||||||
|
* @author Hax / Hax6775 / Schlauer_Hax
|
||||||
|
*/
|
||||||
|
|
||||||
@Retention(RetentionPolicy.RUNTIME)
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
public @interface Perms {
|
public @interface Perms {
|
||||||
Perm[] value() default {};
|
Perm[] value() default {};
|
||||||
|
|
@ -10,7 +10,6 @@ import net.dv8tion.jda.api.events.message.react.MessageReactionRemoveEvent;
|
||||||
import net.dv8tion.jda.api.hooks.ListenerAdapter;
|
import net.dv8tion.jda.api.hooks.ListenerAdapter;
|
||||||
|
|
||||||
import javax.annotation.Nonnull;
|
import javax.annotation.Nonnull;
|
||||||
import java.time.format.DateTimeFormatter;
|
|
||||||
|
|
||||||
public class StarboardListener extends ListenerAdapter {
|
public class StarboardListener extends ListenerAdapter {
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -35,7 +35,7 @@ public class MessageEditor {
|
||||||
|
|
||||||
public EmbedBuilder getMessage(MessageType type, String title_language_string, String title_extra, String title_extra_two,
|
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 description_language_string, String description_extra, String description_extra_two) {
|
||||||
String language = rethink.getLanguage(this.user.getId());
|
String language = (this.user!=null) ? rethink.getLanguage(this.user.getId()) : null;
|
||||||
EmbedBuilder eb = this.getDefaultSettings(type);
|
EmbedBuilder eb = this.getDefaultSettings(type);
|
||||||
if (!title_language_string.equals("")) eb.setTitle(this.handle(language, title_language_string, title_extra, title_extra_two));
|
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));
|
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,
|
WARNING,
|
||||||
INFO,
|
INFO,
|
||||||
NO_PERMISSION,
|
NO_PERMISSION,
|
||||||
NO_SELF_PERMISSION,
|
NO_SELF_PERMISSION,
|
||||||
NO_NSFW
|
NO_NSFW
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4,15 +4,17 @@
|
||||||
|
|
||||||
Hadder = Hadder
|
Hadder = Hadder
|
||||||
|
|
||||||
|
user = <@User>
|
||||||
searchterm = <SearchTerm>
|
searchterm = <SearchTerm>
|
||||||
username = <Username>
|
username = <Username>
|
||||||
number = <Number>/all
|
number = <Number>/all
|
||||||
guildprefix = <New Guild-Prefix>
|
|
||||||
prefix = <New Prefix>
|
prefix = <New Prefix>
|
||||||
|
userprefix = <New User-Prefix>
|
||||||
vc-name/id = <VoiceChannelID|VoiceChannelName>
|
vc-name/id = <VoiceChannelID|VoiceChannelName>
|
||||||
user+nickname = <@user> <New Nickname>
|
user+nickname = <@user> <New Nickname>
|
||||||
region = <region>
|
region = <region>
|
||||||
guildid = <Guild-ID>
|
guildid = <Guild-ID>
|
||||||
|
content = <Message-content>
|
||||||
|
|
||||||
error = Error
|
error = Error
|
||||||
none = None
|
none = None
|
||||||
|
|
@ -25,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.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.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.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.title = Hadder - About
|
||||||
commands.general.about.success.description = Hadder is an open source Discord bot.
|
commands.general.about.success.description = Hadder is an open source Discord bot.
|
||||||
|
|
@ -94,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.message.error.description = There are no messages in this channel.
|
||||||
commands.moderation.clear.help.description = Deletes the specified number of messages.
|
commands.moderation.clear.help.description = Deletes the specified number of messages.
|
||||||
commands.moderation.prefix.success.title = %extra% Successfully set %extra%
|
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.error.description = The prefix must not contain **"**
|
||||||
commands.moderation.prefix.help.description = Sets the Guild-Prefix.
|
commands.moderation.prefix.help.description = Sets the Guild-Prefix.
|
||||||
commands.moderation.invitedetect.activate.success.title = Successfully activated
|
commands.moderation.invitedetect.activate.success.title = Successfully activated
|
||||||
|
|
@ -212,9 +215,9 @@ commands.owner.test.success = TEST my friends
|
||||||
commands.owner.test.help.description = Just a little Test Command
|
commands.owner.test.help.description = Just a little Test Command
|
||||||
|
|
||||||
commands.settings.language.success.title = Language set
|
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.description = Sets the new primary language for a user.
|
||||||
commands.settings.language.help.usage = <Language code>
|
commands.settings.language.help.usage = <Language code>
|
||||||
commands.settings.prefix.success.title = %extra% Successfully set %extra%
|
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
|
commands.settings.prefix.help.description = Sets a new Prefix
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue