最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

[频道名称中按角色(node.js)的Discord.js memberCount]

IT培训 admin 11浏览 0评论

[频道名称中按角色(node.js)的Discord.js memberCount]

实际上我正在学习Javascript / node.js我在此网站上注册是因为我坚持创建不和谐的bot。好吧,一切都很好,并且有效,只是一个问题:

我的机器人基本上是为频道名称中的用户计数并更新计数器。但是按角色为用户提供的实时更新无法正常工作。

这是我的代码:

  console.log(`Logged in as ${client.user.tag}!`);
  let IGuild = client.guilds.cache.get("703237714413355019");
// User counter
  let memberCount = IGuild.memberCount;
  let channelCountUsers = IGuild.channels.cache.get('709859603793576056');
      channelCountUsers.setName('Users: '+ memberCount)
// Admins
  let adminID = '707261958243483698';
  let memberCountAdmins = IGuild.roles.cache.get(adminID).members.size;
  let channelCountAdmins = IGuild.channels.cache.get('709889840338042903');
      channelCountAdmins.setName('Admins: ' + memberCountAdmins)
});
// update User counter <- WORKS
client.on('guildMemberAdd', member=>{
    let IGuild = client.guilds.cache.get('703237714413355019');
    let memberCount =  IGuild.memberCount;
    let channelCountUsers = IGuild.channels.cache.get('709859603793576056');
        channelCountUsers.setName('Users: ' + memberCount)
   }) 
// update Admin counter <- DOES NOT WORK :(
client.on('guildMemberAdd', member=>{
    let IGuild = client.guilds.cache.get('703237714413355019');
    let adminID = "707261958243483698";
    let memberCount = IGuild.roles.cache.get(adminID).members.size;
    let channelCountAdmins = IGuild.channels.cache.get('709889840338042903');
        channelCountAdmins.setName('Admins: ' + memberCount)
   }) 


   client.on('guildMemberRemove', member =>{
    let IGuild = client.guilds.cache.get('703237714413355019');
      let memberCount =  IGuild.memberCount;
      let channelCountUsers = IGuild.channels.cache.get('709859603793576056');
        channelCountUsers.setName('Users: ' + memberCount)
   })

因此,我只需要实时更新“管理员计数器”或“角色计数器”即可。

问候和抱歉,在这里发布我的菜鸟资料:/

回答如下:

您的问题是guildMemberAdd不检查角色更新,因为您将不得不使用guildMemberAdd

此外,您有2个guildMemberUpdate事件,每个事件应该只有1个。

guildMemberUpdate

[频道名称中按角色(node.js)的Discord.js memberCount]

实际上我正在学习Javascript / node.js我在此网站上注册是因为我坚持创建不和谐的bot。好吧,一切都很好,并且有效,只是一个问题:

我的机器人基本上是为频道名称中的用户计数并更新计数器。但是按角色为用户提供的实时更新无法正常工作。

这是我的代码:

  console.log(`Logged in as ${client.user.tag}!`);
  let IGuild = client.guilds.cache.get("703237714413355019");
// User counter
  let memberCount = IGuild.memberCount;
  let channelCountUsers = IGuild.channels.cache.get('709859603793576056');
      channelCountUsers.setName('Users: '+ memberCount)
// Admins
  let adminID = '707261958243483698';
  let memberCountAdmins = IGuild.roles.cache.get(adminID).members.size;
  let channelCountAdmins = IGuild.channels.cache.get('709889840338042903');
      channelCountAdmins.setName('Admins: ' + memberCountAdmins)
});
// update User counter <- WORKS
client.on('guildMemberAdd', member=>{
    let IGuild = client.guilds.cache.get('703237714413355019');
    let memberCount =  IGuild.memberCount;
    let channelCountUsers = IGuild.channels.cache.get('709859603793576056');
        channelCountUsers.setName('Users: ' + memberCount)
   }) 
// update Admin counter <- DOES NOT WORK :(
client.on('guildMemberAdd', member=>{
    let IGuild = client.guilds.cache.get('703237714413355019');
    let adminID = "707261958243483698";
    let memberCount = IGuild.roles.cache.get(adminID).members.size;
    let channelCountAdmins = IGuild.channels.cache.get('709889840338042903');
        channelCountAdmins.setName('Admins: ' + memberCount)
   }) 


   client.on('guildMemberRemove', member =>{
    let IGuild = client.guilds.cache.get('703237714413355019');
      let memberCount =  IGuild.memberCount;
      let channelCountUsers = IGuild.channels.cache.get('709859603793576056');
        channelCountUsers.setName('Users: ' + memberCount)
   })

因此,我只需要实时更新“管理员计数器”或“角色计数器”即可。

问候和抱歉,在这里发布我的菜鸟资料:/

回答如下:

您的问题是guildMemberAdd不检查角色更新,因为您将不得不使用guildMemberAdd

此外,您有2个guildMemberUpdate事件,每个事件应该只有1个。

guildMemberUpdate
发布评论

评论列表 (0)

  1. 暂无评论