Aula Extra 2 - Criando seu ABS básico
- Código:
Criado por Keven Fongaro Fonseca(Sasuke_Uchiha)
Dessa vez eu demorei para fazer aula, mas valeu a pena (eu acho), pois dessa vez estarei ensinando a fazer um dos sistemas mais dificeis de ser feito por eventos: o ABS (significa Action Battle System), eles são aquelas batalhas que acontecem no próprio mapa, em que o herói é livre para se movimentar durante a batalha.
Sem mais delongas, vamos a aula. O ABS simples é feito da seguinte forma:
Criaremos um evento (que será o inimigo), que está para ativar quando "Tocar Herói", e contem os seguintes comandos:
Operação de variavel com: (3 variaveis - 3 comandos [do mesmo])
1 para armazenar o HP do inimigo.
1 para armazenar o Ataque do inimigo.
1 para armazenar o Ataque do Herói.
Então crie elas e nomei-as de modo que seja facil de identifica-las.
Abaixo desses comandos, ativaremos outra pagina com um Switch Local.
Na página que é ativada pelo switch, estará em "Tocar Herói" para ser iniciada, e será feita da seguinte forma: uma condição, uma condição de tecla, caso esta tecla seja precionada (a tecla de ataque), uma variavel que armazena o HP do inimigo terá seu valor diminuido pelo ataque do herói, e uma animação é mostrada no inimigo (uma animação de golpe). Caso a tecla não seja precionada, o herói tem seu HP diminuido pelo ataque do herói, e uma animação de ataque é mostrada no herói.
Veja como ficou o evento:
1º página:
2º página:
Este é o basico, mas e agora, como o inimigo morre?
Simples: Criaremos uma condição, para o caso de seu HP ser menos ou igual a 0, ativa uma switch local, que ativa uma pagina vazia. Tudo isso deve estar dentro do ataque do herói (dentro da condição), logo abaixo da animação. Mas por que? Para que sempre que o herói ataque o inimigo, e ele receba dano, o sistema verifique se ele tem o HP menor ou igual a 0.Veja como está a 2º página do nosso evento:
Creio que a página vazia não precise de imagem.
Nosso ABS ja está quase completo, mas existe um recurso que não vem no Rpg Maker XP, e por isso é preciso faze-lo manualmente: usando os recursos de "Mudar HP" não conseguimos fazer o HP do herói chegar a 0, por isso ele não morre, o seu HP só chega a 1, por isso precisamos fazer com que o herói morra quando seu HP chegar a 1, faremos isso da seguinte forma:
Dentro da condição de ataque do inimigo (na exceção do ataque do herói [quando estiver precionando a tecla de ataque), colocaremos uma Operação de Variavel, e criaremos uma variavel que terá seu valor igual ao HP do herói, logo abaixo, uma condição para o caso dessa variavel ser igual ou menor a 0, chamaremos o Game Over. Veja:
Agora vamos lá, teste o jogo (Pressione F12), encoste no evento do inimigo e pressione ENTER ou ESPAÇO, uma animação de ataque apareceu nele, não ataque e receberá dano, e poderá morrer se seu HP chegar a 0.
Nosso ABS ja está feito, agora podemos customiza-lo, colocando animações de ataque e coisas do tipo, vamos colocar uma animação de ataque (o char irá cortar o ar com uma espada quando for atacar), faremos da seguinte forma:
Primeiro salve esse char:
Agora acima do comando que diminui o HP do inimigo (operação de variavel), colocaremos um "Mover Evento", e criaremos uma animação usando 2 comandos que existem no "Mover Evento":
Mudar Gráfico
Esperar
Veja:
(sim, eu notei os erros nos quadrados vermelhos, mas ela é só um exemplo e não irá interferir em nada da qualidade do ABS, aliás, ela não será usada em nenhum momento, apenas para explicações)
Não é preciso salvar essa imagem
Veja que eu dividi ela em vários quadros, cada um deles é chamado de "Frame", cada frame da imagem é alternado rapidamente, criando uma animação de movimento quando o personagem, o que nós faremos é fazer a animação de ataque pelo "Mover Evento", como se fosse uma animação de movimento, veja como será o esquema base:
Mudar Gráfico: 1º frame da animação de ataque
Esperar : 2 frames (tempo que o 1º frame ficará na tela)
Mudar Gráfico: 2º frame da animação de ataque
Esperar : 2 frames (tempo que o 2º frame ficará na tela)
Mudar Gráfico: 3º frame da animação de ataque
Esperar : 2 frames (tempo que o 3º frame ficará na tela)
Mudar Gráfico: 4º frame da animação de ataque
Esperar : 2 frames (tempo que o 4º frame ficará na tela)
Faça isso e coloque abaixo o comando "Esperar fim de movimento", ele fará com que os outros comandos de eventos só sejam lido pelo Rpg Maker depois que todas as ações do "Mover Evento" sejam concluidas. Pronto, agora nosso herói ja estará cortando os ares com sua espada. Mas se você testar, irá perceber um bug, depois do ataque o gráfico do herói não volta ao gráfico original, ele estará sempre com o gráfico da espada cortando o ar. Para isto ser resolvido basta colocar um comando Mudar Gráfico, alterando o gráfico do herói para o seu gráfico original, ele deve estar abaixo do "Mostrar Animação". Veja agora como ficou o nosso evento.
Teste o jogo (Pressione F12).
Bem legal, não?
Bom, acho que com isso ja da para se ter uma boa noção de como é feio um ABS, ja que esse é bem basico, mas você ja pode modifica-lo a seu gosto, colocando animações de ataque do inimigo, colocando animações de dano no herói e inimigo, etc. Assim sendo, chegamos ao fim de mais uma aula, se você leu até aqui, muito obrigado, e boa sorte com seus eventos.
Clique aqui para baixar o ABS que foi feito com essa aula.