Repository navigation
Expand file tree
/
Copy pathindex.js
More file actions
78 lines (69 loc) · 2.08 KB
/
Copy pathindex.js
File metadata and controls
78 lines (69 loc) · 2.08 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
var list = document.querySelectorAll(".btn");
var seq = [];
var colors = ["red","green","yellow","blue"];
var count = 0;
var clicks = 0;
var level = 0;
function highlight(i){
setTimeout(()=>{
$("#"+seq[i]).addClass("animate");
$("#"+seq[i]).fadeOut(100).fadeIn(100).fadeOut(100).fadeIn(100).delay(100); //for flash effect
PlayAudio(seq[i]);
},(i)*1000+100);
setTimeout(()=>{
$("#"+seq[i]).removeClass("animate")
},(i+1)*1000);
}
function PlayAudio(evt){
var audio = new Audio("sounds/"+evt+".mp3");
audio.play();
}
function startOver(){
seq=[];
count = 0;
clicks = 0;
level = 0;
$("h1").text("Press any color to start the game");
}
function LetsPlay(evt){
//debugger
if(level == 0){
seq.push(evt.id);
count++;
clicks++;
}
else if(evt.id != seq[clicks++]){ //Game Over!!!
var audio = new Audio("sounds/"+"wrong"+".mp3");
audio.play();
$("body").addClass("game-over");
setTimeout(function(){
$("body").removeClass("game-over")
},300);
$("h1").text( "Game Over, Press Any Key to Restart");
document.addEventListener("keyup",function(){
startOver();
})
return;
}
if(clicks==count){ //Next Level
var randval = Math.floor(Math.random()*4); //Generating next color
seq.push(colors[randval]);
count++;
level++;
clicks = 0;
$("h1").text("LEVEL "+level);
for(var i=0;i<seq.length;i++)
highlight(i);
}
}
for(var i=0;i<list.length;i++){
list[i].addEventListener("click",function(){
var id = this.id;
$("#"+this.id).addClass("pressed"); //to show an effect when user clicks on a specific tile
setTimeout(function(){
$("#"+id).removeClass("pressed");
},300);
PlayAudio(this.id);
LetsPlay(this);
});
}