Baixe o app para aproveitar ainda mais
Prévia do material em texto
Sons do duelo de cartas Aula 12 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 en- tre 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 unidi- mensionais 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 reúso 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 Identificar padrões que podem ser otimizados ou simplificados. Adicionar efeitos sonoros ao projeto. Entender a diferença entre as condicionais se e se/senão. O que vamos aprender? ACOMPANHE O VÍDEO DA AULA https://cursos.alura.com.br/course/scratch-criando-jogo-cartas-listas-padroes/task/134381 3 Adicionando sons Anteriormente, adicionamos efeitos aos botões de atributos para que, quando passarmos o mouse por cima deles, seja aplicado um brilho que destaque esse botão. Do mesmo modo, quando clicamos em algum atributo, o mesmo efeito é aplicado nos botões de atributos da nossa carta e na do oponente, destacando os atributos que estão sendo comparados. Nesta aula, criaremos mais funções para deixar nosso código mais organizado e adicionaremos sons ao projeto. Para isso, vamos utilizar novamente os blocos personalizados e alguns blocos que reproduzem sons. Para iniciar a aula, sugere-se seja relembrado com os estudantes o que foi realizado no projeto até o momento. Assim como o efeito vi- sual, o efeito sonoro também chama a atenção dos usuários. Além disso, pode ser solicitado que os estudantes deem exemplos de al- guns efeitos sonoros que eles conhecem de jogos, desenhos, filmes e séries de TV. 4 Nesta aula, adicionaremos som ao nosso projeto, mas, antes disso, vamos analisar os blocos responsáveis pela pontuação do nosso jogo. Começaremos selecionando o Palco: Observe o script que começa com o bloco : Para que haja participação dos estudan- tes, sugere-se que eles sejam instigados a ler o script em questão e perceber qual padrão pode ser identificado para que pos- samos criar uma função. Espera-se que os estudantes percebam em cada condicional que identifica cada botão que foi clicado possui outra condicional dentro de si, que compara as variáveis dos atributos da nos- sa carta e as do oponente para adicionar pontos. Assim, podemos usar o padrão das condicionais de dentro para compor nossa função, que terá como parâmetros duas va- riáveis dos atributos a serem comparados. 5 Vamos utilizar o padrão de blocos que se repete dentro das condicionais para criar uma nova função que compare se o nosso atributo é maior que o da carta do oponente, estabelecendo a pontuação. Para isso, na seção Meus Blocos, clicaremos em . Na caixa que se abrirá, nomearemos esse novo bloco como pontuação: Em seguida, vamos adicionar mais duas entradas à função, clicando em: A primeira entrada será nomeada como meu valor e a outra, como valor do oponente. Seu bloco ficará da seguinte forma: Feito isso, clicaremos em . 6 Agora, definiremos nossa função programando o bloco criado, que apareceu na Área de Código: Assim, vamos organizar nossa Área de Código movendo este bloco para baixo do script que começa com o bloco . Em seguida, desse script, vamos utilizar uma estrutura de qualquer uma das condições que comparam se o valor da variável da nossa carta é maior que o valor da variável do atributo do oponente. Observe a estrutura da varável minha velocidade, por exemplo: 7 Arrastaremos esse conjunto de blocos para o bloco rosa que define a função pontuação. Seu script ficará da seguinte maneira: Em seguida, vamos retirar e deixar separadas, em um espaço vazio da Área de Códigos, as variáveis minha velocidade e velocidade oponente, que são os blocos laranjas que estão na parte verde do bloco de condicional que acabamos de arrastar para definir a função: No lugar dessas variáveis, colocaremos os parâmetros na primeira lacuna e na segunda. Para fazer isso, arrastaremos esses parâmetros do bloco que define essa função. Seu bloco condicional ficará da seguinte forma: 8 No lugar em que estava a condicional que usamos para definir a função pontuação, no final do script, arrastaremos o bloco da seção Meus Blocos. Nas lacunas desse bloco, colocaremos as variáveis minha velocidade e velocidade oponente, respectivamente. O bloco devidamente configurado ficará da seguinte forma: Assim, o parâmetro meu valor assumirá o valor da variável minha velocidade, enquanto valor do oponente assumirá o valor de velocidade oponente. 9 Feito isso, removeremos do script as condicionais relacionadas aos atributos de força e inteligência. Para fazer isso, clicaremos nesses blocos com o botão direito e escolheremos a opção Apagar 5 Blocos, confirme imagens a seguir: Feito isso, arrastaremos novamente, para onde estavam esses blocos que acabamos de apagar, o bloco , da seção Meus Blocos. Seu script ficará da seguinte forma: 10 Em seguida, vamos configurar os blocos de pontuação que acabamos de adicionar. Precisaremos utilizar as variáveis minha força e força oponente como parâmetros; para isso, arrastaremos, da seção Variáveis, a variável para a primeira lacuna do bloco e a variável para a segunda. Para o bloco de pontuação que está na condicional do botão inteligência, arrastaremos, da seção Variáveis, a variável para a primeira lacuna e a variável para a segunda. O resultado será o seguinte: Ao testar nosso projeto, clicando na bandeira verde do Palco, perceberemos que ele está funcionando da mesma forma que antes, mas com o script devidamente otimizado. Agora, adicionaremos um som ao jogo, caso ganhemos um ponto na partida. Neste momento, os estudantes podem ser questionados sobre em qual script podemos colocar o bloco que fará com que algum som seja emitido. É esperado que eles pensem no bloco que define a função pontuação, pois será essa fun- ção que verificará se pontuaremos ou não. 11 Para adicionar um som, vamos realizar mudanças no script que define a função pontuação. Queremos que, se o parâmetro meu valor for maior que valor do oponente, além de adicionar um ponto ao placar, o jogo também reproduza um som. Para isso, clicaremos na aba Sons, localizada no canto superior esquerdo da tela. Em seguida, clicaremos no botão Selecionar um Som, localizado no canto inferior esquerdo da tela. Ao fazer isso, todos os sons disponíveis no Scratch serão mostrado. Clicaremos em Efeitos, no cabeçalho. . Para ouvir os sons, é preciso passar o mouse pelo botão roxo . Procuraremos o som Collect e clicaremos nele para adicioná-lo ao nosso projeto do Scratch. 12 Repare que o som carregado está na barra de sons, localizada do lado esquerdo da tela: Feito isso, podemos voltar para a aba Códigos. Da seção Som, arrastaremos o bloco para dentro da condicional que define a função pontuação, colocando-o logo após o bloco que adiciona pontos, da seguinte forma: Agora, podemos testar nosso jogo clicando na bandeira verde; veremos que, quando pontuamos, o som é reproduzido. Em seguida, adicionaremos um novo som para quando perdemos a rodada. Para isso, precisaremos fazer uma mudança na estrutura do script, substituindo a condicional Se pela condicional Se/senão. Neste momento, os estudantes podem ser questionados sobre qual é a diferença entre as condicionais se e se/senão. É esperado que eles percebam que a condi- cional se executará o que está dentro dela somente se a condição determinada for atendida; caso contrário, seguirá o scriptnormalmente. Porém, quando utilizamos a condicional se/senão, caso a condição especificada não seja atendida, existem outros comandos a serem executados antes de dar continuidade ao script. 13 Desse modo, arrastaremos, da seção Controle, o bloco para o final do script que define a função pontuação: Utilizaremos esse bloco, pois, diferentemente do bloco condicional Se, ele nos permite construir um comando específico que será executado caso a condicional não seja verdadeira, ou seja, se o meu valor for menor que o valor do oponente. 14 Em seguida, ajustaremos esse bloco arrastando os elementos que estavam na condicional de cima para a condicional que acabamos de adicionar, como mostra a imagem a seguir: Feito isso, deletaremos a primeira condicional Se, que agora está vazia, clicando com o botão direito sobre ela e selecionando Apagar Bloco: 15 Em seguida, adicionaremos um novo som ao Scratch para representar o momento em que perdemos uma partida. Para isso, repita o processo feito clicando na aba Sons, localizada no canto superior esquerda da tela, e selecione o efeito Clang. Feito isso, voltaremos para a aba Códigos. Adicionaremos o novo som no bloco condicional Senão para que seja reproduzido caso meu valor não seja maior que o valor do oponente. 16 Para fazer isso, da seção Som, arrastaremos o bloco para dentro do espaço da condicional Senão. Assim, teremos o seguinte script que define a função pontuação: Ao testar nosso código clicando na bandeira verde, perceberemos que é reproduzido um som quando ganhamos e outro som quando perdemos a rodada. Desafio 17 Nesta aula, começamos organizando nosso projeto ao criar uma função com os padrões que estávamos usando para verificar qual atributo é maior e adicionar pontos. Além disso, adicionamos dois sons ao jogo, um para quando vencermos a rodada e outro para quando perdemos. Diante disso, seu desafio será adicionar um novo som para quando nossa carta for sorteada. CLIQUE AQUI PARA AVALIAR ESTE MATERIAL Espera-se que os estudantes adicionem um novo som ao projeto clicando na aba Sons e em Selecionar um Som. Em seguida, eles deverão incluir o bloco que reproduzirá esse som no final do script que inicia a rodada. Ao realizar essa atividade, os estudantes podem desenvolver a capacidade de identificar padrões e personalizar seus jogos. https://docs.google.com/forms/d/e/1FAIpQLSdj6D4ophEVDczMqZKzLL0_9vCK5C2UoSKSxaMr-1os8-B8-A/viewform
Compartilhar