For some reason, the addEventListener is working both when it should work, and when it shouldn't work. I made a game where if the player hasn't lost, they play, but only when they lose, they can click on the screen to retry. In the browser, when the game is opened, or the browser is refreshed, everything works fine. However, after the first loss, any clicks cause the game to restart from the beginning. What am I doing wrong?
function main() {
setTimeout(function everyFrame() {
clearCanvas();
//Run if the game isn't over
if (!isGameOver()) {
game_over = false;
//Code for the game screen
}
//Run if the game is over
else if (isGameOver()) {
game_over = true;
//Code for the lose screen
//Reset the game when the user clicks on the lose screen
if (game_over) {
game_over = false;
myCanvas.addEventListener("click", restartGame);
}
}
main();
changingDir = false;
}, 100);
}