Centro RPG Maker

Centro de Recursos => Sistemas por Eventos => Tópico iniciado por: Lincoln online 15/01/2015 às 16:06

Título: Usando eventos comuns em batalha
Enviado por: Lincoln online 15/01/2015 às 16:06
Usando eventos comuns em batalha

:linha3:

Aposto que existem muitas pessoas que nunca pensaram nisso, porém, com um pouco de criatividade e raciocínio, dá pra fazer muitas coisas legais com isso. Nessa aula mostrarei como fazer a seguinte habilidade, através de eventos comuns na batalha, retirada do jogo League of Legends:

Marca um inimigo. Após x turnos, o(s) inimigos receberá(ão) y% do dano causado ao inimigo marcado.

PS.: As letras indicam um número que pode ser escolhido aleatoriamente. Para esta aula, utilizaremos 3 turnos e 50%, e o dano causado será para todos. (a chamaremos de marca fatal)
PS².: Eu editei a descrição da habilidade para ficar compatível com o RPG Maker e mais fácil de compreender.

:linha3:

Então, a primeira coisa que devemos imaginar é como faremos isso. Sabemos que teremos que checar a vida do inimigo marcado. Para isso, devemos saber, também, qual foi o inimigo que o herói escolheu. Para checar usamos condições, então temos que saber que condição podemos usar para ver qual inimigo o herói escolheu. Veja:

(http://i.imgur.com/pfKNvQj.png)

Está vendo? O jeito que temos de verificar o inimigo, é vendo se ele foi infligido com um status, então, colocaremos nos parâmetros para infligi-lo com o mesmo, e depois para ativar o evento comum que utilizaremos:

(não esqueça de colocar que o status da Marca Fatal se dissolva após três turnos)

(http://i.imgur.com/Gif3azH.png)

Agora teremos que configurar nosso evento comum. Primeiro, devemos saber qual é a vida que o inimigo tinha antes dos três turnos se passarem, para isso, basta igualar uma variável ao seu HP atual.

(http://i.imgur.com/OLCkh8I.png)

Veja bem que eu tive que usar uma variável adicional para indicar o inimigo marcado, pois, se for perceber, após o status acabar, não teríamos meios comuns de saber qual foi o inimigo marcado. Veja que também adicionei um switch para indicar que existe um inimigo marcado e fiz o herói esquecer a habilidade temporariamente para evitar possíveis bugs.

:linha3:

O nosso próximo passo será fazer um evento comum para checagem, e uma habilidade para realizar o dano global.
Para fazer o evento comum, é bastante simples. Basta fazermos condições para conferir se o inimigo marcado ainda está com a marca infligida, veja:

(http://i.imgur.com/ld450Pg.png)

Note que utilizei labels para deixar o código mais limpo.
Preste atenção na condição que fiz, se o HP antes dos três turnos é maior que o HP após os três turnos, ele executará o comando, caso contrário, não tem porquê conjurar a habilidade, pois ou os inimigos receberão dano nulo, ou serão curados. (caso tenham utilizado magia de cura entre os três turnos)
Após isso, desliguei a switch que ligava a checagem e coloquei para o herói aprender a habilidade novamente.

Agora veremos como fazer a habilidade de dano:

(http://i.imgur.com/KpynEJ6.png)

Basta diminuir o HP anterior com o HP atual e colocar a habilidade para acertar todos, e feito.

:linha3:

O último passo consiste em colocarmos a checagem dentro da batalha, veja:

(http://i.imgur.com/0lMzb4G.png)

Assim, temos uma habilidade customizada. Você pode utilizar esta técnica de checagem de inimigo selecionado por status para fazer outras coisas bem legais.

Bom, é isso, esse exemplo foi só para mostrar a vocês como utilizar eventos comuns podem tornar as habilidades mais dinâmicas. Espero que tenham gostado, e até mais! :XD:
Título: Re: Usando eventos comuns em batalha
Enviado por: Zackh online 25/01/2015 às 10:49
Eventos comuns são os scripts dos programadores por eventos. Dá literalmente para fazer muita coisa via evento comum, quanto antes se aprende a usá-los melhor. Bacana a aula Lincoln!
Título: Re: Usando eventos comuns em batalha
Enviado por: Akira! online 25/01/2015 às 16:42
Realmente é uma boa usar os eventos comuns!
Bom tutorial!