Prévia do material em texto
Construa seu Próprio Labirinto: Oficina de Criação de Jogos com Scratch Prof. Heyder Vágner Ramos - heyder.ramos@ifms.edu.br O que é o Scratch? O Scratch é uma linguagem de programação visual desenvolvida pelo MIT. Ela permite que você crie histórias interativas, jogos e animações, arrastando blocos de código ao invés de digitar comandos. É ideal para iniciantes, pois facilita o aprendizado de lógica de programação e desenvolvimento de projetos interativos. O Scratch pode ser utilizado livremente, basta acessar http://scratch.mit.edu (caso você queira deixar seu projeto salvo, é necessário criar uma conta). Objetivo da Oficina! Nesta oficina, você irá criar um jogo de labirinto. O objetivo é programar um ator para obedecer a comandos do teclado (setas de navegação) e se mover pelo labirinto para alcançar uma porta de saída. Isso será feito utilizando blocos de comando de movimento, algumas estruturas de repetição e condicionais, além de interações básicas do Scratch. Atores e Cenários O Scratch é composto por Atores e Cenários Atores (Sprites): São os personagens ou objetos do seu projeto. Eles podem se mover, interagir e reagir a comandos. Cenários (Backdrops): São as telas ou planos de fundo onde os atores se movimentam. Você pode mudar os cenários para criar diferentes fases ou ambientes em seu jogo. Ambos podem ser programados para reagir de diferentes formas, como veremos a seguir. Entendendo o Plano Cartesiano no Scratch ● O cenário do Scratch é baseado num plano cartesiano (X, Y). O centro é o ponto (0, 0). O eixo X vai de -240 a 240 e o eixo Y, de -180 a 180, como pode ser visto na imagem acima. ● Eixo X: Move o ator horizontalmente (para esquerda e para a direita). ● Eixo Y: Move o ator verticalmente (para cima e para baixo). ● Os valores positivos e negativos nos eixos determinam a direção em que o ator deverá se posicionar ou para onde se moverá. http://scratch.mit.edu Construa seu Próprio Labirinto: Oficina de Criação de Jogos com Scratch Prof. Heyder Vágner Ramos - heyder.ramos@ifms.edu.br Movendo o ator para a direita Para movimentar o ator na tela, precisamos verificar se a tecla está sendo pressionada pelo usuário. Para isso, utilizamos a estrutura condicional “se, então”. Este bloco é usado para criar condições no Scratch. Ele permite que você programe uma ação específica se uma condição for verdadeira. Faça o teste! ● Adicione o bloco “Se tecla (seta para a direita) pressionada, então”. ● Dentro desse bloco, adicione “adicione 10 a x”. Isso faz o ator se mover 10 passos para a direita sempre que a seta for pressionada. ● Quanto maior o valor de X, mais à direita o ator estará. ● A estrutura condicional deve ser encaixada dentro de uma estrutura de repetição “sempre”. Isso é necessário pois não é possível prever o momento exato em que o usuário irá pressionar a tecla, logo, precisamos monitorar durante todo o tempo da execução do jogo (sempre). Deixe o movimento completo! Agora que seu ator está andando para a direita, faça o mesmo com as outras teclas: para esquerda, para cima e para baixo. Lembrando que: ● Para mover na vertical (para cima e para baixo) utilize o eixo Y. ● Diminua o valor de X e de Y para mover o ator para esquerda ou para baixo, ou seja, “adicione -10 a x” para ir para a esquerda e “adicione -10 a y” para ir para baixo. Hora de mudar o cenário! Agora que seu ator está se movendo pela tela obedecendo ao teclado, vamos mudar o fundo para a imagem do labirinto. Clique no botão ao lado, escolha o labirinto e salve em seu computador Ou acesse: http://aprendascratch.com.br/imagens/labirintos/ http://aprendascratch.com.br/imagens/labirintos/ http://aprendascratch.com.br/imagens/labirintos/ Construa seu Próprio Labirinto: Oficina de Criação de Jogos com Scratch Prof. Heyder Vágner Ramos - heyder.ramos@ifms.edu.br Faça os ajustes! 1. Adicione a imagem que você escolheu como cenário, utilizando a opção “Carregar Cenário” do Scratch. 2. Expanda a imagem para que ela preencha toda a tela, de modo que não fiquem “espaços em branco” ao redor do labirinto. 3. Adicione outro ator para ser a “porta de saída” do labirinto. (No exemplo, a maçã). 4. Altere o tamanho dos atores para que caibam dentro das paredes do labirinto, principalmente do ator que irá percorrer as paredes do jogo. (No exemplo, gato, tamanho 20 ou 25). O ator está atravessando as paredes, e agora? É normal que isso esteja acontecendo, pois ainda não programamos o ator para respeitar as paredes do labirinto, faremos isso agora! Precisamos programar nosso ator para interromper o movimento ao tocar na parede. Para isso, utilizaremos outro bloco do tipo “Se, então”, porém com a condição “tocando na cor preta”, observe: Atenção: Não é preciso criar um novo código. Este código é a complementação do código exibido acima (tecla para direita). A inserção do teste de cor deve ser feito para cada uma das teclas (para esquerda, para cima e para baixo). Para evitar que o ator atravesse a parede, adicionamos um novo bloco “SE, ENTÃO”, desta vez para verificar se o ator está tocando na parede do labirinto (cor preta). Caso seja verdade, adicionamos -10 a x. Neste exemplo, a tecla pressionada faz o ator se movimentar para a direita (+10x), ao tocar na borda do labirinto e adicionar -10x, teremos o efeito de “ficar parado”. +10 - 10x = 0 (zero movimento). Atente-se a cor! A cor testada no sensor precisa ser exatamente igual a cor da parede do labirinto. Recomenda-se utilizar o conta-gotas. - Construa seu Próprio Labirinto: Oficina de Criação de Jogos com Scratch Prof. Heyder Vágner Ramos - heyder.ramos@ifms.edu.br Agora é só finalizar o jogo! Agora que nosso ator está percorrendo o labirinto, respeitando devidamente as paredes, vamos programar para que o jogo termine quando ele alcançar a porta de saída. 1. Programe o ator que percorre o labirinto (gato) para exibir a mensagem de vitória ao tocar no ator que está no final do jogo (maçã). 2. Para isso, use os blocos “sempre”, e “se, então”, como sensor “tocando em”. 3. Utilize o bloco “pare todos” para encerrar o jogo logo após a mensagem. Atenção: Este bloco precisa estar dentro do bloco “Se, então” para funcionar corretamente. Pronto! Você acabou de criar seu primeiro jogo! Parabéns! Compartilhe seu jogo com seus amigos! Marque o instagram @ifms.jd nas publicações. Responda à avaliação da oficina! https://bit.ly/ifms1610 Gostou do que aprendeu? Tenha acesso ao curso completo e gratuito de criação de jogos com Scratch! Acesse e se inscreva! aprendascratch.com.br https://bit.ly/ifms1610 https://bit.ly/ifms1610 http://aprendascratch.com.br http://aprendascratch.com.br