10 de setembro de 2014

Top-Down Shooter - Munições

Em jogos Top-down Shooter é comum que, para conseguir mais munição, tenhamos que pegar os itens, que aparecem randomicamente na fase, passando por cima deles (o tópico já foi abordado em Tutorial sobre Power-Ups, mas com outro objetivo). Este tutorial tem como objetivo explicar como criar esses itens, além de ensinar também como gastar muniçãorecarregar.

Para este tutorial vamos considerar que botão esquerdo do mouse atira, botão direito do mouse recarrega e pegamos munição quando passamos sobre o item, um cartucho possui 5 balas, podemos carregar apenas 10 cartuchos e podemos ter 5 balas carregadas na arma.

obj_jogador

Create Event

balas_arma = 5
cartuchos = 0
balas = 1
cartuchos_maximo = 10

Step Event

cartuchos = balas/5

obj_cartucho

Create Event

balas = 25

Collision Event <> obj_jogador

if obj_jogador.cartuchos < obj_jogador.cartuchos_maximo
{
   obj_jogador.balas += 1
   balas -= 1
}
if balas = 0
{
   instance_destroy()
}

É impossível fazer um código padrão que atenda a necessidade de todos, devido as particularidades de cada jogo. Neste exemplo o personagem pegará balas até que todos seus 10 cartuchos estejam completos ou que terminem as balas disponíveis no cartucho encontrado. Outros podem preferir que apenas seja possível pegar cartuchos, não sendo possível pegar as balas separadamente.

Para recarregar a munição podemos utilizar o seguinte código:

if mouse_check_button_pressed(mb_right) && cartuchos > 0
{
    balas -= 5 - balas_arma
    balas_arma += 5 - balas_arma
}

Isso fará com que as balas fora da arma sejam transferidas para ela, apenas se tivermos alguma bala sobrando. Se tentarmos carregar uma arma já carregada nada acontecerá pois o resultado será da conta será 0.

Para gastar munição basta adicionar balas_arma -= 1 dentro do código de disparo, que já foi criado no Tutorial sobre Projeteis - Top-Down Shooter.

Nenhum comentário :

Postar um comentário