【发布时间】:2018-11-04 20:26:00
【问题描述】:
目前我正在为 Discord 制作一个相当简单的日志记录机器人。它所做的只是将EmbedMessage 发送到服务器中的任何#log 频道。
这点杂乱的代码:
@Override
public void onMessageReceived(MessageReceivedEvent e) {
Message message = e.getMessage();
User author = e.getAuthor();
MessageChannel channel = e.getChannel();
if (channel.getName().equalsIgnoreCase("log") && !author.isBot()) {
message.delete().queue();
} else {
EmbedBuilder eBuilder = new EmbedBuilder();
String aMention = "@" + author.getName() + "#" + author.getDiscriminator();
eBuilder.setAuthor(aMention, null, author.getEffectiveAvatarUrl());
eBuilder.setColor(Color.GRAY);
eBuilder.setFooter("#" + channel.getName(), null);
eBuilder.appendDescription(message.getContentDisplay());
MessageEmbed embed = eBuilder.build();
for (MessageChannel mc : e.getGuild().getTextChannels()) {
if (mc.getName().equalsIgnoreCase("log") && !author.isBot()) {
mc.sendMessage(embed).queue();
}
}
}
}
是记录非机器人聊天的设置。目前,它似乎没有在String aMention = "@" + author.getName() + "#" + author.getDiscriminator(); 行中设置与用户交谈的直接个人资料链接。我尝试搜索获取个人资料链接的特定方法,但目前我无法找到它。
【问题讨论】:
-
你不能我想,但要让用户提到你可以做
author.getAsMention()
标签: java bots discord discord-jda