基本上,我需要一个返回 true
或 false
的函数,具体取决于指定频道是否已检查 @everyone 的 SEND_MESSAGES
权限。有人知道怎么做吗?
答案 0 :(得分:1)
首先,您需要同时获取 Role
和 Channel
对象,以检查该特定频道中角色的权限。然后您检查该特定频道中的权限是否具有特定权限。
例如:检查角色对象:
let role = message.guild.roles.cache.get('roleid');
let channel = message.guild.channels.cache.get('channelid');
if(role.permissionsIn(channel).has('Permissions.FLAGS')){
//do your thing.
}
例如:检查频道对象:
let role = message.guild.roles.cache.get('roleid');
let channel = message.guild.channels.cache.get('channelid');
if(channel.permissionsFor(role).has('Permissions.FLAGS')){
//do your thing.
}
注意:everyone
角色 ID 与公会 ID 相同。所以使用公会 ID 来获取 everyone
角色对象。