我正在尝试创建一个“coinflip”命令。一切都按预期进行,但一件简单的事情。
我希望它写“Flipping coin...”,三秒钟后用结果编辑消息。
我设置的。但是每次它尝试执行它编辑消息的代码时,它都会给我这个错误:
"DiscordAPIError: Cannot edit a message authored by another user".
所有相关代码:
message.channel.send("Flipping coin...").then(
setTimeout(() => {
message.edit(`Heads! You won ${amountOfChange} GP! [Total balance: ${data[msgSenderID].bal}]`);
}, 2000)
);
答案 0 :(得分:1)
错误不言自明,您正在尝试编辑运行该命令的用户的消息。
TextChannel#send
返回需要作为参数传递给箭头函数的 Message
。
param => expression
message.channel.send('Flipping coin...').then(coinFlipMessage => {
setTimeout(() => {
coinFlipMessage.edit(`Heads! You won ${amountOfChange} GP! [Total balance: ${data[msgSenderID].bal}]`)
}, 3000)
})