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

Tell us what’s happening:

Your code so far

function buyWeapon() {
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.”;
if (currentWeapon = 3) {
currentWeapon =- 3;
}
}
}

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 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36

Challenge Information:

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

Hi @Naomi11

Your if statement is in the wrong spot.

If the currentWeapon is less than three, execute the following code in the buyWeapon function.

Also, your code is assigning currentWeapon a value of 3, rather then checking if it is less than 3.

Spotted some funky quotes which may cause the tests to fail.

Happy coding

1 Like