Java Discord Bot-获取角色成员?

时间:2020-04-18 12:16:26

标签: java bots discord discord-jda

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

我考虑过类似或类似的事情

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

或:

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

1 个答案:

答案 0 :(得分:0)

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

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

要获得该角色,可以使用getRolesByNamegetRoleById

例如:

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

担任角色后,就可以使用getMembersWithRoles

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

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