Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Minha solução, to um pouco encucada kkkk

Abaixo segue a solução que cheguei para mexer com a bolinha na tela... Não entendi direito porque a taxa pra esquerda não foi negativa, pra dar certo tive que fazer ao contrário! A da direita ficou negativa e eu achei que seria positiva kkkkkkk

<canvas width="600" height="400"></canvas>

<script>

    var tela = document.querySelector('canvas');
    var pincel = tela.getContext('2d');
    pincel.fillStyle = 'lightgray';
    pincel.fillRect(0, 0, 600, 400);

    var x = 20;
    var y = 20;

    //setas  (os números representam as teclas):
    var esquerda = 37;
    var cima = 38;
    var direita = 39;
    var baixo = 40;

    //incremento quando as setas forem clicadas:
    var taxa = 10;

    function desenhaCirculo(x, y, raio) {

        pincel.fillStyle = 'blue';
        pincel.beginPath();
        pincel.arc(x, y, raio, 0, 2 * Math.PI);
        pincel.fill();
    }

    function limpaTela() {

        pincel.clearRect(0, 0, 600, 400);
    }

    function move() {

        limpaTela();

        desenhaCirculo(x, y, 10);
    }

    setInterval(move, 20);

    function lerTeclado(evento) {

        evento.keyCode;

        if( evento.keyCode == esquerda) {
           taxa = 10;
           x=x-taxa;

        } else if (evento.keyCode == cima) {
            taxa = 10;
            y=y-taxa;

        } else if (evento.keyCode == direita) {
            taxa = -10;
            x=x-taxa;

        } else if (evento.keyCode == baixo) {
            taxa = -10;
            y=y-taxa;
        }


    }

   document.onkeydown = lerTeclado;    
</script>
2 respostas
solução!

Anna Clara, tudo bom? Pelo que entendi é uma questão dos sinais.

**Esquerda**
taxa = 10;
x=x-taxa;

Leia
x = x - 10

**Direita**
taxa = -10;
 x=x-taxa;

Leia
x = x - (-10)
x = x + 10

Obrigada! Deu uma luz aqui kkkkk

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