-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscripts.js
More file actions
105 lines (92 loc) · 2.57 KB
/
Copy pathscripts.js
File metadata and controls
105 lines (92 loc) · 2.57 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
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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
function getComputerChoice() {
let randomInt = Math.ceil(Math.random() * 3);
switch (randomInt) {
case 1:
return 'Rock';
break;
case 2:
return 'Paper';
break;
case 3:
return 'Scissors';
break;
}
}
function playRound(playerSelection, computerSelection) {
if (playerSelection === computerSelection) {
return 'It\'s a Draw. Nobody Wins';
} else if (playerSelection === 'Rock') {
if (computerSelection === 'Scissors') {
return 'You Win! Rock beats Scissors'
} else {
return 'You Lose! Paper beats Rock'
}
} else if (playerSelection === 'Paper') {
if (computerSelection === 'Rock') {
return 'You Win! Paper beats Rock'
} else {
return 'You Lose! Scissors beat Paper'
}
} else if (playerSelection === 'Scissors') {
if (computerSelection === 'Paper') {
return 'You Win! Scissors beat Paper'
} else {
return 'You Lose! Rock beats Scissors'
}
}
}
function getPlayerChoice(event) {
let playerChoice = event.target.textContent;
let outcome = playRound(playerChoice, getComputerChoice());
output.textContent = outcome;
}
function setScore(computerScore, playerScore) {
scoreBoard.textContent = `${computerScore} : ${playerScore}`;
}
function getScore(target) {
let playerScore = parseInt(scoreBoard.textContent.split(':')[1]);
let computerScore = parseInt(scoreBoard.textContent.split(':')[0]);
switch (target) {
case 0:
return playerScore;
break;
case 1:
return computerScore;
break;
default:
return 'error from getScore';
break;
}
}
function game() {
if (resetCondition) {
endResult.textContent = '';
setScore(0, 0);
resetCondition = false;
}
let computerScore = getScore(1);
let playerScore = getScore(0);
if (output.textContent.includes('You Win!')) {
playerScore++;
} else if (output.textContent.includes('You Lose!')) {
computerScore++;
}
setScore(computerScore, playerScore);
if (playerScore === 5 || computerScore === 5) {
if (playerScore > computerScore) {
endResult.textContent = 'The player has won the game!';
} else if (playerScore < computerScore) {
endResult.textContent = 'The player has lost the game.';
} else {
endResult.textContent = 'It\'s a draw.';
}
resetCondition = true;
}
}
const output = document.querySelector('.output');
const buttons = document.querySelectorAll('button');
const endResult = document.querySelector('.endresult');
const scoreBoard = document.querySelector('.scores');
let resetCondition = false;
buttons.forEach(element => element.addEventListener('click', getPlayerChoice));
buttons.forEach(element => element.addEventListener('click', game));