-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscript.js
More file actions
54 lines (47 loc) · 1.64 KB
/
script.js
File metadata and controls
54 lines (47 loc) · 1.64 KB
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
const choices = ["rock", "paper", "scissors"];
// DOM elements
const playerDisplay = document.getElementById("playerDisplay");
const computerDisplay = document.getElementById("computerDisplay");
const resultDisplay = document.getElementById("resultDisplay");
const playerScoreDisplay = document.getElementById("playerScoreDisplay");
const computerScoreDisplay = document.getElementById("computerScoreDisplay");
let playerScore = 0;
let computerScore = 0;
function playGame(playerChoice) {
const computerChoice = choices[Math.floor(Math.random() * 3)];
// Determine result
let result = "";
if (playerChoice === computerChoice) {
result = "IT'S A TIE!";
} else {
switch (playerChoice) {
case "rock":
result = computerChoice === "scissors" ? "YOU WIN!" : "YOU LOSE!";
break;
case "paper":
result = computerChoice === "rock" ? "YOU WIN!" : "YOU LOSE!";
break;
case "scissors":
result = computerChoice === "paper" ? "YOU WIN!" : "YOU LOSE!";
break;
}
}
// Update UI with choices
playerDisplay.textContent = `PLAYER: ${playerChoice}`;
computerDisplay.textContent = `PLAYER: ${computerChoice}`;
resultDisplay.textContent = result;
resultDisplay.classList.remove("greenText", "redText");
// Apply styles and update scores for win/lose
switch (result) {
case "YOU WIN!":
resultDisplay.classList.add("greenText");
playerScore++;
playerScoreDisplay.textContent = playerScore;
break;
case "YOU LOSE!":
resultDisplay.classList.add("redText");
computerScore++;
computerScoreDisplay.textContent = computerScore;
break;
}
}