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

Trocando da maneira mais difícil (de novo)

Como eu tentei um comando booleano antes mas, sem um motivo aparente, ela levava mais tempo em uma bandeira do que na outra, eu acabei criando uma variável de tempo com incremento para que ela levasse exatos 3seg para trocar. Segue como ficou o código alternativo (hehe):

<!-- bandeiras.html -->

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

<script>

    function desenhaBandeiraBrasil() {
        var tela = document.querySelector('canvas');
        var pincel = tela.getContext('2d');

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

        pincel.fillStyle="yellow";
        pincel.beginPath();
        pincel.moveTo(300, 50);
        pincel.lineTo(50, 200);
        pincel.lineTo(550, 200);
        pincel.fill();

        pincel.beginPath();
        pincel.moveTo(50, 200);
        pincel.lineTo(300, 350);
        pincel.lineTo(550, 200);
        pincel.fill();

        pincel.fillStyle="darkblue";
        pincel.beginPath();

        pincel.arc(300, 200, 100, 0, 2* 3.14);
        pincel.fill();
    }


    function desenhaBandeiraAlemanha() {
        var tela = document.querySelector('canvas');
        var pincel = tela.getContext('2d');

        pincel.fillStyle = 'black';
        pincel.fillRect(0, 0, 600, 133);

        pincel.fillStyle = 'red';
        pincel.fillRect(0, 133, 600, 133);

        pincel.fillStyle = 'yellow';
        pincel.fillRect(0, 266, 600, 133);
    }

    var tempo = 0;

    var Brasil = desenhaBandeiraBrasil;
    var Alemanha = desenhaBandeiraAlemanha;

    function trocaBandeira(){

        if(tempo <= 1){

            Brasil();
            tempo++; 
        }

        if(tempo >= 2){

            Alemanha();
            tempo++;

            if(tempo == 3){

                tempo = 0;
            }
        }

    }



    setInterval(trocaBandeira, 3000);

</script>
2 respostas
solução!

Olá Marcelo! Tudo bem?

Excelente solução!

É muito importante praticar o que vamos aprendendo ao ongo do curso, e ter nossa própria forma de solucionar é ainda melhor! Isso vai te ajudar bastante a fixar melhor os exercícios!

E também é muito legal a sua iniciativa em compartilhar com a gente sua solução... isso ajuda muito os colegas que podem ter ficado com alguma dúvida no exercício ou mesmo que não pensaram nessa solução que você uso... Parabéns!

Sempre fique a vontade para compartilhar conosco as soluções que encontrar, por mais diferentes que sejam... isso enriquece nossa comunidade!

E quando tiver dúvidas, conte conosco também!

Oii Marcelo, bom dia, tudo bem?

Eu gostei muitoo da sua solução :D, e como eu tenho um pouco de dificuldade em compreender os condigos ainda, então quando eu não consigo fazer sozinha eu vejo o fórum antes de ver o código do professor, e gostei muito do seu, parabéns :D