Construindo um jogo de Plataforma - Guia para Iniciantes

3

Index

Tagged

Attached Files

The following files have been attached to this tutorial:

.capx

platform-tutorial-i.capx

Download now 608.15 KB

Contributors

Stats

20,830 visits, 27,721 views

Tools

License

This tutorial is licensed under CC BY 4.0. Please refer to the license text if you wish to reuse, share or remix the content contained within this tutorial.

Published on 30 Apr, 2017. Last updated 25 Feb, 2019

O Tim vai acabar desgastando os seus sapatos se ele continuar deslizando pelo chão, então a gente precisa fazer ele correr. Adicione outro event:

Condição: Player -> Platform: On moved

Ação: PlayerImages -> Set animation -> para a Animation, escreva "Running" (deixe a opção 'From' com o valor 'beginning')

Execute o layout de novo e perceba três efeitos não muito realistas:

- Ele corre pra trás em vez de se virar e correr pra frente.

- Ele continua correndo mesmo depois de bater numa parede.

- Ele continua correndo parado no mesmo lugar quando você para de pressionar as setas.

Para lidar com o primeiro problema, obviamente precisamos de outra animação mostrando o Tim correndo para o outro lado. O problema é que eu não fiz uma, mas a boa notícia é que você não precisa fazer também - graças a sabedoria do Construct 2, há uma forma muito fácil de fazer ele se virar e correr pra esquerda. Adicione outro event:

Condição: Keyboard -> Key is down -> pressione a seta para a esquerda

Ação: PlayerImages -> Set mirrored (na seção 'Animations') (deixe a opção 'Mirrored' como está)

Execute o layout de novo. Ah! Assim que o Tim começa a correr para a esquerda, ele continua correndo nessa direção, mesmo quando você faz ele correr pra direita. Adicione outro event:

Condição: Keyboard -> Key is down -> pressione a seta para a direita

Ação: PlayerImages -> Set mirrored -> e dessa vez escolha a opção 'Not mirrored'

Agora o Tim corre de forma muito mais realista - só que ele ainda continua correndo mesmo depois de bater numa parede. Adicione mais dois events:

Condição: Player -> Platform: Is by wall -> Side: left

Ação: PlayerImages -> Set animation -> escreva "Standing" (deixe a opção 'From' com o valor 'beginning'))

Condição: Player -> Platform: Is by wall -> Side: right

Ação: PlayerImages -> Set animation -> "Standing"

Agora o Tim fica numa pose mais realista quando ele bate numa parede. Mas isso acaba criando um efeito colateral indesejado. Você conseguiu ver? Sim, ele fica parado nessa posição quando você o movimenta para longe da parede. Não basta somente ver se ele está encostando numa parede antes de fazermos ele parar - precisamos verificar se ele está se mexendo ou não. Então precisamos adicionar uma segunda condição:

Clique com o botão direito na condição 'Platform has wall to left' e escolha 'Add another condition':

Condição: Player -> Platform: Is moving

Mas não é isso que queremos - queremos o contrário. Sem problemas - basta invertermos a condição:

Faça o mesmo para a condição 'Platform has wall to right'. Pronto!

Agora pra resolver o problema do Tim ainda correr parado quando você solta a tecla. Talvez a essa altura do campeonato você já consiga resolver sozinho esse problema:

Condição: Player -> Platform: On stopped

Ação: PlayerImages -> Set animation -> "Standing"

Finalmente, o Tim se movimenta (e para de se mover) de uma forma mais realista.

  • 0 Comments

Want to leave a comment? Login or Register an account!