我想发出一个带有角色参数的命令,该命令列出在不和谐服务器中担任该角色的每个人。有办法吗?
答案 0 :(得分:4)
您可以做这样的事情。
@client.command()
async def roles(ctx, *, role_wanted: discord.Role):
for role in ctx.guild.roles:
if role == role_wanted:
for member in role.members:
await ctx.send(member.name)
我已经这样做了,所以格式为!roles @ Role1 @ Role2,依此类推,您可以在列表中根据需要拥有任意多个角色。
答案 1 :(得分:0)
如果可以得到人员列表,则可以遍历玩家列表并使用playerList [index] .roles [index] ==“某些角色”
答案 2 :(得分:0)
所以这可能是一些代码:
#Assuming this is in an on_message
x = message.guild.members
withTheRole = []
for member in x:
if "ROLE" in member.roles:
withTheRole.append(member.name)