我有一个密码。此代码用“ y”替换成员名称中的字母“ x”。但它会发送我为每个用户设置的消息。也就是说,如果有15个用户,它将发送消息“我更改了x人的名字” 15次。我想使这条消息成为一条消息,然后让机器人根据用户来编辑消息。
像这样;
“我更改了member
人的名字”,然后“我更改了member2
人的名字。(已编辑)”?
exports.run =async (bot, message, args) => {
let tokaci = message.guild.members.filter(membersx => {
return membersx.roles.some(r=>["639572199409319994"].includes(r.id));
});
let tokacis = message.guild.members.filter(membersx => {
return membersx.roles.some(r=>["tokuchi"].includes(r.name));
}).size;
tokaci.forEach(member => {
if(!member.displayName.includes(`✯`)) return message.channel.send(`<:reds:669706016375701574> **Belirtilen role sahip kişilerin isminde değiştirilmesi gereken harfi bulamadım.**`)
if(member.manageable) {
let newNickName = member.displayName.replace(`✯`, '⛥');
member.setNickname(newNickName)
.catch(console.error)
message.channel.send(`***<:onays:669706016354729984> Belirtilen role sahip olan kişilerin ismindeki harfi değiştiriyorum. ${member}***`)
}
});
}
答案 0 :(得分:0)
您可以使用其他功能来编辑消息或使用message.edit
。方法channel.send()
返回带有已发送消息的Promise。
exports.run =async (bot, message, args) => {
let tokaci = message.guild.members.filter(membersx => {
return membersx.roles.some(r=>["639572199409319994"].includes(r.id));
});
let tokacis = message.guild.members.filter(membersx => {
return membersx.roles.some(r=>["tokuchi"].includes(r.name));
}).size;
message.channel.send('Start edit nicknemes').then(msg => {
tokaci.forEach(member => {
if(!member.displayName.includes(`✯`)) return message.channel.send(`<:reds:669706016375701574> **Belirtilen role sahip kişilerin isminde değiştirilmesi gereken harfi bulamadım.**`)
if(member.manageable) {
let newNickName = member.displayName.replace(`✯`, '⛥');
member.setNickname(newNickName)
.catch(console.error)
let text = `***<:onays:669706016354729984> Belirtilen role sahip olan kişilerin ismindeki harfi değiştiriyorum. ${member}***`
editMsg(msg,text)
}
});
})
}
function editMsg(message, text) {
message.edit(text)
}
V2
exports.run =async (bot, message, args) => {
let tokaci = message.guild.members.filter(membersx => {
return membersx.roles.some(r=>["639572199409319994"].includes(r.id));
});
let tokacis = message.guild.members.filter(membersx => {
return membersx.roles.some(r=>["tokuchi"].includes(r.name));
}).size;
message.channel.send('Start edit nicknemes').then(msg => {
tokaci.forEach(member => {
if(!member.displayName.includes(`✯`)) {
editMsg(msg,`***<:onays:669706016354729984> Belirtilen role sahip olan kişilerin ismindeki harfi değiştiriyorum. ${member}***`)
}
if(member.manageable) {
let newNickName = member.displayName.replace(`✯`, '⛥');
member.setNickname(newNickName)
.catch(console.error)
let text = `***<:onays:669706016354729984> Belirtilen role sahip olan kişilerin ismindeki harfi değiştiriyorum. ${member}***`
editMsg(msg,text)
}
});
})
}
function editMsg(message, text) {
message.edit(text)
}