I'm new to js and try setting up a twitch bot. All works fine for basic commands and connexion to chat.
But I would like to have the bot check if a user already said salut|bonjour|hey|bonsoir before saying banane.
If false, the bot would tell him Hey, tu dis pas bonjour toi?!! , if true she'd say on m'a appelée?
With this pc of code I wrote, even if I already said one of salut|bonjour|hey|bonsoir, bot only says Hey, tu dis pas bonjour toi?!! and doesn't go to on m'a appelée?
What am I missing? Thanks
var usersayhello = {};
client.on('message', (channel, user, message, self) => {
if(self) return;
message=message.toLowerCase();
message=' '+message+' ';
if(/[ ]+anita[ \?]+/.test(message)){
if(/(salut|bonjour|hey|bonsoir)([ ]+)anita/.test(message)){
usersayhello = true;
if(user.username == 'blablabla123'){
var responsebonjour = [
`Salut @${user.username}! Planquez-vous! Ca va encore troller sec`
`Hey @${user.username}, tu voles aujourd'hui?`
];
}
else{
var responsebonjour = [
`Salut @${user.username}, je suis contente de te voir, tu vas bien?`,
`Hey @${user.username}, t'es venu pour moi j'espère`,
`Hello @${user.username}, comment vas-tu?`,
`Tu ne peux vraiment pas te passer de moi, toi! ^^`
];
}
client.say(channel,responsebonjour[Math.floor(Math.random()*responsebonjour.length)]);
}
if(message == ` banane ` && checkifusersayhello (channel,user,usersayhello)) {
client.say(channel, `on m'a appelée?`);
}
function checkifusersayhello(channel,user,usersayhello) {
if (!usersayhello[user.username]){
client.say(channel, `Hey, tu dis pas bonjour toi?!!`);
return false;
}
return true;
}