This commit is contained in:
GregTCLTK 2020-01-03 15:35:51 +01:00
parent ec6c295947
commit ba7eb974da
No known key found for this signature in database
GPG key ID: A91BADE5C070FF67
2 changed files with 103 additions and 94 deletions

View file

@ -82,8 +82,8 @@ public class RulesCommand implements Command {
if (event3.getMessage().getMentionedRoles().size() == 1) { if (event3.getMessage().getMentionedRoles().size() == 1) {
Role role = event3.getMessage().getMentionedRoles().get(0); Role role = event3.getMessage().getMentionedRoles().get(0);
setRole(event, channel, message, event3, role); setRole(event, channel, message, event3, role);
} else if (event3.getGuild().getRolesByName(event3.getMessage().getContentStripped(), true).size() > 0) { } else if (event3.getGuild().getRolesByName(event3.getMessage().getContentRaw(), true).size() > 0) {
Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentStripped(), true).get(0); Role role = event3.getGuild().getRolesByName(event3.getMessage().getContentRaw(), true).get(0);
setRole(event, channel, message, event3, role); setRole(event, channel, message, event3, role);
} else { } else {
event3.getChannel().sendMessage( event3.getChannel().sendMessage(
@ -113,106 +113,113 @@ public class RulesCommand implements Command {
public void setRole(CommandEvent event, TextChannel channel, String message, GuildMessageReceivedEvent event3, Role role) { public void setRole(CommandEvent event, TextChannel channel, String message, GuildMessageReceivedEvent event3, Role role) {
if (event3.getGuild().getSelfMember().canInteract(role)) { if (event3.getGuild().getSelfMember().canInteract(role)) {
event3.getChannel().sendMessage( if (event3.getMember().canInteract(role)) {
event.getMessageEditor().getMessage( event3.getChannel().sendMessage(
MessageEditor.MessageType.INFO, event.getMessageEditor().getMessage(
"commands.moderation.rules.emote.accept.title", MessageEditor.MessageType.INFO,
"", "commands.moderation.rules.emote.accept.title",
"commands.moderation.rules.emote.accept.description", role.getName()) "",
.build()).queue(); "commands.moderation.rules.emote.accept.description", role.getName())
event.getEventWaiter().newOnMessageEventWaiter(event4 -> { .build()).queue();
if (event4.getMessage().getEmotes().size() == 1) { event.getEventWaiter().newOnMessageEventWaiter(event4 -> {
Emote aemote = event4.getMessage().getEmotes().get(0); if (event4.getMessage().getEmotes().size() == 1) {
event4.getChannel().sendMessage( Emote aemote = event4.getMessage().getEmotes().get(0);
event.getMessageEditor().getMessage( event4.getChannel().sendMessage(
MessageEditor.MessageType.INFO, event.getMessageEditor().getMessage(
"commands.moderation.rules.emote.decline.title", "", MessageEditor.MessageType.INFO,
"commands.moderation.rules.emote.decline.description", String.valueOf(aemote)) "commands.moderation.rules.emote.decline.title", "",
.build()).queue(); "commands.moderation.rules.emote.decline.description", String.valueOf(aemote))
event.getEventWaiter().newOnMessageEventWaiter(event5 -> {
Emote demote = event5.getMessage().getEmotes().get(0);
if (!aemote.equals(demote)) {
Message rules = channel.sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.INFO)
.setTitle("Rules")
.setDescription(message)
.build()).complete();
try {
rules.addReaction(aemote).queue();
rules.addReaction(demote).queue();
event5.getChannel().sendMessage(
event.getMessageEditor().getMessage(
MessageEditor.MessageType.INFO,
"commands.moderation.rules.success.title",
"",
"commands.moderation.rules.success.description",
channel.getAsMention())
.build()).queue(); .build()).queue();
} catch (Exception e) { event.getEventWaiter().newOnMessageEventWaiter(event5 -> {
event5.getChannel().sendMessage( Emote demote = event5.getMessage().getEmotes().get(0);
if (!aemote.equals(demote)) {
Message rules = channel.sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.INFO)
.setTitle("Rules")
.setDescription(message)
.build()).complete();
try {
rules.addReaction(aemote).queue();
rules.addReaction(demote).queue();
event5.getChannel().sendMessage(
event.getMessageEditor().getMessage(
MessageEditor.MessageType.INFO,
"commands.moderation.rules.success.title",
"",
"commands.moderation.rules.success.description",
channel.getAsMention())
.build()).queue();
} catch (Exception e) {
event5.getChannel().sendMessage(
event.getMessageEditor().getMessage(
MessageEditor.MessageType.ERROR,
"error",
"commands.moderation.rules.emote.error.access.description")
.build()).queue();
e.printStackTrace();
}
event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId(), aemote.toString(), demote.toString());
} else {
event.getTextChannel().sendMessage(
event.getMessageEditor().getMessage( event.getMessageEditor().getMessage(
MessageEditor.MessageType.ERROR, MessageEditor.MessageType.ERROR,
"error", "commands.moderation.rules.emote.error.equal.title",
"commands.moderation.rules.emote.error.access.description") "commands.moderation.rules.emote.error.equal.description")
.build()).queue(); .build()).queue();
e.printStackTrace();
} }
event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId(), aemote.toString(), demote.toString()); }, event.getJDA(), event.getAuthor());
} else { } else {
event.getTextChannel().sendMessage( String aemote = event4.getMessage().getContentRaw();
event.getMessageEditor().getMessage( event4.getChannel().sendMessage(
MessageEditor.MessageType.ERROR, event.getMessageEditor().getMessage(
"commands.moderation.rules.emote.error.equal.title", MessageEditor.MessageType.INFO,
"commands.moderation.rules.emote.error.equal.description") "commands.moderation.rules.emote.decline.title",
.build()).queue(); "commands.moderation.rules.emoji.decline.description")
}
}, event.getJDA(), event.getAuthor());
} else {
String aemote = event4.getMessage().getContentRaw();
event4.getChannel().sendMessage(
event.getMessageEditor().getMessage(
MessageEditor.MessageType.INFO,
"commands.moderation.rules.emote.decline.title",
"commands.moderation.rules.emoji.decline.description")
.build()).queue();
event.getEventWaiter().newOnMessageEventWaiter(event5 -> {
String demote = event5.getMessage().getContentRaw();
if (!aemote.equals(demote)) {
Message rules = channel.sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.INFO)
.setTitle("Rules")
.setDescription(message)
.build()).complete();
try {
rules.addReaction(aemote).queue();
rules.addReaction(demote).queue();
event5.getChannel().sendMessage(
event.getMessageEditor().getMessage(
MessageEditor.MessageType.INFO,
"commands.moderation.rules.success.title",
"",
"commands.moderation.rules.success.description",
channel.getAsMention())
.build()).queue(); .build()).queue();
} catch (Exception e) { event.getEventWaiter().newOnMessageEventWaiter(event5 -> {
event5.getChannel().sendMessage( String demote = event5.getMessage().getContentRaw();
if (!aemote.equals(demote)) {
Message rules = channel.sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.INFO)
.setTitle("Rules")
.setDescription(message)
.build()).complete();
try {
rules.addReaction(aemote).queue();
rules.addReaction(demote).queue();
event5.getChannel().sendMessage(
event.getMessageEditor().getMessage(
MessageEditor.MessageType.INFO,
"commands.moderation.rules.success.title",
"",
"commands.moderation.rules.success.description",
channel.getAsMention())
.build()).queue();
} catch (Exception e) {
event5.getChannel().sendMessage(
event.getMessageEditor().getMessage(
MessageEditor.MessageType.ERROR,
"error",
"commands.moderation.rules.emoji.error.description")
.build()).queue();
e.printStackTrace();
}
event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId(), aemote, demote);
} else {
event.getTextChannel().sendMessage(
event.getMessageEditor().getMessage( event.getMessageEditor().getMessage(
MessageEditor.MessageType.ERROR, MessageEditor.MessageType.ERROR,
"error", "commands.moderation.rules.emote.error.equal.title",
"commands.moderation.rules.emoji.error.description") "commands.moderation.rules.emote.error.equal.description")
.build()).queue(); .build()).queue();
e.printStackTrace();
} }
event.getRethink().updateRules(event.getGuild().getId(), rules.getId(), role.getId(), aemote, demote); }, event.getJDA(), event.getAuthor());
} else { }
event.getTextChannel().sendMessage( }, event.getJDA(), event.getAuthor());
event.getMessageEditor().getMessage( } else {
MessageEditor.MessageType.ERROR, event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.ERROR,
"commands.moderation.rules.emote.error.equal.title", "commands.moderation.rules.role.permission.error.title",
"commands.moderation.rules.emote.error.equal.description") "commands.moderation.rules.role.permission.error.description")
.build()).queue(); .build()).queue();
} }
}, event.getJDA(), event.getAuthor());
}
}, event.getJDA(), event.getAuthor());
} 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();
} }

View file

@ -136,6 +136,8 @@ commands.moderation.rules.role.title = Role to assign
commands.moderation.rules.role.description = The rules were successfully set. Please send me the name of the role which the user receives after he accepted the rules. commands.moderation.rules.role.description = The rules were successfully set. Please send me the name of the role which the user receives after he accepted the rules.
commands.moderation.rules.role.error.title = Role does not exist commands.moderation.rules.role.error.title = Role does not exist
commands.moderation.rules.role.error.description = The specified role does not exist on this guild. commands.moderation.rules.role.error.description = The specified role does not exist on this guild.
commands.moderation.rules.role.permission.error.title = No permission
commands.moderation.rules.role.permission.error.description = You cannot select this role because you cannot interact with it.
commands.moderation.rules.guild.error.title = Wrong Guild commands.moderation.rules.guild.error.title = Wrong Guild
commands.moderation.rules.guild.error.description = The mentioned channel must be on this guild\! commands.moderation.rules.guild.error.description = The mentioned channel must be on this guild\!
commands.moderation.rules.emote.accept.title = Custom Accept Emote commands.moderation.rules.emote.accept.title = Custom Accept Emote