首页 > 解决方案 > How would i check if a user has changed their nickname?

问题描述

i want to be able to change someones nickname to something every time they change it instantly. Is this possible with discord js or should i stick with the method of checking every time they send a message. Preferably i dont want the bot to be constantly checking

thanks in advance

edit: here is what i have now

bot.on('message', message => {
  if (message.author.id === config.____) {
    message.member.setNickname("_____")
  }
}

标签: javascriptdiscorddiscord.js

解决方案


You can use state guildMemberUpdate. Check if user have has nickname and nickname changet to 'somethink', then setNickname.

bot.on('guildMemberUpdate', (oldMember, newMember) => {
    if(newMember.nickname && oldMember.nickname !== newMember.nickname) {
        if(newMember.nickname === 'somethink') {
            newMember.setNickname('NickName')
        }
    }
 });

推荐阅读