Prévia do material em texto
Novas cartas Aula 8 Habilidades trabalhadas nesta aula: (EF07MA04) Resolver e elaborar problemas que envolvam operações com números inteiros. (EF07MA13) Compreender a ideia de variável, representada por letra ou símbolo, para expressar relação entre duas grandezas, diferenciando-a da ideia de incógnita. (EF07CO01) Criar soluções de problemas para os quais seja adequado o uso de registros e matrizes unidimen- sionais para descrever suas informações e automatizá-las usando uma linguagem de programação. (EF07CO02) Analisar programas para detectar e remover erros, ampliando a confiança na sua correção. (EF07CO05) Criar algoritmos fazendo uso da decomposição e do reuso no processo de solução de forma colaborativa e cooperativa e automatizá-los usando uma linguagem de programação. Listas: criando o seu jogo de cartas com listas e padrões Unidade 2 Utilizar o recurso Mochila. Identificar e resolver problemas comuns ao reutilizar códigos. Implementar uma dinâmica de bônus para os atributos da minha carta. O que vamos aprender? ACOMPANHE O VÍDEO DA AULA https://cursos.alura.com.br/course/scratch-criando-jogo-cartas-listas-padroes/task/134375 3 Super poderes nas cartas Nosso jogo já está funcionando. Anteriormente, criamos um placar que anota pontos toda vez que ganhamos a rodada. Nesta aula, adicionaremos mais elementos, a fim de deixar nosso jogo menos previsível e termos mais variações de cartas. Para isso, importaremos para o Scratch um novo ator e reutilizaremos alguns conjuntos de blocos salvos na Mochila. Professor, para iniciar a aula, sugere-se seja relembrado com os estudantes o que foi realizado no projeto até o momento. Além disso, é interessante que eles formulem hipóteses sobre em quais atores e padrões podemos nos basear para adicionar acessórios à nossa carta. É esperado que os estu- dantes concluam que, para adicionar acessórios na nossa carta, será preciso identificar padrões dos atores cabeça, corpo e pé. 4 Na pasta de elementos que baixamos no início do projeto, ainda temos alguns que não foram utilizados. Vamos adicionar um deles agora ao Scratch, portanto, localize essa pasta em seu computador. Feito isso, passaremos o mouse por cima do ícone para adicionar novos atores, localizado no canto inferior direito da tela: Em seguida, clicaremos no primeiro ícone: É importante salientar que a identificação de padrões é um dos pilares do Pensamento Computacional e que ele será fundamental para criarmos o algoritmo para que nossa carta tenha acessórios. Para começar a aula, certifique-se que os estudantes tenham a pasta utilizada na primeira aula, quando adicionamos os atores externos cabeça, corpo, pé e minha carta ao Scratch. Caso não eles não tenham essa pasta, será preciso baixá-la novamente na atividade Preparando o ambiente: fantasia dos atores, disponível no link <https://cursos.alura.com.br/ course/scratch-criando-jogo-cartas-listas-padroes/task/134395>. https://cursos.alura.com.br/course/scratch-criando-jogo-cartas-listas-padroes/task/134395 https://cursos.alura.com.br/course/scratch-criando-jogo-cartas-listas-padroes/task/134395 5 Na janela que se abrirá, procuraremos pela pasta Super-trunfo-atores, selecionando o arquivo acessórios-atrás.sprite3. Em seguida, clicaremos em Abrir. Feito isso, repare que o ator acessório-atrás aparecerá selecionado no canto inferior direito da tela do Scratch: 6 Podemos ver também que esse acessório aparece na frente da personagem da nossa carta: Precisaremos que essa asa apareça atrás da personagem, mas na frente da nossa carta. Para isso, arrastaremos, da seção Eventos para a Área de código, o bloco . Em seguida, da seção Aparência, arrastaremos o bloco . 7 Como queremos que o acessório das asas vá para camada de trás, clicaremos no menu suspenso do bloco de aparência que acabamos de adicionar e selecionaremos a opção trás. Devemos lembrar que a primeira camada é dos atores cabeça, corpo e pé, portanto, substituiremos o valor 1 na lacuna do bloco de aparência por 2. 8 Assim, podemos clicar várias vezes na bandeira verde e ver que o acessório estará na camada correta, atrás dos atores cabeça, corpo e pé e na frente do ator minha carta, como mostra a imagem a seguir: Antes de continuarmos, vamos ver as outras fantasias do ator acessórios-atrás. Para isso, vamos clicar na aba Fantasias, no canto superior esquerdo. 9 Repare que o ator acessórios-atrás possui 5 fantasias (asas de fada, asas de morcego, aureola ajustada, capa do mal e skate), assim como os outros atores que compõem as cartas que adicionamos no começo do nosso projeto. Essas fantasias já foram criadas para estarem posicionadas corretamente na carta. 10 Sendo assim, podemos programar os acessórios para que, quando for iniciada uma rodada, eles apareçam nas cartas. Para fazer isso, voltaremos à aba Código, localizada no canto superior esquerdo da tela. Em seguida, da seção Eventos, arrastaremos o bloco . Clicaremos no menu suspenso desse bloco e selecionaremos a opção inicia rodada. 11 Em seguida, da seção Movimento, arrastaremos o bloco . Clicaremos no menu suspenso do bloco de movimento, selecionando a opção minha carta. Em seguida, precisaremos programar a variação aleatória das fantasias desse ator. Neste momento, seria interessante questionar os estudantes se a programação dos acessórios segue algum padrão similar a outro ator. É esperado que eles percebam que a programação dos acessórios segue os mesmos padrões dos outros atores que compõe a personagem da carta (cabeça, corpo e pé). 12 Para programarmos os acessórios, podemos lembrar que o ator acessório trás terá um script seguindo os mesmos padrões dos atores cabeça, corpo e pé. Sendo assim, abriremos o recurso Mochila, localizado no rodapé da página. Em seguida, escolheremos o script mais antigo salvo na Mochila: Por fim, arrastaremos esse script para a área de código até que ela fique azul: 13 Feito isso, podemos excluir o script que havíamos criado anteriormente. Para fazer isso, podemos clicar no primeiro bloco do script e arrastá-lo de volta para a área de seleção de blocos. Agora, observe o conjunto de blocos que sorteia as fantasias, o qual está no final do script que recebe a mensagem para iniciar a rodada. Este bloco está programado para sortear um número aleatório entre 4 fantasias. Como o ator acessório atrás possui 5, precisamos que seja sorteado um número entre 1 e 5. Para isso, colocaremos o número 5 na segunda lacuna desse conjunto de blocos. 14 Repare que, cada vez que executarmos nosso programa, clicando na bandeira verde do Palco, os animais da nossa carta aparecerão com acessórios aleatórios: Assim, precisaremos que esses acessórios também apareçam na carta do oponente quando um botão de atributo for clicado. É importante incentivar a participação dos estudantes no processo. Nesse momento, você pode perguntar a eles como podemos programar para que os acessórios também apareçam na carta do oponente. É esperado que os estudantes respondam que devemos utilizar os mesmos blocos utilizados para outros atores, ou seja, o script que começa quando esse clone for criado deve fazê-lo ir para a carta do oponente, sortear uma fantasia aleatória e esperar o tempo necessário antes de terminar a rodada e apagar o clone. 15 Vamos lembrar que já fizemos um código para essa finalidade com outros atores, por isso, iremos na Mochila e selecionaremos o terceiro script da direita para esquerda e o arrastaremos para a área de código: Feito isso, vamos alterar o script que cria os clones assim que a rodada se inicia. Primeiro, no conjunto de blocos que muda as fantasias, altere o valor 4 pelo 5 na segunda lacuna, afinal, temos 5 fantasias para o ator acessório trás. Em seguida, da seção Variáveis, arrastaremos a variável para a lacuna do bloco de controle, como mostrado a seguir: 16 Quando testarmos nosso código clicando na bandeira verde, perceberemos que, ao clicarmosem algum atributo das cartas, o acessório não aparecerá na carta do oponente. Isso acontece porque, apesar de termos programado o clone desse ator, ainda não programamos sua criação, o que faremos neste momento. Assim, selecione o ator carta do oponente: No script que recebe a informação de virar a carta, adicionaremos, da seção Controle, o bloco . Em seguida, posicionaremos esse bloco após o bloco que cria o clone de velocidade e antes do bloco que transmite a mensagem de clones variados, como mostra a imagem a seguir: Professor, neste momento, você pode perguntar qual ator utilizamos para criar os clones. É esperado que respondam o ator carta do oponente. 17 Na sequência, clicaremos no menu suspenso desse bloco que acabamos de adicionar e escolheremos a opção acessórios atrás. 18 Feito isso, ao testarmos nosso programa clicando na bandeira verde, perceberemos que, quando clicarmos em qualquer atributo, a carta do oponente também apresentará um acessório atrás da personagem formada pelos atores cabeça, corpo e pé. Agora, precisamos pensar em uma estratégia para adicionar alguns elementos. Por exemplo, o skate pode adicionar velocidade, mas não adiciona força e nem inteligência. Ou podemos simplesmente colocar valores aleatórios, dependendo da fantasia. Para isso, selecionaremos o Palco, localizado no canto inferior direito, pois é onde estamos programando as mudanças dos atributos. 19 No script que recebe a mensagem para o início da rodada, podemos adicionar valores às variáveis dos atributos da minha carta. Para fazer isso, iremos na seção Variáveis e arrastaremos o bloco para o final desse script. Em seguida, clicaremos no menu suspenso desse bloco e selecionaremos a opção minha inteligência. Feito isso, dependendo da fantasia que estiver sendo exibida, podemos adicionar um valor ao atributo inteligência. Então, da seção Sensores, arrastaremos para a área de código o bloco . Por enquanto, esse bloco não estará em nenhum script, então, vamos deixá-lo temporariamente solto. 20 Mesmo solto, vamos configurar esse bloco. Assim como fizemos com os outros sensores que já utilizamos, clicaremos no segundo menu suspenso e selecionaremos a opção acessórios atrás. Em seguida, clicaremos no primeiro menu suspenso e escolheremos a opção nº da fantasia. Desse modo, teremos o sensor que passa a informação sobre qual é a fantasia que está selecionada. Então, podemos pensar em diferentes formas para adicionar pontos extras a nossa carta. 21 Nesse caso, da seção Operadores, utilizaremos o operador de multiplicação . Arrastaremos esse operador para a lacuna do bloco que adiciona valores ao ator minha inteligência. Na primeira lacuna do operador de multiplicação, digitaremos o número 3 e, para a segunda lacuna, arrastaremos o bloco sensor que já configuramos, mas havíamos deixado solto. Assim, teremos o seguinte conjunto de blocos: Agora, podemos verificar que, ao executar nosso programa clicando na bandeira verde, a variável minha inteligência recebe valores adicionais. 22 Agora, vamos adicionar valores à variável minha força. Da seção Variáveis, arrastaremos para o fim do script mais um bloco , clicaremos no menu suspenso e selecionaremos a opção minha força. Em seguida, clicaremos com o botão direito do mouse no operador, que é o bloco verde que acabamos de configurar no passo anterior, e selecionaremos Duplicar. Professor, o recurso de duplicar blocos ou conjuntos de blocos pode ser muito utilizado pelos estu- dantes de forma a tornar a progra- mação dos scripts mais ágil. Assim, retome essa ferramenta com eles, explicando sua praticidade. 23 Colocaremos o conjunto de blocos duplicado na lacuna do bloco que adiciona valores ao atributo minha força, preenchendo sua lacuna com o valor 5, como mostrado a seguir: Para programar os ganhos do atributo velocidade, duplicaremos todo o conjunto de blocos que acabamos de ajustar, clicando com o botão direito do mouse no bloco laranja, como mostra a figura: Colocaremos o bloco duplicado logo abaixo da anterior, clicando no último menu suspenso do conjunto e selecionando a opção minha velocidade. 24 Feito isso, duplicaremos novamente apenas o bloco sensor, que é a parte azul do conjunto de blocos, e o posicionaremos na primeira lacuna do operador de multiplicação, no lugar do número 5, como mostra a figura a seguir: Por fim, teremos o seguinte script para definir o valor das variáveis dos atributos da nossa carta: 25 Ao testar nosso programa clicando na bandeira verde, poderemos perceber que atributos da nossa carta terão valores diferentes da lista. Agora, eles terão acréscimos que dependem da fantasia selecionada! Desafio 26CLIQUE AQUI PARA AVALIAR ESTE MATERIAL Nesta aula, acrescentamos acessórios à nossa carta. Para fazer isso, adicionamos o ator acessórios atrás, que possui 5 fantasias. Assim, conseguimos programar para que fossem adicionados valores utilizando o operador de multiplicação. Porém, ainda precisamos adicionar valores para o acessório da carta do oponente. Faremos isso na próxima aula. Diante disso, seu desafio será criar regras matemáticas diferentes para os valores dos acessórios que adicionamos nesta aula. Espera-se que os estudantes utilizem os operadores matemático de adição, subtração, multiplicação e divisão, da seção Operadores, para criar novas regras matemáticas para adicionar valores aos atributos da minha carta. Essas regras deverão substituir as programações que fizemos no script que começa com o bloco “quando eu receber [inicia rodada]” do Palco. Além disso, podem ser criadas condicionais para determinar o ganho dependendo da fantasia selecionada. Assim, os estudantes podem utilizar a criatividade para criar diferentes cartas e deixar o jogo mais condizente com a sua própria expectativa e realidade. Além disso, também podem aumentar o interesse no projeto. https://docs.google.com/forms/d/e/1FAIpQLSdj6D4ophEVDczMqZKzLL0_9vCK5C2UoSKSxaMr-1os8-B8-A/viewform