await.Messages 不起作用。它跳过其中的所有命令
await.Messages doesn't work. It skip all comands in it
if(!db['mention'].length)
{
message.channel.send("Komenda wymaga wzmianki gracza");
}
else if(db['mention'].includes("@"))
{
db['v1'] = message.mentions.members.first().voice.channelId;
if(db[`value`]<=10 && db[`value`]>=1)
{
ping()
}
else
{
message.channel.send(`Wpisz ilość od 1 do 10`).then(() => {
message.channel.awaitMessages({
filter: (m) => m.author.id === message.author.id,
max: 1,
time: 6000,
errors: ['time'],
}).then(message => {
db['value'] = message.first();
if (db['value']<=10 && db['value']>=1)
{
ping()
}
else
{
message.channel.send(`Błędna wartość`)
}
})
.catch(collected => {
message.channel.send('Timeout')
})
})
}
}
代码中的这部分被跳过
.then(message => {
db['value'] = message.first();
if (db['value']<=10 && db['value']>=1)
{
ping()
}
并且机器人只发送超时。我记得这是一个月前的工作。我一直在互联网上寻找解决方案,但一无所获。
有人知道我做错了什么吗?
不确定它将如何与未显示的代码(ping() 函数和任何数据库代码)交互,但其余的应该可以工作
const filter = (m) => m.author.id === message.author.id
message.channel.send(`Wpisz ilość od 1 do 10`).then(() => {
message.channel.awaitMessages({
filter,
max: 1,
time: 6000,
errors: ['time'],
}).catch(() => {
throw new Error('Timed Out')
}).then(message => {
db['value'] = message.first();
setTimeout(() => {
message.delete()
}, 10000)
if (db['value'] <= 10 && db['value'] >= 1) {
ping()
} else {
message.channel.send(`Błędna wartość`)
}
}).catch(error => {
switch (error.message) {
case 'Timed Out':
message.channel.send('Timeout');
break
})
})
if(!db['mention'].length)
{
message.channel.send("Komenda wymaga wzmianki gracza");
}
else if(db['mention'].includes("@"))
{
db['v1'] = message.mentions.members.first().voice.channelId;
if(db[`value`]<=10 && db[`value`]>=1)
{
ping()
}
else
{
message.channel.send(`Wpisz ilość od 1 do 10`).then(() => {
message.channel.awaitMessages({
filter: (m) => m.author.id === message.author.id,
max: 1,
time: 6000,
errors: ['time'],
}).then(message => {
db['value'] = message.first();
if (db['value']<=10 && db['value']>=1)
{
ping()
}
else
{
message.channel.send(`Błędna wartość`)
}
})
.catch(collected => {
message.channel.send('Timeout')
})
})
}
}
代码中的这部分被跳过
.then(message => {
db['value'] = message.first();
if (db['value']<=10 && db['value']>=1)
{
ping()
}
并且机器人只发送超时。我记得这是一个月前的工作。我一直在互联网上寻找解决方案,但一无所获。
有人知道我做错了什么吗?
不确定它将如何与未显示的代码(ping() 函数和任何数据库代码)交互,但其余的应该可以工作
const filter = (m) => m.author.id === message.author.id
message.channel.send(`Wpisz ilość od 1 do 10`).then(() => {
message.channel.awaitMessages({
filter,
max: 1,
time: 6000,
errors: ['time'],
}).catch(() => {
throw new Error('Timed Out')
}).then(message => {
db['value'] = message.first();
setTimeout(() => {
message.delete()
}, 10000)
if (db['value'] <= 10 && db['value'] >= 1) {
ping()
} else {
message.channel.send(`Błędna wartość`)
}
}).catch(error => {
switch (error.message) {
case 'Timed Out':
message.channel.send('Timeout');
break
})
})