How to make my bot to not respond to itself

88 Views Asked by At

I made a bot that says a question when a certain chat message is recognized and thinks whether the following another chat message is the correct answer or not. But the bot thinks that the question he said is the incorrect answer and says it's not correct.

//setup & createbot

const mineflayer = require('mineflayer')

var settings = {
    username: "Bot",
    host: "localhost",
    port: 64390,
};

const bot = mineflayer.createBot(settings);

//question
  bot.on('chat', function(username, message) {
    if (message==='problem'){
        bot.chat('What is the color of apple?')
        let state = true
        state=true
        while (state){
            if (message==='red or green'){
                 bot.chat('correct.')
                state = false
            }else{
                bot.chat('incorrect.')
                state=false
                               
                                    
            
            }
        }
    }
        
});

bot.on('kicked', console.log)
bot.on('error', console.log)
1

There are 1 best solutions below

0
On

Add

if (username === bot.username) return

To the top of the function