Discord.js-awaitMessages中的条件

时间:2020-05-18 00:05:45

标签: discord.js

我正在为我的不和谐机器人创建一个awaitMessages,以便在我的机器人上的虚拟商店中添加商品。在此awaitMessages中,我想指出文章的价格。所以答案必须是数字,但是问题是当我写的不是数字的答案时,awaitMessages被取消。我想当我发送的不是数字的消息时,它发送一条错误消息,但awaitMessages并没有取消,我再次写了一个响应。

const filter = m => m.author.id === message.author.id;

message.channel.send('Price').then(msg => {
                message.channel.awaitMessages(filter, { 
                    max: 1, 
                    time: 10000, 
                    errors: ['time'] })

                    .then(collected => {

                     if(isNaN(collected)) return message.channel.send('not a number')})

                    .catch(collected => msg.delete());
            });

1 个答案:

答案 0 :(得分:0)

您需要为过滤器添加条件。

#include <stdio.h>
#include <string.h>

int main(){
    int count=0;
    int n,bit;
    char binary[50];
    printf("Enter a binary: \n");
    scanf("%s",binary);
    n=strlen(binary);
    for(int i=0;i<n;i++){
        bit=binary[i]-'0';
        if (bit==1){
            count=count+1;
        }

    }
  printf("Number of 1's: %d\n",count);

return 0;
}

这不会发送错误消息,但是不会触发您的收集器,因此在发送一个号码或时间用完之前不会停止尝试收集一个号码。