Как заставить бота отвечать только на одно "событие", которое присутствует в предложении, а не на два - PullRequest
1 голос
/ 01 августа 2020

Это сложно, но посмотрите пример:

Я объявил это событие:

client.on('message', async message => { 
if (message.content.toLowerCase().includes("megumin"))
 {
    message.channel.send("What's up?");
}
});

Но я тоже объявил это событие:

client.on('message', async message => { 
if (message.content.toLowerCase().includes("thanks megumin"))
 {
    message.channel.send("We are welcome UwU");
}
});

Когда я поставил в чате: «спасибо, мегумин», бот делает два события! Я хочу, чтобы она ответила только «спасибо, мегумин», а не «мегумин» в предложении ... Кто-нибудь может мне помочь, пожалуйста?

Спасибо @Levi_OP!

1 Ответ

1 голос
/ 01 августа 2020

Вместо использования двух client.on вам следует объединить их в один.

client.on('message', async message => { 
  if (message.content.toLowerCase().includes("thanks megumin")) {
    message.channel.send("We are welcome UwU");
  } else if (message.content.toLowerCase().includes("megumin")) {
      message.channel.send("What's up?");
  }
});
...