Я делаю раздор-бота, выберите свой собственный стиль приключенческой игры. Я использую одну команду для запуска, затем ожидаю сообщений, чтобы разрешить еще 3 разных ответа. Я использую операторы If с ответом, чтобы определить, что делать дальше, однако, если сообщение не совпадает с одним из ответов, ничего не происходит.
const embed = new discord.RichEmbed()
.setTitle("__**The Jungle!**__")
.setColor("#49499c")
.setDescription("a Pond\nExplore a Tree\nFollow a trail")
//.attachFiles(["./pictures/Jungle.jpg"])
const filter = response => {
return response.author.id === message.author.id;
}
message.channel.send(embed).then(() => {
message.channel.awaitMessages(filter, { max: 1, time: 30000, errors: ['time'] })
.then(collected => {
if (collected.first()=="Explore a Pond")
{
Pond.execute(message, args, client);
}
else if (collected.first()=="Explore a Tree")
{
Tree.execute(message, args, client);
}
else if (collected.first()=="Follow a Trail")
{
Trail.execute(message, args, client);
}
})
.catch(collected => {
message.channel.send('Time up');
});
});
Так что мне нужен какой-то улов, и пусть попробуют еще раз. Предпочтительно, когда они вводят неправильные данные, это позволяет им вводить другой ввод, пока он не станет правильным. Так что я полагаю, что это будет go до того, как снова появится сообщение об ожидании.
Любые идеи или помощь были бы замечательными. Спасибо.