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

Tell us what’s happening:

Step 155 Java Scrips

Use the += operator to add " Your breaks.", with a space in front of Your, to the end of text.innerText. Replace with the last item in the inventory array using inventory.pop(), which will remove the last item in the array AND return it so it appears in your string.

Your code so far

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

/* 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) {
     text.innerText += " Your " + inventory.pop() + " breaks. "
}

// User Editable Region
/* file: styles.css */

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:133.0) Gecko/20100101 Firefox/133.0

Challenge Information:

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

Hi there and welcome to our community!

Your code is almost correct but you’ve added an unnecessary space to the end of your string.

Please can you sort out for me?

Just remove the space at the end of your string (after the word ‘breaks’) and your code should pass.

Is this correct? text.innerText += " Your " + inventory.pop() + " breaks";

You might be missing a full stop (period) now. Check that the string matches exactly with the requirements in the instructions.

I have checked several times

You should remove only the space which is directly before the closing quotation mark at the end of the string here:

… then your code should pass. If it doesn’t, you may need to hit the Reset button and paste the code in again.

reset will restart everything i have done so far or…?

The Reset button only resets the code for the current step.

Thank you so much. It worked :smile:

1 Like