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

Please what am i to do here?

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 121

monsterHealth -= weapons[currentWeapon].power * 1 + 0;

The Math object in JavaScript contains static properties and methods for mathematical constants and functions. One of those is Math.random(), which generates a random number from 0 (inclusive) to 1 (exclusive). Another is Math.floor(), which rounds a given number down to the nearest integer.

Using these, you can generate a random number within a range. For example, this generates a random number between 1 and 5: Math.floor(Math.random() * 5) + 1;.

Following this pattern, use the addition operator (+) to add a random number between 1 and the value of xp to your monsterHealth -= weapons[currentWeapon].power.

multiplying by 1 and adding 0 doesn’t change the values at all, you can remove them and the code is the same. You need to make some bigger changes here

I’ve tried some big changes, but i still seem stuck, please.

what’s your new code now?

monsterHealth -= Math.floor(weapons[currentWeapon].power() * 1) + 0;

you are still only multiplying by 1 and adding 0. What values are you asked to use in the instructions?

1 and the value of “xp”

Dear ilenia, are you still with me please?

you are not using xp there tho

i thought it said the value of xp which i think is 0?

Hi @Physayo

The instructions asked you to add the random number to the following code:

monsterHealth -= weapons[currentWeapon].power;

The last code you posted:

does not have the power of the weapon, and it is not using the random number generator.

It is not doing anything to the weapon power.

You have * 1, this needs to be * xp which is the experience points variable.

You have + 0, this needs to be + 1, this will generate random numbers between 1 and xp, when you code the Math.random() method.

Happy coding

1 Like

monsterHealth -= weapons[currentWeapon].power + Math.floor(Math.random() * xp) + 1;

1 Like

hey @oakth

It is great that you solved the challenge, but instead of posting your full working solution, it is best to stay focused on answering the original poster’s question(s) and help guide them with hints and suggestions to solve their own issues with the challenge.

We are trying to cut back on the number of spoiler solutions found on the forum and instead focus on helping other campers with their questions and definitely not posting full working solutions.

1 Like

I think the big hint is this :

  • use the addition operator (+ ) to add a random number.
  • between 1 and the value of xp .
  • this generates a random number
  • between 1 and 5
    -Math.floor(Math.random() * 5) + 1; => so by replace 5 to xp and we got
  • Math.floor(Math.random() * xp) + 1
  • And then we use the addition operator (+ ) to add a random number.

Hi there,
Please I am having issue with this step, can you help me out?

please open your own topic

If you have a question about a specific challenge as it relates to your written code for that challenge and need some help, click the Ask for Help button located on the challenge (it looks like a question mark). This button only appears if you have tried to submit an answer at least three times.

The Ask for Help button will create a new topic with all code you have written and include a link to the challenge also. You will still be able to ask any questions in the post before submitting it to the forum.

Thank you.