#Problem with addEventListener

4 messages · Page 1 of 1 (latest)

keen violet
#

I am working on a Small Game where you have to click on a Burger as often as possible in 60 seconds but my Code for the addEventListener doesent work?

#
      const { ipcRenderer } = require("electron");

      document.addEventListener("DOMContentLoaded", () => {
        document.getElementById("backtogames").addEventListener("click", () => {
          ipcRenderer.send("burger-game-to-game-window");
        });
      });

      const burgerbar = document.getElementById("burger-bar");
      const burger = document.getElementById("burger");
      var time = 60;
      var burgercounter = 0;
      var burgerbarsize = 560;

      function startClock() {
        for (let i = 60; i <= 60; i--) {
          setTimeout(updateClock, 500);
        }
      }
      function updateClock() {
        time -= 1;
        document.getElementById("time").innerHTML = time;
      }

      burger.addEventListener("click", (event) => {
        console.log("1");
        startClock();
        if (time === 0) {
          console.log("time over");
        } else {
          if (burgerbarsize < 40) {
            burgerbar.style.visibility = "hidden";
            changeCounter();
            resetBurgerBar();
          } else {
            console.log("2");
            burgerbarsize -= 10;
            burgerbar.style.width = burgerbarsize + "px";
          }
        }
      });

      function changeCounter() {
        burgercounter += 1;
        document.getElementById("burger-counter").innerHTML = burgercounter;
      }

      function resetBurgerBar() {
        burgerbarsize = 560;
        burgerbar.style.width = burgerbarsize + "px";
        burgerbar.style.visibility = "visible";
      }
    </script>
#

it logs 1 but not two idk if i just over used if statements or if my code overall just is a little bit weird... i would appreciate help :)

versed grotto
#

Check your timer logic - all your 60 timeouts fire at once, not one after another.