Learn Basic JavaScript by Building a Role Playing Game - Step 152

Tell us what’s happening:

What is to be the if condition that has to be provided

Your code so far

<!-- file: index.html -->

/* file: styles.css */

/* file: script.js */
// User Editable Region

function attack() {
  text.innerText = "The " + monsters[fighting].name + " attacks.";
  text.innerText += " You attack it with your " + weapons[currentWeapon].name + ".";
  health -= getMonsterAttackValue(monsters[fighting].level);
  if (health < 0) {
    isMonsterHit(); // Call the isMonsterHit function
  } 

  monsterHealth -= weapons[currentWeapon].power + Math.floor(Math.random() * xp) + 1;
  healthText.innerText = health;
  monsterHealthText.innerText = monsterHealth;
  if (health <= 0) {
    lose();
  } else if (monsterHealth <= 0) {
    if (fighting === 2) {
      winGame();
    } else {
      defeatMonster();
    }
  }
}

// User Editable Region

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36

Challenge Information:

Learn Basic JavaScript by Building a Role Playing Game - Step 152

the isMonsterHit function when called returns true or false so you can use it as condition. You need to call the isMonsterHit function as condition of an if statement

1 Like

if (true) {
isMonsterHit(); // Call the isMonsterHit function
}

is this correct?

no, you need to call the function in the if condition, at this time you have just true as a condition, meaning the if code will always be executed