Yuri é desenvolvedor e instrutor. É estudante de Sistemas de Informação na FIAP e formado como Técnico em Informática no Senac SP. O seu foco é nas plataformas Java e Python e em outras áreas como Arquitetura de Software e Machine Learning. Yuri também atua como editor de conteúdo no blog da Alura, onde escreve, principalmente, sobre Redes, Docker, Linux, Java e Python.
Inscreva-se em nossa Newsletter
Fique por dentro de conteúdos, insights e oportunidades do universo tech. Receba novidades e lançamentos direto no seu e-mail.
Estou estudando Scratch. Para testar meus conhecimentos, estou fazendo vários mini projetos e em um deles resolvi criar um jogo onde controlamos um avião.
Nosso jogo vai se passar, basicamente, no ar. Logo, vamos alterar nosso palco para que apareça um céu:
Legal! Já temos o palco para o nosso jogo, agora precisamos adicionar o nosso ator:
Nosso ator está na tela, mas ele está meio grande para o nosso cenário. Podemos falar para o Scratch para, quando o jogo começar, reduzir o tamanho do nosso ator, no meu caso, vou reduzi-lo para 30%:
Nosso avião já está em um tamanho bom. Porém ele ainda está no meio da tela. Quando o nosso jogo começar, o nosso avião deve se posicionar na parte central e inferior da tela. Isto é, sua posição horizontal (x) deve ser 0 e sua posição vertical (y) deve ser -120, no meu caso:
Bacana! Nosso avião já está posicionado, mas ele ainda está parado quando o jogo começa. Precisamos movimentá-lo.
Movimentando o nosso ator
No Scratch, conseguimos capturar diversos eventos que nosso usuário pode produzir, como por exemplo um evento de click. Só que nesse caso, não queremos capturar o evento de click e sim o de uma tecla.
Nosso ator vai ser mover, a princípio, para a esquerda e para a direita, ou seja, só trabalharemos com o eixo horizontal (x). Para mover nosso ator, vamos utilizar as setas do teclado.
Então vamos falar para o Scratch mover o nosso ator alguns passos para a esquerda quando a tecla seta para esquerda for pressionada:
Como estamos movendo nosso ator para a esquerda, o valor dos passos é negativo. Podemos falar para ele se mover para direita também quando a seta para direita for pressionada, só que, neste caso, o valor dos passos é positivo:
Agora quando digitamos algumas dessas teclas, nosso ator se movimenta:
Nosso ator está se movimentando, mas o que vocês acham desse movimento? Ele está um pouco estranho, travado. Como podemos deixar ele mais fluido?
Melhorando a movimentação
Quando apertamos uma tecla no computador e a mantemos pressionada, o computador executa uma vez e espera um pouco para executar as demais ações. Por isso, o movimento do ator fica travado.
Mas nós precisamos saber quando o usuário pressiona a tecla para mover nosso ator, como podemos fazer isso sem fazer com que a movimentação pareça travada?
Quando apertamos uma tecla, um sensor localizado no teclado captura essa informação e a envia para ser processada. Nós podemos falar para o Scratch utilizar um sensor e sempre ficar verificando se a tecla foi acionada.
Logo, vamos apagar os comandos do evento de click e falar para o Scratch que, quando o jogo começar, ele fique sempre perguntando seas teclas de movimento estão pressionadas, se estiverem, ele deve mover o personagem:
Agora quando pressionarmos as teclas, nosso ator terá um movimento mais fluido:
Continuando nosso jogo
Nosso ator principal já está com um comportamento muito legal. Agora precisamos adicionar mais elementos, como obstáculos para o nosso avião desviar, criar um efeito de para simular o movimento do voo, entre diversas outras coisas para deixar nosso jogo mais divertido.