Discord.js V12 How can I lock all channels for a certain role?(Discord.js V12 如何锁定某个角色的所有频道?)
问题描述
我想将服务器中的所有频道锁定为某个角色(发送消息:false)这是我当前的代码,我得到的错误是 TypeError [INVALID_TYPE]: Supplied overwrites is not an Array or Collection of Permission Overwrites.
代码:
I want to lock all channels in the server to a certain role (Send messages: false)
This is my current code, the error I get is TypeError [INVALID_TYPE]: Supplied overwrites is not an Array or Collection of Permission Overwrites.
Code:
client.on('message', async message => {
if(message.content.startsWith(prefix + "modrek")) {
let muteRole = message.guild.roles.cache.find(role => role.name == "Mute")
const channels = message.guild.channels.cache.filter(ch => ch.type !== "category")
message.guild.channels.forEach(ch =>
{
if(ch.type == "text")
ch.overwritePermissions([
{
id: muteRole.id,
deny: ['SEND_MESSAGES'],
},
], 'Needed to change permissions');
})
}
})
如果有人可以帮助我,请告诉我:D
Let me know if someone can help me out :D
推荐答案
overwritePermissions 将替换频道中的权限覆盖,这意味着如果频道之前有权限覆盖,它将全部替换.
overwritePermissions will replace the permission overwrites in the channel that means if the channel had previous permission overwrites it will replace them all.
在那种情况下->
In that case ->
message.channel.overwritePermissions([
{
id: muteRole.id,
deny: ['SEND_MESSAGES'],
},
], 'Needed to change permissions');
createOverwrite 将覆盖权限对于此频道中的用户或角色.(如果存在则替换)
createOverwrite will Overwrite the permissions for a user or role in this channel. (replaces if existent)
在那个->
message.channel.createOverwrite(muteRole, {
SEND_MESSAGES: false
})
}
修改所有频道的权限 ->
Modify permissions for all channels ->
message.guild.channels.cache.forEach(ch =>
{
if(ch.type == "text")
ch.overwritePermissions([
{
id: muteRole.id,
deny: ['SEND_MESSAGES'],
},
], 'Needed to change permissions');
})
这篇关于Discord.js V12 如何锁定某个角色的所有频道?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Discord.js V12 如何锁定某个角色的所有频道?
基础教程推荐
- 用于 Twitter 小部件宽度的 HTML/CSS 2022-01-01
- html表格如何通过更改悬停边框来突出显示列? 2022-01-01
- Electron 将 Node.js 和 Chromium 上下文结合起来意味着 2022-01-01
- Vue 3 – <过渡>渲染不能动画的非元素根节点 2022-01-01
- 自定义 XMLHttpRequest.prototype.open 2022-01-01
- 我可以在浏览器中与Babel一起使用ES模块,而不捆绑我的代码吗? 2022-01-01
- Chart.js 在线性图表上拖动点 2022-01-01
- 如何使用TypeScrip将固定承诺数组中的项设置为可选 2022-01-01
- 直接将值设置为滑块 2022-01-01
- 如何使用JIT在顺风css中使用布局变体? 2022-01-01