簡體   English   中英

Discord.js | 我正在嘗試檢查角色是否具有靜音角色的特定權限

[英]Discord.js | I'm trying to check if a role has a specific permission for a mute role

基本上我正在制作一個超可定制的 discord 機器人,你必須在配置文件中指定當你靜音某人時要使用的角色的名稱。 如果角色無效或拼寫錯誤,作為故障安全措施,機器人會自行查找已關閉“SEND_MESSAGE”權限的角色。

使用.find()在公會的RoleManager中查找沒有權限的角色。 這將返回第一個沒有'SEND_MESSAGES'角色

const role = message.guild.roles.cache
   .find(r => !r.permissions.has('SEND_MESSAGES'));

如果未找到沒有'SEND_PERMISSIONS'的角色,則role將返回undefined

如果您想在名稱拼寫錯誤的情況下提高查找靜音角色的准確性,請檢查角色名稱的開頭。

// Account for spelling mistakes, given that "mu" in "muted" is correct
const role = message.guild.roles.cache
   .find(r => !r.permissions.has('SEND_MESSAGES') && r.name.toLowerCase().startsWith('mu'));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM