Merge Greg's branch into the master branch #256
8 changed files with 25 additions and 33 deletions
|
|
@ -4,7 +4,6 @@ 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;
|
||||
|
|
@ -19,16 +18,14 @@ 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, EventWaiter eventWaiter) {
|
||||
public CommandEvent(@Nonnull JDA api, long responseNumber, @Nonnull Message message, Rethink rethink, Config config, CommandHandler commandHandler, HelpCommand helpCommand, MessageEditor messageEditor) {
|
||||
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() {
|
||||
|
|
@ -50,8 +47,4 @@ 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);
|
||||
}, event);
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -48,8 +48,8 @@ public class FeedbackCommand implements Command {
|
|||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}, event);
|
||||
}, event);
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ public class ScreenShareCommand implements Command {
|
|||
try {
|
||||
if (vc.getIdLong() == Long.parseLong(args[0])) {
|
||||
event.getChannel().sendMessage(event.getMessageEditor().getMessage(
|
||||
MessageEditor.MessageType.INFO,
|
||||
MessageEditor.MessageType.INFO,
|
||||
"commands.misc.screenshare.success.title", "")
|
||||
.setDescription("http://discordapp.com/channels/" + event.getGuild().getId() + "/" + vc.getId() + "/").build()).queue();
|
||||
return;
|
||||
|
|
@ -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);
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
} 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);
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
} 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);
|
||||
}, event);
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
} 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);
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
} else {
|
||||
String aemote = event4.getMessage().getContentRaw();
|
||||
event4.getChannel().sendMessage(
|
||||
|
|
@ -210,10 +210,9 @@ public class RulesCommand implements Command {
|
|||
"commands.moderation.rules.emote.error.equal.description")
|
||||
.build()).queue();
|
||||
}
|
||||
}, event
|
||||
);
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
}
|
||||
}, event);
|
||||
}, event.getJDA(), event.getAuthor());
|
||||
} else {
|
||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(MessageEditor.MessageType.NO_SELF_PERMISSION).build()).queue();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -15,14 +15,14 @@ public class LeaveCommand implements Command {
|
|||
if (event.getGuild().getSelfMember().getVoiceState().inVoiceChannel()) {
|
||||
event.getGuild().getAudioManager().closeAudioConnection();
|
||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(
|
||||
MessageEditor.MessageType.INFO,
|
||||
"commands.music.leave.success.title",
|
||||
MessageEditor.MessageType.INFO,
|
||||
"commands.music.leave.success.title",
|
||||
"commands.music.leave.success.description")
|
||||
.build()).queue();
|
||||
} else {
|
||||
event.getTextChannel().sendMessage(event.getMessageEditor().getMessage(
|
||||
MessageEditor.MessageType.WARNING,
|
||||
"commands.music.leave.error.tile",
|
||||
MessageEditor.MessageType.WARNING,
|
||||
"commands.music.leave.error.tile",
|
||||
"commands.music.leave.error.description")
|
||||
.build()).queue();
|
||||
}
|
||||
|
|
@ -30,7 +30,7 @@ public class LeaveCommand implements Command {
|
|||
|
||||
@Override
|
||||
public String[] labels() {
|
||||
return new String[]{"leave", "quit"};
|
||||
return new String[]{"leave"};
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
|
|
@ -4,7 +4,6 @@ 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;
|
||||
|
||||
|
|
@ -35,7 +34,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()), new EventWaiter());
|
||||
config, this, helpCommand, new MessageEditor(rethink, event.getAuthor()));
|
||||
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,6 +1,7 @@
|
|||
package com.bbn.hadder.utils;
|
||||
|
||||
import com.bbn.hadder.commands.CommandEvent;
|
||||
import net.dv8tion.jda.api.JDA;
|
||||
import net.dv8tion.jda.api.entities.User;
|
||||
import net.dv8tion.jda.api.events.message.guild.GuildMessageReceivedEvent;
|
||||
import net.dv8tion.jda.api.hooks.ListenerAdapter;
|
||||
|
||||
|
|
@ -9,20 +10,20 @@ import java.util.function.Consumer;
|
|||
|
||||
public class EventWaiter {
|
||||
|
||||
public void newOnMessageEventWaiter(Consumer<GuildMessageReceivedEvent> onEvent, CommandEvent event) {
|
||||
public void newOnMessageEventWaiter(Consumer<GuildMessageReceivedEvent> onEvent, JDA jda, User user) {
|
||||
Object listener = new ListenerAdapter() {
|
||||
@Override
|
||||
public void onGuildMessageReceived(@Nonnull GuildMessageReceivedEvent event) {
|
||||
if (event.getAuthor() == null) {
|
||||
if (user==null) {
|
||||
onEvent.accept(event);
|
||||
event.getJDA().getShardManager().removeEventListener(this);
|
||||
} else if (event.getAuthor().getId().equals(event.getAuthor().getId())) {
|
||||
} else if (event.getAuthor().getId().equals(user.getId())) {
|
||||
onEvent.accept(event);
|
||||
event.getJDA().getShardManager().removeEventListener(this);
|
||||
}
|
||||
}
|
||||
};
|
||||
event.getJDA().getShardManager().addEventListener(listener);
|
||||
jda.getShardManager().addEventListener(listener);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue