Criando um jogo de Plataforma: Parte 5 (Configurações finais)

Estamos nos aproximando do final desse tutorial, agora que você já tem os recursos certos, sabe mapear pelo menos o básicos para um jogo de plataforma, sabe criar sprites, e tem uma noção básica dos comandos envolvidos no decorrer desse tutorial.
Aprendeu a criar inimigos que podem ser mortos, ou causarem danos, e também obstáculos.
E agora é hora das configurações finais, onde como prometido, irei ensinar a criar plataformas em movimento, ajustar sua barra de vidas, e demais outras coisas...
Vamos por partes, como de costume:

• Criando plataformas em movimento: Como muitos sabem, quase todo jogo de plataforma, temos um sistema desses, onde o player fica sobre uma plataforma, e a mesma o movimenta conforme sua rota.
Temos o prazer de ter um script que permite criar uma plataforma que se movimenta, graças ao meu amigo scripter, Gab, que desenvolveu esse script para ser adaptado com o script de simulador de plataforma do Sweet Liar.
Vamos começar a configuração dela por ser a mais simples:

Crie a plataforma no mapa (criando um novo evento, ponha o gráfico da plataforma, e deixe em direção fixa e processo paralelo)
Agora em comandos de eventos coloque o comando de gravidade zero (se a plataforma estiver no ar, do contrário, não será necessário) e logo abaixo, crie uma nova switch ponha o nome de ''plataformamove'' ou o nome que desejar.
Crie uma nova página nesse mesmo evento, ligue a swtich ''plataformamove'' nesta página.
Coloque o mesmo gráfico da plataforma, deixe em direção fixa; atravessar; e alta prioridade (essas informações são muito importantes, para que a plataforma funcione corretamente!) deixe a freq em 4.
Deixe iniciar quando em ''pressionar tecla'' e dentro dos comandos de eventos, coloque um comentário assim: PLATAFORMA
Tudo em letras maiúsculas.
Pronto, seu evento agora é uma plataforma em movimento, agora para fazer com que ela se movimente, basta ir na opção ''tipo'' e colocar sua rota (ex: esquerda para direita)
Agora quando o player ficar sobre essa plataforma ela vai levar o herói junto com ela sobre sua rota, e irá solta-lo quando sua rota terminar:



Pronto, criamos nossa plataforma em movimento, agora iremos criar um siteminha de ''mola'' desenvolvido por mim, para esse tutorial:

Sistema de mola: Esse sistema de mola é muito útil e divertido para quem está jogando seu jogo.
O personagem pula nessa mola e vai para cima com toda a velocidade e depois, se não estiver numa superfície sólida, ele cai com o mesmo impulso que subiu.
Sua configuração é simples:

Crie um novo evento no mapa (ele será a mola) e coloque o gráfico que desejar.
Ponha em inciar quando em processo paralelo.
Agora é hora de configurar os comandos de eventos.
Crie 4 vars (isso você já está cansado de fazer) duas com as coordenadas X e Y do herói e duas com as coordenadas desse evento, que será nossa mola.
Crie aquele esquema de condições, que se a var da coordenada X do heroi estiver na var da coordenada X do evento da mola, e a var da coord Y do heroi e coord Y da mola estivem juntas, os comandos aconteçam:


Agora a baixo dessas condições, coloque os efeitos da mola:
Colocarei para que uma SE de som de mola seja reproduzido, e logo em seguida o heroi seja jogado para cima com força e velocidade, para isso chamei o comando mover evento.
Mas antes de jogar o herói para cima, precisamos fazer com que, o comando saiba quando o player está virado para a esquerda ou direita.
Chame o comando condições e em sua aba 3, ponha> personagem>> personagem>> direção esquerda.
Agora dentro desta condições, coloque o comando mover evento (este evento) olhar à esquerda.
Depois te ter feito isso, chame o comando de mover evento novamente, agora sim podemos fazer com que o personagem seja arremessado, para isso coloque dentro do comando mover evento assim:
Mover evento>> personagem;
Olhar à esquerda;
Mudar Gráfico do personagem (escolha o dele pulando);
Mudar velocidade: 6 - Mudar frequencia: 6;
Coloque mover acima, quantas vezes você achar necessário;
Agora em mudar gráfico do personagem, escolha o dele caindo;
E coloque a mesma quantidade de ''mover abaixo'' que você colocou no ''mover acima''
Agora mude a freq e vel para 4, e coloque o gráfico do personagem correndo.
Desmarque as opções ''ignorar se bloqueado'' e ''repetir operação''
Depois dê ok, e coloque o comando de evento: esperar fim de movimento.
Seu evento deve estar mais ou menos assim:



Faça o mesmo processo outra vez, só que dessa vez com a direção direita.
Acabou! seu evento de mola está pronto! Rode seu jogo e veja como ficou!
Bem realista, não? não fica com a aparência de que o heroi está flutuando, ao invés de ter ser sido jogado para cima, pelo contrário...
Duas dicas sobre esse sistema:
1º Não use esse sistema quando o comando de enterrada estiver ativo (ou seja, não use o comando de enterrada no mesmo mapa aonde está o sistema de mola) pois o mesmo pode dar um bug na hora do personagem pular na mola e ser arremessado.
2º Não coloque a mola logo abaixo de plataformas, deixe sempre esse sistema, aonde acima dele estará livre.

Agora iremos aprender como ajustar a sua barra de vida.

Lembra-se de que postei no início desse tutorial o script de barra de vidas? então, hora de usa-lo.
No meu jogo teremos a barra de energia que será representada pelo Hp do herói e a barra de vidas que será representada pelo Mp do herói (você pode fazer o inverso também)
O que acontece é o seguinte: No meu jogo o player começa com a barra de energia em 300, que será representada pela figura de um coração, já que são 300 de hp e o script da HUD lê cada imagem valendo 100, o personagem então começa com três corações (pura matemática) acho que isso seria meio óbvio.
O Hp máximo no database do meu personagem é 600, ou seja, o player começa com 300 de Hp, porém, ele pode pegar no decorrer do jogo, algum item que lhe dê energia e aumente sua vida, e seu máximo será 600 de Hp (representado na HUD por seis corações)
No script da Hud, você pode alterar o nome das imagens que serão a sua barra de vida e energia, basta editar as linhas 17 e 18, e colocar o nome que quiser, para que o script reconheça as imagens (as imagens devem estar na pasta pictures do seu projeto!)

Para criar sua barra de vidas com a imagem que quiser, basta criar um novo documento no seu editor de imagens com essas medidas: 173x26 e fundo transparente.
Agora dentro desse documento que você acabou de criar, desenhe ou coloque a imagem do que você desejar, que represente sua barra de energia do personagem:


Obs: Coloque a quantidade de figuras que representam a energia do seu personagem, de acordo com o número máximo de Hp dele.
Ex: Meu personagem tem o máximo de 600 de Hp, então irei colocar na imagem, 6 corações, se fossem 700 de Hp máximo, eu colocaria 7 corações, e assim por diante...
Agora salve a imagem no seu computador, e coloque o nome dela, o mesmo nome que está no script.
Importe essa imagem para o resource manager na pasta pictures no seu projeto, e pronto!
Sua barra de energia está pronta.
O mesmo você fará com sua barra de vidas, coloque a imagem que você quiser, só que não uma igual a da barra de energia, para diferenciar energia de vida.
As medidas para a barra de vida são: 171x22.


Agora, o que acontece com a barra de energia é o seguinte: o personagem no meu jogo, começa com 4 vidas e três de energia (300 de hp e 400 de mp), se ele chegar a zero em sua barra de energias, ele perde uma vida, então ele ficará com 300 de hp novamente e 300 de mp (três vidas), e assim por diante, ate´que, se ele perder 300 de hp e perder todas as vidas, o jogo dará game over.
Para que isso aconteça iremos criar o sistema de vidas, desenvolvido por mim, especialmente para você.

Toda fase teremos um mapa para ela, o mapa ''dead''.
O que isso quer dizer?
Assim: temos o mapa 1 que é a fase 1, então iremos criar mais um mapa para essa fase, nesse mapa o personagem será teleportado, e perderá uma vida, esse é o mapa da morte, digamos assim, depois de perder a vida, ele volta para o mapa anterior, só que com uma vida faltando.
Essa vida nós perdemos quando a barra de energia chega a zero, então para fazer que quando o player fica com 0 de Hp, ele seja teleportado para esse mapa e perca 100 de Mp, faça o seguinte:
Crie um evento fantasma no mapa, em processo paralelo, crie uma nova var para o personagem, e coloque a opção operando em heroi >> Hp.
Agora, chame o comando condições e selecione a var que acabou de criar, feito isso coloque a constante em 1 e menor/igual.
Dê ok. Na condição ponha para que o player seja teleportado para o mapa ''dead'', nessa opção de teleporte, marque a opção ''invisivel'' em não, seu evento deverá estar assim:

Nesse mesmo evento, criaremos a condição de que quando o player tiver zero de Mp (vida) o jogo dê o game over, para isso faça o mesmo processo do Hp, só que escolha uma var diferente, e em operando heroi, coloque Mp, e ao invés de, nas condições colocar o teleporte, chame o comando de game over.
Seu evento deve estar mais ou menos assim:


Agora é hora de configurar o mapa que nos tira uma vida, o mapa dead.
No mapa dele, deixe o que quiser, eu coloquei para que quando o player fique com zero na barra de energia, e seja teleportado para o mapa dead, uma imagem do personagem caído no chão apareça, e toque uma música de derrota, após essa imagem, o personagem perde uma vida, e volta para o mapa aonde ele estava, coma sua barra de energia cheia novamente.
Criei um evento fantasma, em processo paralelo, que mostra a imagem do personagem caído.
Depois, criei mais outro evento nesse mapa, em inicio automático e nele coloquei:
Mudar gráfico do personagem>> nada, para que ele não apareça nesse mapa.
Desativei a switch do som de pulo e ataque do heroi (caso o jogador aperte para pular nessa tela, o som não será reproduzido, porém, com a switch do evento comum do som ligada, se o jogador apertasse a tecla de pulo, iria ouvir o personagem pulando, e isso seria um tanto estranho)
Coloquei mudar Hp do heroi em constante 300, para que o personagem tenha sua barra de energia cheia outra vez.
Coloquei para diminuir o Mp do personagem em constante 100, para que ele perca uma vida.
Coloquei a SE da música de derrota.
E depois esperar 180 frames.
Agora coloquei para que a switch do som do pulo e ataque do personagem fique on novamente, coloquei o teleporte para a fase que estavamos anteriormente, coloquei a opção deletar imagem 1 (para que a imagem do personagem caído seja deletada depois que voltar pro antigo mapa) mudar gráfico do personagem>> o gráfico dele correndo novamente, e por fim o apagar evento temp. para que esse comando seja ativado outra vez, quando voltarmos para esse mapa de novo, seu evento nesse mapa deve estar maus ou menos dessa forma:


Sua fase de morte está pronta, agora cada vez que o personagem ficar com a barra de energia em zero, ele será teleportado para esse mapa, aonde irá perder uma vida, e encher sua barra de energia.
Se perder todas as vidas, dará game over!

Lembre-se de criar um mapa de dead (morte) para todas as fases do seu jogo, com os mesmos comandos, só mude o teleporte:


Prontinho, barra de energia ajustada, e sistema de vidas pronto.

Nossas configurações chegaram ao fim, agora você pode criar seu jogo de plataforma com minhas dicas e tutoriais, e ainda inventar seus próprios sistemas para incrementar seu jogo de plataforma!

Só uma pequena observação:
Não é legal num jogo de plataformas, deixar o menu do rpg maker aparecer, para evitar que o player aperte esc e o menu apareça, crie um novo evento comum com a opção ''impedir menu'' e ligue a switch desse evento comum em algum local do mapa, e pronto!

A parte de configurações de eventos, chegou ao fim, resta-nos agora ficar com a parte de midis que é muito interessante, que se encontra na parte 6 desse tutorial.
Nos vemos por lá.

Qualquer dúvida com essa parte do tutorial, entrar em contato.




0 comentários:

Postar um comentário

 
Depósito de Sistemas&Tutoriais © 2013 | Plantilla diseñada por Ciudad Blogger