-
Notifications
You must be signed in to change notification settings - Fork 0
/
javascript.js
89 lines (64 loc) · 2.47 KB
/
javascript.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
// Initialize user score Tracker.
let userScore = 0;
// Initialize computer score Tracker.
let computerScore = 0;
// Get all buttons.
let buttons = Array.from(document.querySelectorAll("button"));
// Add event lister to all buttons.
buttons.forEach(button => button.addEventListener("click", playRound))
let scoreDisplay = document.querySelector("#score");
let selectionDisplay = document.querySelector("#selection");
let decisionDisplay = document.querySelector("#decision");
let finalResult = document.querySelector("#final-result");
// Randomly generate 'Rock', 'Paper' or 'Scissors'.
function getComputerChoice() {
// Generate random value.
let randomValue = Math.floor(Math.random() * 100);
console.log(randomValue);
// Arbitraty classify the random value to either rock, paper or scissors thru modular arithmetic.
if (randomValue % 3 === 0) {
return "rock";
}
else if (randomValue % 3 === 1) {
return "paper"
}
else {
return "scissor"
}
}
// Check winner.
function playRound(event) {
// Get computer's selection.
let computerSelection = (getComputerChoice()).toLowerCase();
// Get the player's selection.
let playerSelection = event.target.textContent;
// Display the computer and user's selection
selectionDisplay.textContent = `Computer: ${computerSelection} You: ${playerSelection}`;
// The player won.
if ((playerSelection === "scissor" && computerSelection == "paper") ||
(playerSelection === "paper" && computerSelection == "rock") ||
(playerSelection === "rock" && computerSelection == "scissor")) {
// Print Victory Message.
decisionDisplay.textContent = `You Won! ${playerSelection} Beats ${computerSelection}`;
userScore++;
}
// The player and the computer are tied.
else if (playerSelection === computerSelection) {
// Print Tie Message.
decisionDisplay.textContent = `Tie!`;
}
// The player lost.
else {
// Print defeat message.
decisionDisplay.textContent = `You Lose! ${computerSelection} Beats ${playerSelection}`;
computerScore++;
}
// Display who got to 5 first.
if (userScore === 5 || computerScore === 5) {
finalResult.textContent = (userScore === 5) ? "You Won" : "Computer Won!";
userScore = 0;
computerScore = 0;
}
// Display current score.
scoreDisplay.textContent = `Computer: ${computerScore} User: ${userScore}`;
}