Parte 6: Adicionando inimigos
Introdução
Agora que você tem moedas colecionáveis em seu jogo, é hora de adicionar alguns obstáculos para criar um desafio para o jogador.
Esta parte do guia baseia-se na Parte 5, que pressupõe que você tenha um personagem controlável, moedas colecionáveis e uma compreensão básica de como adicionar objetos à sua cena, do sistema de comportamento e das colisões.
Seu Primeiro Inimigo
Na biblioteca de Ativos, navegue de volta até o "Pacote Inicial de Plataforma" que você baixou na etapa anterior e selecione o Slime Rosa, em seguida, adicione a animação "Mover" ao dock.
Uma vez que o Slime Rosa é adicionado ao seu dock, arraste-o para fora do dock e coloque-o em sua cena.
Toque no slime que você acabou de adicionar à cena para abrir as Propriedades do Objeto, e então defina-o como um Objeto Físico.
Em seguida, a partir das Propriedades do Objeto, toque no ícone de colisões para abrir o editor de colisões. Precisamos diminuir ligeiramente a caixa de colisão ao seu redor para que nosso jogador não seja atingido muito cedo. Com seu dedo, mova o ponto verde nas laterais mais próximo do slime, em seguida, pressione o botão de marca verde para aceitar as mudanças.
Agora precisamos que o inimigo patrulhe um caminho. Para fazer isso, vá para os comportamentos do slime. Da categoria Objeto, adicione o comportamento "Patrulha".
Depois, a partir das Propriedades do Comportamento, você pode definir quão longe o slime deve se mover e quanto tempo leva para alcançar o destino desejado.
Na seção "Movimento", o valor de X é o quanto o inimigo se moverá ao longo do Eixo X (para a esquerda ou para a direita). Um número negativo indica que ele se moverá para a esquerda, um número positivo indica que ele se moverá para a direita.
Deixaremos o valor padrão (-6) por enquanto. Mas você pode mudar isso com base na sua cena e quão longe você deseja que o inimigo se mova.
Para diminuir a velocidade do inimigo, mudaremos a duração para 2 segundos. Isso significa que levará 2 segundos para se mover -6 metros.
Destruindo o Inimigo
Para destruir o inimigo, usaremos o sistema de tags no hyperPad. As tags permitem que você faça referência a múltiplos objetos sem precisar de comportamentos extras para cada objeto. Nesta situação, as tags nos ajudarão ao termos apenas que adicionar comportamentos para um único inimigo, e isso funcionará automaticamente para qualquer novo inimigo com a mesma tag. Você pode aprender mais sobre tags aqui: Tags de Objetos e Aplicando Comportamentos a Objetos Marcados.
Então, vamos começar marcando nosso Slime Rosa. Primeiro saia do editor de comportamento e volte para o editor principal. Em seguida, selecione o Slime Rosa para visualizar as propriedades do objeto.
A partir do fundo das propriedades do objeto, selecione a aba "Tags" (É a última aba na parte inferior).
Para adicionar uma tag, insira um nome no campo de pesquisa na parte superior. Certifique-se de escolher tags que sejam fáceis de lembrar. Para este tutorial, usaremos simplesmente a tag "Inimigo". Em seguida, pressione o botão + para adicionar a tag.
Agora podemos prosseguir para adicionar nossos comportamentos. Desta vez, selecione o personagem do jogador e NÃO o inimigo. Em seguida, abra os comportamentos para o personagem do jogador.
Na categoria Objeto, adicione um comportamento "Colidido", em seguida, selecione-o para visualizar as propriedades do comportamento.
Nas propriedades do comportamento colidido, desligue todos os toggles, exceto "Em Cima". Isto é para que o comportamento colidido só desencadeie um evento quando nosso jogador tocar a parte de cima do inimigo.
Em seguida, na parte inferior das propriedades do comportamento, mude para a aba Tags. Então selecione a tag Inimigo que adicionamos anteriormente. Um ponto verde ao lado da tag significa que ela está selecionada e ativa. Agora, em vez de desencadear um evento ao tocar um inimigo específico, ele desencadeará um evento ao tocar a parte de cima de qualquer objeto que tiver a tag de inimigo.
Agora, da categoria Objeto, adicione um comportamento "Desabilitar Objeto" e conecte-o ao colidido, isso fará com que o inimigo pare de patrulhar e interagir.
Mais uma vez, mude para afetar apenas a tag Inimigo. Dado que tanto a colisão quanto o objeto desabilitado têm a mesma tag, apenas aquele objeto colidido específico será desabilitado, e não todos os outros objetos com essa mesma tag.
Em seguida, para dar um pouco mais de polimento ao jogo, faremos com que o inimigo pareça diferente quando for esmagado. Adicione um comportamento "Executar Animação" da categoria FX e conecte-o ao Desabilitar Objeto.
Então toque na área onde diz "Selecionar Animação". Navegue até o slime rosa na biblioteca de ativos e escolha a animação "Acertar".
Mais uma vez, mude o comportamento para que ele afete apenas objetos com a tag Inimigo.
Agora adicione um comportamento de espera e conecte-o ao comportamento Desabilitar Objeto (ao lado da animação de reprodução) e defina para um tempo muito curto, como 0,25 segundos.
Finalmente, adicione um comportamento "Destruir Objeto" da categoria objeto e conecte-o à espera que você adicionou anteriormente. Em seguida, mais uma vez, defina-o para a tag Inimigo. (note na imagem abaixo que o Desabilitar foi renomeado para "8")
E é isso! Agora você tem um inimigo que pode ser destruído.
Criando um desafio
Agora é hora de fazer com que o inimigo tenha a habilidade de destruir você e acabar com o jogo.
Ainda nas ações do jogador, adicione um novo comportamento de colisão. Desta vez, apenas desative o botão de alternância de Em Cima nas propriedades do comportamento de colisão. E mais uma vez, certifique-se de que a tag de inimigo esteja selecionada.
Em seguida, adicione um comportamento de Destruir Objeto e conecte-o ao colidido. Como você está nas ações do jogador, ele está automaticamente configurado para destruir o jogador.
Finalmente, adicione o comportamento "Carregar Sobreposição" da categoria Cena e conecte-o ao comportamento Destruir Objeto que você adicionou anteriormente.
Uma sobreposição é como uma cena especial, que pode rodar sobre sua cena atual. Essas são frequentemente usadas para menus, telas de pausa ou telas de game over. O hyperPad vem incluído com 2 sobreposições já criadas. Uma para um menu de pausa e outra para uma tela de game over. Você pode modificar essas para atender às suas necessidades, a partir do Menu do Projeto. Você pode ler mais sobre Cenas e Sobreposições pesquisando os tópicos no manual.
A partir das propriedades do comportamento Carregar Sobreposição, toque em "Selecionar Sobreposição". Então, da lista que aparece, selecione a sobreposição "Game Over" fornecida pelo hyperPad.
E é isso! Agora, quando você colidir com seu inimigo, o jogador desaparecerá e a tela de game over aparecerá, permitindo que você reinicie a cena.
Neste ponto, você pode adicionar mais inimigos ao seu nível. Basta se certificar de que os marque como Inimigo.

