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

Tell us what’s happening: Help me in step 100

Your code so far

WARNING

The challenge seed code and/or your solution exceeded the maximum length we can port over from the challenge.

You will need to take an additional step here so the code you wrote presents in an easy to read format.

Please copy/paste all the editor code showing in the challenge from where you just linked.

Replace these two sentences with your copied code.
Please leave the ``` line above and the ``` line below,
because they allow your code to properly format in the post.

Your browser information:

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

Challenge Information:

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

Hey there, it seems you forgot to ask your question! how can we help?

1 Like

I got stuck in the step 100.

what got you stuck? what’s your code?

function buyWeapon() {
  if (currentWeapon < weapons.length - 1) {
    if (gold >= 30) {
      gold -= 30;
      currentWeapon++;
      goldText.innerText = gold;
      let newWeapon = weapons[currentWeapon].name;
      text.innerText = "You now have a " + newWeapon + ".";
      inventory.push(newWeapon);
      text.innerText += " In your inventory you have: " + inventory;
      } else {
        text.innerText = "You do not have enough gold to buy a weapon.";
      }
  } else {
    text.innerText = "You already have the most powerful weapon!";
    
    // sellWeapon() = button2;
    
      button2.innerText = ["Sell weapon for 15 gold"][1];
      button2.onclick = ["sellWeapon"][1];
    
  }

in the outer else

Why are you using arrays here?

the element at index 1 of that array is undefined, so you are assigning undefined to innerText, and also to onclick

1 Like

oh.Thanks for the help