如何在JDA中编辑嵌入
所以我在想,如果我用我的Bot发送了某个东西的嵌入,之后我可以用Bot编辑它吗? 如果可以的话,请教我怎么做。
这是我到目前为止得到的代码,但稍后我不知道如何编辑该EmbedBuilder:
public class Giveaway extends ListenerAdapter {
@Override
public void onMessageReceived(MessageReceivedEvent event) {
if (event.getMessage().getContentDisplay().startsWith("+giveaway")) {
if (event.getMessage().getContentDisplay().substring(10, 11) != null) {
long msgid = event.getMessageIdLong();
String count = event.getMessage().getContentDisplay().substring(10, 11);
EmbedBuilder eb = new EmbedBuilder();
eb.setTitle("It's GIVEAWAY-TIME!");
eb.setDescription("Prize: " + "
Winners: " + count);
eb.setColor(Color.BLUE);
event.getTextChannel().sendMessage(eb.build()).queue();
}
}
}
}
为了清楚起见,我想做的是事后向邮件添加页脚,并在某些情况下更改描述。
我尝试了一些方法,但还没有想出解决方案。
如果您接电话就好了。
向您致以亲切的问候, 1xxrxtz
解决方案
您可以保留嵌入构建器并创建新的嵌入:
eb.setFooter(...);
MessageEmbed embed = eb.build();
然后,您所要做的就是调用message.editMessage(embed).queue()
,告诉您要编辑的消息。您可以在sendMessage
:中通过回调访问消息
channel.sendMessage(embed).queue(message -> {
eb.setFooter(...);
message.editMessage(eb.build()).queue();
});
相关文章