-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathscript.js
71 lines (64 loc) · 2.09 KB
/
script.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
score=0;
var cross=true;
document.onkeydown = function (e) {
// console.log("Key code is: ", e.keyCode)
if(e.keyCode==38)
{
dino = document.querySelector('.dino');
dino.classList.add('animateDino');
setTimeout(() => {
dino.classList.remove('animateDino')
}, 700);
}
if(e.keyCode==39)
{
dino = document.querySelector('.dino');
dinoX=parseInt(window.getComputedStyle(dino,null).getPropertyValue('left'));
dino.style.left=dinoX+112+"px";
}
if(e.keyCode==37)
{
dino = document.querySelector('.dino');
dinoX=parseInt(window.getComputedStyle(dino,null).getPropertyValue('left'));
dino.style.left=(dinoX-112)+"px";
}
}
setInterval(() => {
dino=document.querySelector('.dino');
gameOver=document.querySelector('.gameOver');
obstacle=document.querySelector('.obstacle');
dx=parseInt(window.getComputedStyle(dino,null).getPropertyValue('left'));
dy=parseInt(window.getComputedStyle(dino,null).getPropertyValue('top'));
ox=parseInt(window.getComputedStyle(obstacle,null).getPropertyValue('left'));
oy=parseInt(window.getComputedStyle(obstacle,null).getPropertyValue('top'));
offsetX=Math.abs(dx-ox);
offsetY=Math.abs(dy-oy);
if(offsetX<73&& offsetY<52)
{
gameOver.innerHTML = "Game Over - Reload to Play Again"
obstacle.classList.remove('obstacleAni')
gameOver.style.visibility='visible';
obstacle.classList.remove('obstacleAni');
}
else if(offsetX<145 &&cross)
{
score+=1;
updateScore(score);
cross=false;
setTimeout(()=>
{
cross=true;
},1000)
setTimeout(()=>
{
aniDur = parseFloat(window.getComputedStyle(obstacle, null).getPropertyValue('animation-duration'));
newDur=aniDur-0.1;
obstacle.style.animationDuration= newDur +'s';
console.log('New animation duration: ', newDur)
},500)
}
}, 10);
function updateScore(score)
{
scoreCont.innerHTML="Your Score:"+score;
}