Repository navigation
Expand file tree
/
Copy pathcolorGame.js
More file actions
51 lines (47 loc) · 1.42 KB
/
Copy pathcolorGame.js
File metadata and controls
51 lines (47 loc) · 1.42 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
// DOM Variables
const squares = document.querySelectorAll('.square');
const messageDisplay = document.getElementById('message');
const colorDisplay = document.getElementById('colorDisplay');
const h1 = document.querySelector('h1');
const resetButton = document.getElementById('reset');
const easyMode = document.querySelector('.mode');
const hardMode = document.getElementsByClassName('mode')[1];
// Initialization
var colors = generateRandomColors(6);
var pickedColor = pickColor();
resetGUI();
initialize(squares.length);
// Objects and Event Listners
resetButton.addEventListener('click', () =>{
// Checks mode and generates new colors
if(easyMode.classList.contains('selected')){
colors = generateRandomColors(3);
initialize(3);
}else{
colors = generateRandomColors(6);
initialize(6);
}
resetGUI()
});
easyMode.addEventListener('click', () =>{
// clears all squares
for (let i = 3; i < colors.length; i++){
squares[i].classList.remove('square');
}
colors = generateRandomColors(3);
initialize(3);
resetGUI();
hardMode.classList.remove('selected');
easyMode.classList.add('selected');
});
hardMode.addEventListener('click', () =>{
colors = generateRandomColors(6);
initialize(6);
resetGUI();
easyMode.classList.remove('selected');
hardMode.classList.add('selected');
// Restores squares from 3 to 6
for (let i = 3; i < colors.length; i++){
squares[i].classList.add('square');
}
});