Você está na página 1de 21

Aula 3

Oponente revelado

Unidade

Listas: criando o seu jogo de


cartas com listas e padrões
O que vamos aprender?

Criar clones no Scratch.

Programar clones de
atores no Scratch.

Utilizar variáveis com


diferentes atores no Scratch.
ACOMPANHE O VÍDEO DA AULA

2
Desvendando clones
Anteriormente, adicionamos os
botões de atributo e a carta do
oponente ao nosso projeto inspirado
no jogo de cartas Super Trunfo.
Além disso, programamos para que
a carta do oponente vire quando
um dos botões de atributo forem
clicados. Entretanto, quando a carta
do oponente vira, temos apenas
uma carta em branco. Assim,
continuaremos a desenvolver nosso
jogo fazendo com que a carta do
oponente também tenha uma
personagem formada aleatoriamente.

3
Continuaremos nosso projeto fazendo com que os atores pé, corpo e
cabeça também apareçam na carta do oponente quando ela for virada.
Para isso, criaremos clones desses atores e vamos programá-los para que,
quando a carta do oponente for virada, eles apareçam por determinado
tempo e depois desapareçam.
Começaremos selecionando o ator carta do oponente.

Em seguida, da seção Controle, arrastaremos o bloco para

o script que começa com entre os seguintes blocos,


conforme ilustra a imagem:

4
Para fazer um clone da cabeça da personagem da carta, no bloco que
acabamos de arrastar, devemos clicar no menu suspenso e escolher a
opção cabeça.

Feito isso, criaremos clones dos outros dois atores que compõe a
personagem da carta. Para isso, arrastaremos para baixo do bloco
mais dois blocos iguais a ele, da seção Controle.
Em seguida, selecionaremos a opção corpo em um e, no outro,
selecionaremos pé, pois, assim, todos os atores que compõem o
personagem da nossa carta serão clonados.

5
Ainda nesse script, podemos alterar o tempo que a carta do oponente
ficará virada alterando o bloco que representa o tempo de espera.
Observe que ele está logo abaixo dos blocos que acabamos de inserir.
Substituiremos o valor 1 por 3.

Desse modo, teremos o seguinte script para quando o ator carta do


oponente receber a mensagem vira a carta.

6
Feito isso, programaremos os clones para que eles apareçam na carta
do oponente.
Começaremos selecionando o ator cabeça:

Iniciaremos um novo script arrastando, da seção Controle,


o bloco .

Em seguida, para fazer esse clone aparecer na carta do oponente,


arrastaremos o bloco e, ao clicar no menu suspenso,
escolheremos o ator carta do oponente, como mostra a imagem a seguir:

7
Agora que o clone desse ator irá para a carta do oponente, precisamos
mudar a aparência desse clone, pois, caso contrário, ela será sempre
igual à nossa carta. Para fazer isso, arrastaremos, da seção Aparência,
o bloco .
Da seção Operadores, pegaremos o operador
e colocaremos dentro do bloco que altera a fantasia, como mostra a
imagem a seguir:

Em seguida, substituiremos o valor padrão 10 por 4.

8
Feito isso, precisamos ajustar o tempo que este clone ficará na carta do
oponente. Para isso, arrastaremos o bloco , da seção Controle.
Para que haja uma sincronia entre o tempo que a carta do oponente
ficará virada e o tempo que os clones estarão nela, devemos substituir o
valor 1 por 3, que é o mesmo valor que colocamos no tempo de espera na
carta do oponente.
Em seguida, podemos colocar o comando para apagar esse clone
arrastando o bloco , da seção Controle.
Assim, teremos o seguinte script para o clone do ator cabeça:

9
Note que, ao executarmos nosso programa, quando clicarmos em algum
atributo, temos o mesmo problema que tivemos quando criamos nossa
carta: não conseguimos ver o clone do ator cabeça porque o ator carta
do oponente está na frente dele.
Para resolver isso, selecionaremos o ator carta do oponente.

Em seguida, programaremos esse ator para que ele vá para a camada de


trás quando a rodada for iniciada. Colocaremos o bloco ,
da seção Aparência, na seguinte posição deste script:

10
Para que seja possível ver os clones dos atores cabeça, corpo e pé
quando a carta virar, precisamos alterar a opção da frente por de trás no
bloco relacionado à camada, como mostra a imagem a seguir.

Feito isso, podemos testar nosso programa e verificaremos que, ao


clicar em algum atributo, a carta do oponente virará e mostrará o clone
do ator cabeça.

11
Em seguida, programaremos os clones dos atores corpo e pé.

Começaremos selecionando o ator cabeça.

Em seguida, abriremos o recurso Mochila, localizado no rodapé da página.

12
Com o recurso Mochila aberto, arrastaremos todo o script que acabamos
de criar para o clone para a área da Mochila até que ela fique azul, como
ilustra a imagem abaixo.

Note que esse script que acabamos de colocar na Mochila aparecerá


como o primeiro da fila.

Agora, podemos replicar esse script para os atores corpo e pé.

13
Selecionaremos o ator corpo.

Em seguida, arrastaremos para a área de código o script que acabamos


de colocar na Mochila até que a área de código fique azul, como mostra
a imagem a seguir. Repita exatamente o mesmo procedimento para o
ator pé.

Feito isso, podemos testar nosso programa. Veremos que, ao clicar


em qualquer atributo, a carta do oponente virará por três segundos e
mostrará uma personagem criada aleatoriamente com os atores cabeça,
14
corpo e pé.
Para finalizar esta aula, criaremos uma variável tempo para deixar todos
os tempos do nosso jogo sincronizados.
Na seção Variáveis, clicaremos em .
Na caixa que se abrirá, digitaremos a palavra “tempo” para nomear
essa variável e selecionaremos a opção Para todos os atores. Por fim,
clicaremos em OK:

15
Criada a variável tempo, precisamos definir um valor para ela.
Para isso, voltaremos ao início do nosso projeto selecionando o ator

minha carta.

Da seção Variáveis, arrastaremos o bloco para o


script que inicia o jogo, ou seja, aquele que possui a bandeira verde.
Colocaremos esse bloco entre os blocos de direcionamento e de camada,
como mostra a imagem a seguir.

16
Feito isso, selecionaremos a opção tempo no menu suspenso do bloco.

Em seguida, no segundo espaço, mudaremos o valor 0 para 3.

17
Após definir um valor para nossa variável tempo, selecionaremos o ator

carta do oponente.

Em seguida, iremos para a seção Variáveis e arrastaremos a variável


para dentro do bloco que define o tempo de exibição dos clones,
o qual está no script que se inicia com o bloco quando eu receber [vira
a carta]. Assim, substituiremos o valor 3 pela variável tempo, deixando o
script como ilustra a imagem a seguir.

18
Feito isso, repetiremos o procedimento e colocaremos a variável tempo
nos scripts dos clones dos atores cabeça, corpo e pé.
Selecionaremos o ator cabeça.

Em seguida, novamente na seção Variáveis, arrastaemos a variável


para dentro do bloco espere (3) seg. Como feito antes, substituiremos o
valor 3 pela variável tempo:

19
Repetiremos o mesmo processo com os atores corpo e pé .
Por fim, para que a variável tempo não fique aparecendo no nosso palco,
iremos escondê-la. Para isso, clicaremos com o botão direito do mouse
na variável tempo que está aparecendo na parte superior da prévia do
nosso programa. Em seguida, selecionaremos a opção esconder.

20
Desafio
Nosso jogo está ficando cada vez mais completo!
Nesta aula, criamos clones dos atores cabeça, corpo e pé para que
eles apareçam na carta do oponente quando um atributo for clicado.
Definimos que esses clones devem possuir fantasias aleatórias para
que a carta do oponente não seja sempre igual a nossa. Além disso,
programamos esses clones para que eles desapareçam ao mesmo
tempo em que a carta do oponente volta a exibir o verso.
Seu desafio agora será alterar o valor da variável tempo para um valor
maior que 3. Fique livre para testar soluções para problemas com os
cliques ou outras dúvidas que possam surgir.

CLIQUE AQUI PARA AVALIAR ESTE MATERIAL


21

Você também pode gostar