Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Problema no código.

Adcionei um contador no código para acresentar pontuação, porém ele não roda corretamente. Na "}" do if no final do código consta essa mensagem ncaught SyntaxError: Unexpected token '{'.

<canvas width="600" height="400"></canvas>
<p id="pontos"> </p> 


<script> 

    var tela = document.querySelector("canvas");
    var pincel = tela.getContext("2d");

    pincel.fillStyle = "white"
    pincel.fillRect(0, 0, 600, 400);

    var raio = 10
    var posicaoAleatorioX;
    var posicaoAleatorioY;
    var pontos = 0;

    function desenhaCirculo(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);
    }


    function desenhaAlvo(x, y){

        desenhaCirculo(x, y, raio+20, "red")
        desenhaCirculo(x, y, raio+10, "white")
        desenhaCirculo(x, y, raio, "red")

    }

    function sorteiaPosicao(maximo) {

        return Math.floor(Math.random() * maximo);

    }

    function atualizaTela() {

    limpaTela();
    posicaoAleatorioX = sorteiaPosicao(600);
    posicaoAleatorioY =sorteiaPosicao(400);
    desenhaAlvo(posicaoAleatorioX, posicaoAleatorioY);

    }
    setInterval(atualizaTela, 1000);


    function dispara(evento) {

        var x = evento.pageX - tela.offsetleft;
        var y = evento.pageY - tela.offsetTop

        If ((x > posicaoAleatorioX - raio) 
            && (x < posicaoAleatorioX + raio)
            && (y > posicaoAleatorioY - raio) 
            && (y < posicaoAleatorioY + raio)) {
            pontos++
            alert("acertou");
            areaQueExibePontos.textContent = "Pontuação: " + pontos;
        }

    }

    tela.onclick = dispara;




</script>
1 resposta
solução!

Respondi no outro tópico que vc criou, mas por via das dúvidas, o erro está na escrita do if, vc colocou letra maiúscula!