ReactionEventWaiter
This commit is contained in:
parent
b7d0d365b6
commit
b94be60fd7
1 changed files with 17 additions and 0 deletions
|
|
@ -19,6 +19,7 @@ package com.bbn.hadder.utils;
|
|||
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.events.message.guild.react.GuildMessageReactionAddEvent;
|
||||
import net.dv8tion.jda.api.hooks.ListenerAdapter;
|
||||
|
||||
import javax.annotation.Nonnull;
|
||||
|
|
@ -42,4 +43,20 @@ public class EventWaiter {
|
|||
jda.getShardManager().addEventListener(listener);
|
||||
}
|
||||
|
||||
public void newOnReactionEventWaiter(Consumer<GuildMessageReactionAddEvent> onEvent, JDA jda, User user) {
|
||||
Object listener = new ListenerAdapter() {
|
||||
@Override
|
||||
public void onGuildMessageReactionAdd(@Nonnull GuildMessageReactionAddEvent event) {
|
||||
if (user==null) {
|
||||
onEvent.accept(event);
|
||||
event.getJDA().getShardManager().removeEventListener(this);
|
||||
} else if (event.getUser().getId().equals(user.getId())) {
|
||||
onEvent.accept(event);
|
||||
event.getJDA().getShardManager().removeEventListener(this);
|
||||
}
|
||||
}
|
||||
};
|
||||
jda.getShardManager().addEventListener(listener);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue