Atividade 3 - Adicionando Controle de Teclado para Mover o Jogador
Agora, vamos permitir que nossa nave se mova quando o jogador usar o teclado.
O primeiro passo é criar um atributo cursor
no método create()
dentro de Scene2.js
:

A forma mais eficiente de criar o movimento é ter uma função auxiliar que use o atributo cursor
para verificar se alguma tecla foi pressionada.
Essa função já está criada para você e se chama movePlayer()
:

Usamos essa função para mover o jogador, e a chamamos dentro do método update()
para verificar o movimento a cada ciclo de atualização (isso também já foi feito para você).
Agora, vá até o método movePlayer()
e escreva o código que verifica as teclas pressionadas e move o jogador de acordo.
- Recomendamos uma velocidade de movimento de 200
- Use instruções
if
- Depois de criar os
if
, você pode perceber que o jogador continua se movendo mesmo após soltar a tecla.
Para corrigir isso, pense: quando nenhuma tecla está sendo pressionada, o que a nave deve fazer?
Agora teste! Você pode notar algo: o jogador consegue sair da tela, assim:

Isso acontece porque o Phaser usa um canvas infinito, que existe além da área visível da tela.
Podemos corrigir isso restringindo o jogador à tela com uma única linha de código:
this.player.body.setCollideWorldBounds(true); // impede o jogador de sair da tela
Encontre o método create()
da Scene 2:

Agora que o jogador está limitado à tela, você poderá mover a nave assim:
