Java Discord Bot (JDA) 检查是否被 ping 通

时间:2021-07-09 01:18:35

标签: java discord discord-jda

我使用 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 编写东西的新手,所以我什么都不知道

1 个答案:

答案 0 :(得分:0)

你可以试试这个:

event.getChannel().getHistory().retrievePast(amount).queue(messageHistory -> {
        
        for (Message message : messageHistory) {
            if (!message.isPinned()) message.delete().queue();
        }

    });