【问题标题】:Java Discord Bot - Get Members of a role?Java Discord Bot - 获取角色成员?
【发布时间】:2020-07-31 23:25:41
【问题描述】:

我目前正在开发一个 java discord bot (net.dv8tion),我尝试创建一个“who”命令,该命令应该列出所选角色的人员,例如:!who admin --> list of所有具有“管理员”角色的人。所以我的问题是,我实际上找不到解决这个问题的方法或任何其他方法。 我希望你们中的一些人可以帮助我解决这个问题^^

我想过这样的事情,或者类似的事情:

list <> members = guild.getMembersByRole(roleName);

或:

role rolename;
String[] members = rolename.getMembers();

【问题讨论】:

    标签: java bots discord discord-jda


    【解决方案1】:

    这可以通过两个步骤完成:

    1. 获取目标角色
    2. 获取该角色的成员

    要获得该角色,您可以使用getRolesByName 或getRoleById。

    例如:

    List<Role> roles = guild.getRolesByName("admin", true);
    Role role = guild.getRoleById(698231912904523796L);
    

    获得角色后,您可以使用getMembersWithRoles。

    List<Member> members = guild.getMembersWithRoles(roles);
    

    尽管角色正确,但如果结果成员列表为空或缺少成员,则可能未缓存成员。有关详细信息,请参阅this answer。

    【讨论】:

    • 非常感谢您的快速帮助,它运行良好^^
    猜你喜欢
    • 2021-08-11
    • 2021-10-11
    • 2022-01-05
    • 1970-01-01
    • 2021-11-18
    • 2020-06-29
    • 1970-01-01
    • 2020-08-16
    • 2020-07-13
    相关资源
    最近更新 更多