1
resposta

Compartilhando projeto

Pessoal, boa noite!

Muito legal esse módulo!! Passando aqui só para compartilhar meu projeto e dizer que deu tudo certo:

<!DOCTYPE html>
<html lang="pt-br">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Nosso Primeiro Jogo</title>
</head>

<body>
    <canvas width="600" height="400"></canvas>
    <script>
        let tela = document.querySelector("canvas");
        let pincel = tela.getContext('2d');

        function fazCanvas() {
            pincel.fillStyle = "lightblue";
            pincel.fillRect(0, 0, 600, 400);
        }

        function desenhaAlvo(x, y, raio, cor) {
            pincel.fillStyle = cor;
            pincel.beginPath();
            pincel.arc(x, y, raio, 0, 2 * Math.PI);
            pincel.fill();
        }

        function limpaTela() {
            pincel.clearRect(0, 0, 600, 400);
            fazCanvas();
        }

        function atualizaTela() {
            eixoX = parseInt(Math.random() * 500); //Numeros aleatórios
            eixoY = parseInt(Math.random() * 300); //Numeros aleatórios
            limpaTela();
            desenhaAlvo(eixoX, eixoY, raio + 20, 'red'); // maior círculo
            desenhaAlvo(eixoX, eixoY, raio + 10, 'white'); // círculo médio
            desenhaAlvo(eixoX, eixoY, raio, 'red'); // menor circulo
        }

        function dispara(evento) {
            let x = evento.pageX - tela.offsetLeft;
            let y = evento.pageY - tela.offsetTop;

            if (x >= eixoX - raio
                && x <= eixoX + raio
                && y >= eixoY - raio
                && y <= eixoY + raio) {
                alert("Acertou!\n" + x + ',' + y);
            } else {
                alert("Errou, tente novamente\n" + x + ',' + y)
            }
        }

        let raio = 10;
        let eixoX = 300;
        let eixoY = 200;

        fazCanvas();
        setInterval(atualizaTela, 1100)

        tela.onclick = dispara;

    </script>
</body>

</html>
1 resposta

Parabéns Leonardo! Continue assim!!!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software