Friday, May 17, 2024
 Popular · Latest · Hot · Upcoming
193
rated 0 times [  199] [ 6]  / answers: 1 / hits: 129460  / 11 Years ago, wed, july 31, 2013, 12:00:00

I'm working on making my first game (Rock Paper Sissors) and I ran into an issue where when the userChoice is scissors and the computerChoice is rock, the program cannot return the winner as rock. I can get the program to give me the winner for any other combination.



I have my code here:



var userChoice = prompt(Do you choose rock, paper or scissors?);
var computerChoice = Math.random();
if (computerChoice < 0.34) {
computerChoice = rock;
} else if(computerChoice <= 0.67) {
computerChoice = paper;
} else {
computerChoice = scissors;
}

var compare = function(choice1, choice2) {
if(choice1 === choice2) {
return The result is a tie!;
}
if(choice1 === rock) {
if(choice2 === scissors) {
return rock wins;
} else {
return paper wins;
}
}
if(choice1 === paper) {
if(choice2 === rock) {
return paper wins;
} else {
if(choice2 === scissors) {
return scissors wins;
}
}
if(choice1 === scissors) {
if(choice2 === rock) {
return rock wins;
} else {
if(choice2 === paper) {
return scissors wins;
}
}
}
}
};
console.log(User Choice: + userChoice);
console.log(Computer Choice: + computerChoice);
compare(userChoice, computerChoice);

More From » javascript

 Answers
63

You were unable to see the issue most likely due to poor indentation of your code. Properly indented the issue is clear:



if (choice1 === paper) {
if (choice2 === rock) {
return paper wins;
} else {
if (choice2 === scissors) {
return scissors wins;
}
}
if (choice1 === scissors) {
if (choice2 === rock) {
return rock wins;
} else {
if (choice2 === paper) {
return scissors wins;
}
}
}
}


Your if (choice1 === scissors) { is within if (choice1 === paper) {. The code within will never be reached.


[#76620] Tuesday, July 30, 2013, 11 Years  [reply] [flag answer]
Only authorized users can answer the question. Please sign in first, or register a free account.
natalyah

Total Points: 371
Total Questions: 90
Total Answers: 105

Location: The Bahamas
Member since Wed, Apr 12, 2023
1 Year ago
;