Criando um jogo de plataforma com Construct3 - Parte 2
Tags: construct3, game
Published: 2019-11-21 00:25:13

Nesta parte, prosseguiremos com a construção de nosso jogo adicionando o personagem, itens coletáveis e o placar.

Projeto completo disponível [aqui](https://drive.google.com/open?id=1fLNGl_lkKpvYjoPl9XqVVixjZMTdeg9S).


# Topicos

- [Personagem](#personagem)
- [Pontos](#pontos)

## Personagem

Retorne à aba "Layout 1" e adicione um novo sprite. Dessa vez, carregue uma imagem qualquer do seu computador que represente o seu personagem:

![print20](https://thepracticaldev.s3.amazonaws.com/i/v7w000i9kzk4dnhtdqba.JPG)

Eu selecionei a minha foto 🤣:

![print21](https://thepracticaldev.s3.amazonaws.com/i/ceulo6b6x98m1jx7zfj1.JPG)

Agora adicione um comportamento de plataforma:

![print22](https://thepracticaldev.s3.amazonaws.com/i/245tcn061wd6oevjxim3.JPG)

Execute o jogo e você conseguirá manipular o personagem com as setas do teclado:

![print23](https://thepracticaldev.s3.amazonaws.com/i/0fn5snqzlj37jkn2jhgl.JPG)

## Pontos

Agora vamos dá substância ao jogo e adicionar itens coletáveis que atribuem pontos ao jogador.  
Crie um novo sprite com uma cor diferente dos usados em plataformas. Mantenha o formato de quadrado, mas bem pequeno:

![print24](https://thepracticaldev.s3.amazonaws.com/i/xwquxhn2x5gvrv7qoffj.JPG)

Adicione o comportamento "Girar":

![print25](https://thepracticaldev.s3.amazonaws.com/i/gjdb4vibu761v7ljumg5.JPG)

Ao executar o jogo, verá que o sprite estará girando em sentido horário sem sair do lugar. Agora, adicione a seguinte condição na aba de eventos: Quando o  personagem colidir com o sprite, o sprite será destruído:

![print26](https://thepracticaldev.s3.amazonaws.com/i/9s896ns71y4pqqam8nz5.JPG)

Execute o jogo e o sprite irá desaparecer ao entrar em contato com o personagem.  
Agora precisamos de um placar. Adicione o objeto "Texto" no layout:

![print27](https://thepracticaldev.s3.amazonaws.com/i/eyvq5dftavr8ngp1x5um.JPG)

Este será o placar. Posicione-o em algum ponto da tela que não será obstruído:

![print28](https://thepracticaldev.s3.amazonaws.com/i/tsz59n5b1l5pk2i2tcw7.JPG)

Adicione uma variável de instância ao objeto "Texto":

![print29](https://thepracticaldev.s3.amazonaws.com/i/vc4kdirvl6v0qopzxeu5.JPG)

Chame-a de "Pontos". Ela será do tipo numérico:

![print30](https://thepracticaldev.s3.amazonaws.com/i/gv5jytzgshcoui54wein.JPG)

Uma nova regra deverá ser inserida na aba de eventos: ao iniciar o layout, o texto deverá mostrar o valor dos pontos. Para isso, crie uma nova ação à condição "Sistema" -> "Ao iniciar layout" e selecione o objeto "Texto":

![print31](https://thepracticaldev.s3.amazonaws.com/i/2aeaxjrmtidc3voi3eof.JPG)

Selecione a opção "Definir Texto" e prossiga:

![print32](https://thepracticaldev.s3.amazonaws.com/i/wedvat7ynzauzwpo861r.JPG)

Para exibir os pontos, será necessário usar o a função "str" para converter em string a variável "Pontos" do objeto "Texto":

![print33](https://thepracticaldev.s3.amazonaws.com/i/soqgc9jzw9ma46pul0bp.JPG)

A condição inicial do jogo ficou assim:

![print34](https://thepracticaldev.s3.amazonaws.com/i/0fx8pe4riffhzzx99rko.JPG)

Agora precisamos incrementar os pontos a cada vez que ocorre o contato do personagem com o sprite giratório, para isso aproveite a condição já existente e apenas adicione uma nova ação:

![print35](https://thepracticaldev.s3.amazonaws.com/i/jp61ah8tnbppmpyrbg41.JPG)

Selecione o objeto "Texto" e a opção "Adicionar a":

![print36](https://thepracticaldev.s3.amazonaws.com/i/hti21120w4aam661idxy.JPG)

Para a variável "Pontos", defina o valor 1:

![print37](https://thepracticaldev.s3.amazonaws.com/i/egmugbfqmduus2ysxb59.JPG)

Copie a ação adicionada à condição inicial para atualizar o placar:

![print38](https://thepracticaldev.s3.amazonaws.com/i/yrvsap1tg33vlzrz4qs8.JPG)

Agora faça várias cópias do sprite giratório e espalhe-as pelo layout:

![print39](https://thepracticaldev.s3.amazonaws.com/i/ut4tat616i87rib7wqr5.JPG)

Execute o jogo, colida com os sprites giratórios e o placar será incrementado:

![print40](https://thepracticaldev.s3.amazonaws.com/i/jqpd1mg45tz06vwmkbse.JPG)

# Conclusão

Construct3 mostrou-se um ferramenta excelente para desenvolvimento de jogos por iniciantes. O mínimo de programação foi necessário para exibir o placar.