Skip to content
This repository has been archived by the owner on Nov 12, 2023. It is now read-only.

Commit

Permalink
Merge pull request #186 from book000/fix/pin-reaction
Browse files Browse the repository at this point in the history
fix(PinReaction): #185 📌リアクション時の条件追加
  • Loading branch information
book000 committed Jan 25, 2022
2 parents 29941cf + 63ff56e commit 85d19de
Showing 1 changed file with 10 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,12 @@
import net.dv8tion.jda.api.entities.Member;
import net.dv8tion.jda.api.entities.Message;
import net.dv8tion.jda.api.entities.MessageReaction;
import net.dv8tion.jda.api.entities.User;
import net.dv8tion.jda.api.events.message.react.MessageReactionAddEvent;
import net.dv8tion.jda.api.hooks.ListenerAdapter;
import org.jetbrains.annotations.NotNull;

import java.util.List;
import java.util.concurrent.TimeUnit;

public class Event_PinReaction extends ListenerAdapter {
Expand All @@ -36,12 +38,19 @@ public void onMessageReactionAdd(@NotNull MessageReactionAddEvent event) {
if (message.isPinned()) {
return;
}
List<User> users = message.retrieveReactionUsers("📌").complete();
if (users.size() < 2) {
return;
}
if (users.stream().anyMatch(user -> event.getJDA().getSelfUser().getIdLong() == user.getIdLong())) {
return;
}
Member member = event.getMember();
if (member == null) {
return;
}
message.pin().queue(
null,
s -> message.addReaction("📌").queue(),
e -> event
.getChannel()
.sendMessage("<@" + member.getId() + "> Failed to pin message: " + e.getMessage())
Expand Down

0 comments on commit 85d19de

Please sign in to comment.