Merge Greg's branch into the master branch #256
9 changed files with 38 additions and 25 deletions
|
|
@ -4,6 +4,7 @@ import com.bbn.hadder.Rethink;
|
|||
import com.bbn.hadder.commands.general.HelpCommand;
|
||||
import com.bbn.hadder.core.CommandHandler;
|
||||
import com.bbn.hadder.core.Config;
|
||||
import com.bbn.hadder.utils.EventWaiter;
|
||||
import com.bbn.hadder.utils.MessageEditor;
|
||||
import net.dv8tion.jda.api.JDA;
|
||||
import net.dv8tion.jda.api.entities.Message;
|
||||
|
|
@ -18,14 +19,16 @@ public class CommandEvent extends MessageReceivedEvent {
|
|||
private CommandHandler commandHandler;
|
||||
private HelpCommand helpCommand;
|
||||
private MessageEditor messageEditor;
|
||||
private EventWaiter eventWaiter;
|
||||
|
||||
public CommandEvent(@Nonnull JDA api, long responseNumber, @Nonnull Message message, Rethink rethink, Config config, CommandHandler commandHandler, HelpCommand helpCommand, MessageEditor messageEditor) {
|
||||
public CommandEvent(@Nonnull JDA api, long responseNumber, @Nonnull Message message, Rethink rethink, Config config, CommandHandler commandHandler, HelpCommand helpCommand, MessageEditor messageEditor, EventWaiter eventWaiter) {
|
||||
super(api, responseNumber, message);
|
||||
this.rethink = rethink;
|
||||
this.config = config;
|
||||
this.commandHandler = commandHandler;
|
||||
this.helpCommand = helpCommand;
|
||||
this.messageEditor = messageEditor;
|
||||
this.eventWaiter = eventWaiter;
|
||||
}
|
||||
|
||||
public Rethink getRethink() {
|
||||
|
|
@ -47,4 +50,8 @@ public class CommandEvent extends MessageReceivedEvent {
|
|||
public MessageEditor getMessageEditor() {
|
||||
return messageEditor;
|
||||
}
|
||||
|
||||
public EventWaiter getEventWaiter() {
|
||||
return eventWaiter;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -34,8 +34,8 @@ public class EqualsCommand implements Command {
|
|||
.addField(event.getMessageEditor().getTerm( "commands.general.equals.string.second"), secondString, false)
|
||||
.addField(event.getMessageEditor().getTerm( "commands.general.equals.string.result"), String.valueOf(firstString.equals(secondString)), false)
|
||||
.build()).queue();
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
}, event);
|
||||
}, event);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -48,8 +48,8 @@ public class FeedbackCommand implements Command {
|
|||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
}, event);
|
||||
}, event);
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ public class ScreenShareCommand implements Command {
|
|||
event.getChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.ERROR, "commands.misc.screenshare.id.error.title", "commands.misc.screenshare.number.error.description").build()).queue();
|
||||
event.getHelpCommand().sendHelp(this, event);
|
||||
}
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
}, event);
|
||||
} else if (vcs.size()==0) {
|
||||
event.getChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.ERROR, "commands.misc.screenshare.channel.existing.error", "commands.misc.screenshare.channel.existing.description").build()).queue();
|
||||
event.getHelpCommand().sendHelp(this, event);
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ public class RulesCommand implements Command {
|
|||
.build()).queue();
|
||||
}
|
||||
}
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
}, event);
|
||||
} else {
|
||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue();
|
||||
}
|
||||
|
|
@ -93,8 +93,8 @@ public class RulesCommand implements Command {
|
|||
"commands.moderation.rules.role.error.description")
|
||||
.build()).queue();
|
||||
}
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
}, event);
|
||||
}, event);
|
||||
} else {
|
||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.ERROR,
|
||||
"commands.moderation.rules.error.message.title",
|
||||
|
|
@ -165,7 +165,7 @@ public class RulesCommand implements Command {
|
|||
"commands.moderation.rules.emote.error.equal.description")
|
||||
.build()).queue();
|
||||
}
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
}, event);
|
||||
} else {
|
||||
String aemote = event4.getMessage().getContentRaw();
|
||||
event4.getChannel().sendMessage(
|
||||
|
|
@ -210,9 +210,10 @@ public class RulesCommand implements Command {
|
|||
"commands.moderation.rules.emote.error.equal.description")
|
||||
.build()).queue();
|
||||
}
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
}, event
|
||||
);
|
||||
}
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
}, event);
|
||||
} else {
|
||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@ public class LeaveCommand implements Command {
|
|||
|
||||
@Override
|
||||
public String[] labels() {
|
||||
return new String[]{"leave"};
|
||||
return new String[]{"leave", "quit"};
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ import com.bbn.hadder.Rethink;
|
|||
import com.bbn.hadder.commands.Command;
|
||||
import com.bbn.hadder.commands.CommandEvent;
|
||||
import com.bbn.hadder.commands.general.HelpCommand;
|
||||
import com.bbn.hadder.utils.EventWaiter;
|
||||
import com.bbn.hadder.utils.MessageEditor;
|
||||
import net.dv8tion.jda.api.events.message.MessageReceivedEvent;
|
||||
|
||||
|
|
@ -34,7 +35,7 @@ public class CommandHandler {
|
|||
if (args.length > 0 && args[0].equals("")) args = new String[0];
|
||||
|
||||
CommandEvent commandEvent = new CommandEvent(event.getJDA(), event.getResponseNumber(), event.getMessage(), rethink,
|
||||
config, this, helpCommand, new MessageEditor(rethink, event.getAuthor()));
|
||||
config, this, helpCommand, new MessageEditor(rethink, event.getAuthor()), new EventWaiter());
|
||||
if (cmd.getClass().getAnnotations().length > 0 && !Arrays.asList(cmd.getClass().getAnnotations()).contains(Perms.class)) {
|
||||
for (Perm perm : cmd.getClass().getAnnotation(Perms.class).value()) {
|
||||
if (!perm.check(commandEvent)) {
|
||||
|
|
|
|||
|
|
@ -1,7 +1,6 @@
|
|||
package com.bbn.hadder.utils;
|
||||
|
||||
import net.dv8tion.jda.api.JDA;
|
||||
import net.dv8tion.jda.api.entities.User;
|
||||
import com.bbn.hadder.commands.CommandEvent;
|
||||
import net.dv8tion.jda.api.events.message.guild.GuildMessageReceivedEvent;
|
||||
import net.dv8tion.jda.api.hooks.ListenerAdapter;
|
||||
|
||||
|
|
@ -10,20 +9,20 @@ import java.util.function.Consumer;
|
|||
|
||||
public class EventWaiter {
|
||||
|
||||
public void newOnMessageEventWaiter(Consumer<GuildMessageReceivedEvent> onEvent, JDA jda, User user) {
|
||||
public void newOnMessageEventWaiter(Consumer<GuildMessageReceivedEvent> onEvent, CommandEvent event) {
|
||||
Object listener = new ListenerAdapter() {
|
||||
@Override
|
||||
public void onGuildMessageReceived(@Nonnull GuildMessageReceivedEvent event) {
|
||||
if (user==null) {
|
||||
if (event.getAuthor() == null) {
|
||||
onEvent.accept(event);
|
||||
event.getJDA().getShardManager().removeEventListener(this);
|
||||
} else if (event.getAuthor().getId().equals(user.getId())) {
|
||||
} else if (event.getAuthor().getId().equals(event.getAuthor().getId())) {
|
||||
onEvent.accept(event);
|
||||
event.getJDA().getShardManager().removeEventListener(this);
|
||||
}
|
||||
}
|
||||
};
|
||||
jda.getShardManager().addEventListener(listener);
|
||||
event.getJDA().getShardManager().addEventListener(listener);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -159,6 +159,11 @@ commands.moderation.rules.error.message.title = Can't write messages
|
|||
commands.moderation.rules.error.message.description = I can not write messages in the specified channel
|
||||
commands.moderation.rules.help.description = Setup the rules on your Discord server
|
||||
commands.moderation.starboard.success.title = Successfully set the Channel\!
|
||||
commands.moderation.editrules.message.title = New message
|
||||
commands.moderation.editrules.message.description = Please send me the new rules message now.
|
||||
commands.moderation.editrules.error.title = No rules
|
||||
commands.moderation.editrules.error.description = There is nor rules message in this server. Please setup the rules first with %extra%rules
|
||||
commands.moderation.editrules.help.description = Edits the rules message.
|
||||
|
||||
commands.music.join.success.title = Successfully connected
|
||||
commands.music.join.success.description = I successfully connected to %extra%.
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue