我使用 Discord Java API (JDA) 编写了清除(清除)命令。
public class Purge {
public static void onPurgeCommand(SlashCommandEvent event) {
event.deferReply().queue();
JDA bot = Bot.bot;
int amount = Integer.parseInt(event.getOption("amount").getAsString());
List<Message> messages = event.getChannel().getHistory().retrievePast(amount).complete();
for (Message message: messages) {
message.delete().queue();
}
event.getHook().sendMessage("**Es wurden "+amount+" Nachrichten gelöscht.**").queue();
}
}
在 Slash 命令的帮助下,我想检查消息是否已固定以及何时应跳过该消息。 我是用 Java 编写东西的新手,所以我什么都不知道
答案 0 :(得分:0)
你可以试试这个:
event.getChannel().getHistory().retrievePast(amount).queue(messageHistory -> {
for (Message message : messageHistory) {
if (!message.isPinned()) message.delete().queue();
}
});