【问题标题】:How to add reaction to an embed message JDA如何添加对嵌入消息 JDA 的反应
【发布时间】:2019-11-07 17:06:35
【问题描述】:

当我执行命令 ~verify 时,我正在尝试发送和嵌入消息,然后它会发送一条嵌入消息,但我找不到如何添加响应。

我已经做了嵌入消息并发送了它,但可以添加反应


import Main.Bot;
import net.dv8tion.jda.core.EmbedBuilder;
import net.dv8tion.jda.core.MessageBuilder;
import net.dv8tion.jda.core.entities.Message;
import net.dv8tion.jda.core.events.message.guild.GuildMessageReceivedEvent;
import net.dv8tion.jda.core.hooks.ListenerAdapter;

import java.awt.*;

public class Verify extends ListenerAdapter {



    @Override
    public void onGuildMessageReceived(GuildMessageReceivedEvent e){
        if(e.getAuthor().isBot()) return;

        if(e.getMessage().getContentRaw().equalsIgnoreCase(Bot.prefix+"verify")){
            EmbedBuilder embedBuilder = new EmbedBuilder();
            embedBuilder.setColor(Color.red);
            embedBuilder.setTitle("Verify yourself!");
            embedBuilder.addField("How?","Press the ✔ reaction to verify",false);
            embedBuilder.setFooter("Created by SlayZBro#3501",e.getGuild().getIconUrl());

            e.getChannel().sendTyping().queue();
            e.getChannel().sendMessage(embedBuilder.build()).queue();
            embedBuilder.clear();


        }
    }


}

我需要将反应添加到嵌入消息中

【问题讨论】:

    标签: java discord discord-jda


    【解决方案1】:

    我知道该怎么做。只需要添加这一行

     e.getChannel().sendMessage(embedBuilder.build()).complete().addReaction("✔").queue();
    

    【讨论】:

    • 最好使用 queue(...) 并在回调中执行。
    【解决方案2】:

    您可以在queue() 的回调中访问已发送的消息并在那里添加反应:

    channel.sendMessage(embed).queue(message -> message.addReaction(reaction).queue());
    

    要添加多个问题,您可以使用多行 lambda:

    channel.sendMessage(embed).queue(message -> {
      message.addReaction(reaction1).queue();
      message.addReaction(reaction2).queue();
      message.addReaction(reaction3).queue();
    });
    

    也没有理由清除EmbedBuilder,因为它不会在您的代码中再次使用。构建器通常不是需要关闭/清除的资源,除非您再次使用它们并且不想要以前的设置。

    【讨论】:

      猜你喜欢
      • 2020-04-12
      • 2021-03-11
      • 2020-11-28
      • 2020-11-07
      • 1970-01-01
      • 1970-01-01
      • 2021-09-12
      • 2021-07-25
      • 2021-06-25
      相关资源
      最近更新 更多