我正在撰寫一個實用程式機器人,我希望它<server_name> Utilities在我運行我的機器人時自動將它在每臺服務器上的昵稱更改為自動。
這是我準備好的事件:
bot.on('ready',async () => {
console.log('|| MaRa Utilities, Console')
console.log(` Logged in as "#${bot.user.discriminator}"`)
console.log(`\nBot "#${bot.user.discriminator}" has been loaded successfully...\n`)
console.log(`The Prefix Is: ${PREFIX}`)
console.log(`Bot "#${bot.user.discriminator}" Is in ${bot.guilds.cache.size} guild/s\n`)
console.log(`|| Logs/Errors:`)
db.get("Prefix").then(value => {if(value != PREFIX){
console.log('A Dev has changed the "PREFIX" on startup.')
db.set("Prefix", PREFIX);
}})
db.get("BotAuthorID").then(value => {if(value != BotAuthorID){
console.log('A Dev has changed the "BotAuthorID" on startup.')
db.set("BotAuthorID", BotAuthorID);
}})
db.get("TOKEN").then(value => {if(value != TOKEN){
console.log('A Dev has changed the "TOKEN" on startup.')
db.set("TOKEN", TOKEN);
}})
bot.user.setActivity(`DM For Help!`)
bot.user.setUsername(bot.Message.guild.name ' Utilities')
})
uj5u.com熱心網友回復:
遍歷GuildManager#cache。檢查客戶端是否有權更改自己的昵稱(字串常量“CHANGE_NICKNAME”),如果確實有權限,則使用Member#setNickname()
bot.on('ready', async() => {
bot.guilds.cache.forEach(guild => {
const botMember = guild.me;
if (botMember.permissions.has('CHANGE_NICKNAME')) {
botMember
.setNickname(`${guild.name} Utilities`)
.catch(err => /* Handle Error */);
}
});
});
uj5u.com熱心網友回復:
是的,你只需要使用bot.guilds.cache.get("GUILD_ID").name而不是message.guild.name!檔案
要在服務器上更改您的機器人昵稱,請使用:
bot.guilds.cache.get("GUILD_ID").me.setNickname(`${bot.guilds.cache.get("GUILD_ID").name} Utilities`)
所以完整的代碼將是:
bot.guilds.cache.forEach(guild => {
bot.guilds.cache.get(guild.id).me.setNickname(`${guild.name} Utilities`)
})
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/350395.html
標籤:javascript 节点.js 不和谐 不和谐.js
