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.JDA;
|
||||||
import net.dv8tion.jda.api.entities.User;
|
import net.dv8tion.jda.api.entities.User;
|
||||||
import net.dv8tion.jda.api.events.message.guild.GuildMessageReceivedEvent;
|
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 net.dv8tion.jda.api.hooks.ListenerAdapter;
|
||||||
|
|
||||||
import javax.annotation.Nonnull;
|
import javax.annotation.Nonnull;
|
||||||
|
|
@ -42,4 +43,20 @@ public class EventWaiter {
|
||||||
jda.getShardManager().addEventListener(listener);
|
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