-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathindex.html
84 lines (71 loc) · 3.81 KB
/
index.html
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
<html>
<head>
<title>Flappy Bird</title>
<script type="text/javascript" src="JS/Flappy.js"></script>
<script type="text/javascript" src="JS/Cano.js"></script>
</head>
<body>
<!--Janela aonde o jogo ocorre-->
<canvas width="640" height="480" id="joao">
Seu navegador é chato
</canvas>
<script type="application/javascript">
//Pega o a janela aonde o jogo vai ocorrer
let canvas = document.getElementById("joao");
let context = canvas.getContext('2d');
let larguraCanvas = canvas.offsetWidth;
let alturaCanvas = canvas.offsetHeight;
// CRIA OS CANOS QUE APARECERAM
function gerarCano(vetCanos, x, alturaCima) {
const distanciaEntreCanos = 125;
// cria cano de cima
vetCanos.push(new Cano("Imagens/cano para baixo.png", x, 0, 75, alturaCima, 85));
//cria cano de baixo
vetCanos.push(new Cano("Imagens/cano para cima.png", x, alturaCima + distanciaEntreCanos, 75, alturaCanvas - (alturaCima + distanciaEntreCanos), 85));
}
let player = new Flappy(25, alturaCanvas / 2, 25, 25, 200);
let canos = [];
//for que gera todos os canos utilizados
for (let i = 0; i < 5; i++)
gerarCano(canos, 500 + i * 150, Math.random() * (alturaCanvas / 2) + 25);
let tempoAntigo = Date.now();
setInterval(function() {
//define a cor do fundo
context.fillStyle = "grey";
// Desenha o fundo
context.fillRect(0, 0, larguraCanvas, alturaCanvas);
if (player.vivo) {
let tempoAtual = Date.now();
let deltaTime = (tempoAtual - tempoAntigo) / 1000;
tempoAntigo = tempoAtual;
for (let i = 0; i < canos.length; i += 2) {
canos[i].update(deltaTime);
canos[i + 1].update(deltaTime);
//Verifica se os canos sairam da tela e remove eles
if (canos[i].x + canos[i].largura <= 0) {
let ultimoCanoCima = canos[canos.length - 1], ultimoCanoBaixo = canos[canos.length - 2];
canos.splice(i, 2);
gerarCano(canos, ultimoCanoCima.x + 150, Math.random() * (alturaCanvas / 2) + 25);
i -= 2;
}
else if (player.colidiuCom(canos[i]) || player.colidiuCom(canos[i + 1]))
player.vivo = false;
}
//faz o boneco descer
player.update(deltaTime);
for (let i = 0; i < canos.length; i++)
canos[i].draw(context);
player.draw(context);
}
// se a função player.vivo for false ela imprime que ele morreu
else {
context.fillStyle = "white";
context.fillText("VOCE MORREU", larguraCanvas / 2 - 25, alturaCanvas / 2 - 25);
}
}, 1 / 30);
window.onkeypress = function(tecla) {
player.handleInput(tecla.key);
};
</script>
</body>
</html>