Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/469.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 设置烫发并为用户指定角色_Javascript_Discord_Bots_Mute - Fatal编程技术网

Javascript 设置烫发并为用户指定角色

Javascript 设置烫发并为用户指定角色,javascript,discord,bots,mute,Javascript,Discord,Bots,Mute,我试图为我的机器人发出静音命令,但遇到了这些问题。我已经买了很长时间了 const { Guild } = require("discord.js"); module.exports = { name: "mute", description: "Mutes a member", execute(message,args,Mention){ if (message.member.hasPermiss

我试图为我的机器人发出静音命令,但遇到了这些问题。我已经买了很长时间了

const { Guild } = require("discord.js");

module.exports = {
    name: "mute",
    description: "Mutes a member",
    execute(message,args,Mention){
      if (message.member.hasPermission("ADMINISTRATOR") || message.author.username === "creepersaur"){
          let targetMember = message.mentions.members.first();
          const guild = message.guild
          
          let myRole = message.guild.roles.cache.find(role => role.name === "Muted");
          if (!myRole) {
            
             newRole = message.guild.roles.create({
                data: {
                  name: 'Muted',
                  color: 'BLUE',
                  Permissions: '',
                },
                reason: `Make a muted role if it doesn't exist.`
             })
            .then(console.log)
            .catch(console.error); 

            //message.guild.roles.Muted.setPermissions({'SEND_MESSAGES': true})

            targetMember.roles.add(newRole).catch(console.error);
            message.channel.send(`${targetMember.username} has been muted!`);

          } else if (myRole) {
            targetMember.roles.add(myRole).catch(console.error);
            message.channel.send(`${targetMember.username} has been muted!`);
          }
      }
  }
};
它将查看服务器中是否有一个静音角色,如果没有,那么它将创建一个静音角色给用户。除了权限不起作用。正因为如此,它没有将角色本身赋予我想要的用户:(
bump x1

我在角色部分没有看到任何不好的地方,但是这段代码应该有固定的权限

const { Guild } = require("discord.js");

module.exports = {
    name: "mute",
    description: "Mutes a member",
    execute(message,args,Mention){
      if (message.member.hasPermission("ADMINISTRATOR") || message.author.username === "creepersaur"){
          let targetMember = message.mentions.members.first();
          const guild = message.guild
          
          let myRole = message.guild.roles.cache.find(role => role.name === "Muted");
          if (!myRole) {
            
             newRole = message.guild.roles.create({
                data: {
                  name: 'Muted',
                  color: 'BLUE',
                  Permissions: '',
                },
                reason: `Make a muted role if it doesn't exist.`
             })
            .then(console.log)
            .catch(console.error); 

            message.guild.channels.cache.forEach(ch => 
        {
        if(ch.type == "text") {
          ch.updateOverwrite(
          newRole, {
              SEND_MESSAGES: false
          }

            targetMember.roles.add(newRole).catch(console.error);
            message.channel.send(`${targetMember.username} has been muted!`);

          } else if (myRole) {
            targetMember.roles.add(myRole).catch(console.error);
            message.channel.send(`${targetMember.username} has been muted!`);
          }
      }
  }
};

我试过了,但没有成功。虽然它仍然不能成为角色,所以我认为权限部分是被窃听的部分。我添加的部分是,角色的人不能说soooo idk