1
resposta

Setas: Move a bolinha, Espaço: Altera a cor da bolinha.

<body>
    <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;

        //Códigos do Teclado

        var setaEsquerda = 37;
        var setaCima = 38;
        var setaDireita = 39;
        var setaBaixo = 40;
        var espaco = 32;

        //Taxa de incremento

        var taxa = 10;
        var cores = ['blue', 'green', 'red', 'orange', 'purple', 'black'];
        var cor = 0;

        function desenhaCirculo(x, y, raio) {

            pincel.fillStyle = cores[cor];
            pincel.beginPath();
            pincel.arc(x, y, raio, 0, 2 * Math.PI);
            pincel.fill();
        }

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

        function atualizaTela() {

            limpaTela();
            desenhaCirculo(x, y, 10);
        }

        function mudaCor() {
            cor++;

            if (cor == cores.length) {
                cor = 0;
            }
        }

        function leDoTeclado(evento) {
            var teclaPressionada = evento.keyCode;

            if (teclaPressionada == setaCima) {
                y -= taxa;
            }
            else if (teclaPressionada == setaBaixo) {
                y += taxa;
            }
            else if (teclaPressionada == setaDireita) {
                x += taxa;
            }
            else if (teclaPressionada == setaEsquerda) {
                x -= taxa;
            }

            if (teclaPressionada == espaco) {
                mudaCor();
            }
        }

        setInterval(atualizaTela, 20);

        document.onkeydown = leDoTeclado;

    </script>
</body>
1 resposta

Achei muito interessante a função de trocar a cor da bolinha Victor!! excelente ideia!!!