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

Tell us what’s happening:

why am i getting the following feedback on my code;You should add the return value of inventory.pop() to the " Your " string.

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[currentWeaponIndex].name + ".";
  health -= getMonsterAttackValue(monsters[fighting].level);
  if (isMonsterHit()) {
    monsterHealth -= weapons[currentWeaponIndex].power + Math.floor(Math.random() * xp) + 1;    
  } else {
    text.innerText += " You miss.";
  }
  healthText.innerText = health;
  monsterHealthText.innerText = monsterHealth;
  if (health <= 0) {
    lose();
  } else if (monsterHealth <= 0) {
    if (fighting === 2) {
      winGame();
    } else {
      defeatMonster();
    }
  }
  if (Math.random() <= .1) {
const brokenWeapon = inventory.pop();
text.innerText += " Your " + brokenWeapon + " breaks.";
  }
}

// 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/126.0.0.0 Safari/537.36

Challenge Information:

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

Instead of two lines, I believe they want you to combine them so that you only have one line which prints the whole string at once.

1 Like

Put the value of the const variable you created directly into the sum in innerText in the correct place. Delete the const variable you created. Probably not wrong what you’ve done but no need to create a variable for it to pass.