【问题标题】:Get a user from a message methode从消息方法中获取用户
【发布时间】:2020-04-22 18:48:58
【问题描述】:

我正在尝试使用成员活动创建一个不和谐的机器人,例如,谁向用户发送了许多消息,但是每次我尝试从消息中捕获用户以验证活动时,方法都不起作用。这是一个例子:

if (event.getMessage().getContentRaw().equalsIgnoreCase(prefix + "testMention")) {
    if (event.getMessage().getMentionedMembers().size() < 1) {
        canal.sendMessage("You don't mentioned any users").queue();
        return; 
    }

    User target = (User) event.getMessage().getMentionedMembers().get(0);
    canal.sendMessage("You've been mentioned " + target.getAsTag()).queue();
}

【问题讨论】:

  • 你必须比“不起作用”更具体

标签: discord-jda


【解决方案1】:

除非您的前缀是提及,否则您的代码将无法工作。例如,如果消息内容等于 "!testMention",那么您的第一个条件为真,那么在这种情况下,第二个条件 getMentionedMembers().size() &lt; 1 必须为真,因为您的消息内容不包含提及。

您不能将Member 转换为User,因为它们是完全不同的类型。如果你想拥有一个用户,那么你需要使用getMentionedUsers()member.getUser()

【讨论】:

    猜你喜欢
    • 2021-01-27
    • 2021-07-19
    • 2020-09-13
    • 1970-01-01
    • 2017-12-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-11
    相关资源
    最近更新 更多