🤔 Para Refletir :
"Pare de pensar nos erros do passado e comece a planejar os erros do futuro!"
- Ricky O Bardo

RPG Maker VX Ace DR - TUTORIAIS: Criando projéteis [RMVXA][RMVX][RMXP]

Driko

Cidadão
Membro
Membro
Juntou-se
21 de Junho de 2015
Postagens
163
Bravecoins
39
jZVcsmr.png

Introdução:

O tutorial da vez é:"Criando Projéteis".
Mas... Driko o que é um projétil? Projétil é um objeto que pode ser arremessado, exemplo: Flechas, skills, balas. O que acontecerá no sistema? Simples, iremos definir uma tecla que será responsável por arremessar o projétil para a direção que definirmos, e também a colisão entre nosso projétil e algum outro objeto no mapa.


1° Passo:

Crie um evento comum em processo paralelo, e crie também uma switch que irá ativar o sistema, logo após crie uma condição, em condições na "ABA 4" tem lá pressionar tecla marque e coloque a tecla X ("a" no teclado), agora no meio dessa condição crie uma nova switch que será responsável por ativar o disparo do projétil,  ficando mais ou menos assim!
wIhdapo.png


2° Passo:

Vá ao mapa e ative a switch responsável por ativar o sistema, e logo após crie outro evento chamado Projétil e o associe a segunda switch criada, que era a responsável pelo disparo do projétil e agora iremos trabalhar em cima desse segundo evento.
No segundo evento em condições marque a segunda switch, não coloque nenhum gráfico, mude a "Velocidade e Frequência" para "Muito Rápido e Muito Alta" em opções marque a 1° e 4° caixinha e coloque em processo paralelo ficando assim!
jCCaekO.png


3° Passo:

Agora no evento "Projétil" vamos criar duas variáveis que vão ser responsáveis de armazenar as coordenadas x e y do char em relação ao mapa, então crie duas variáveis "Char Coor X" e "Char Coor Y", agora em cada uma das duas você irá ir em "Controle de Variável" e associar a variável a informação do jogador no mapa,  vá em informações >> jogador mapa x >> Personagem:Jogador >> Mapa: x e faça o mesmo com a "Variável Y", após isso adicione o comando "posição de evento" marque "Especificar por variável" e marque as duas variáveis que acabamos de criar ficando assim!
SHMSrZa.png


4° Passo:

Agora vamos configurar o direcionamento do char e as direções para onde o projétil poderá ser atirado , (esquerda, baixo, direita, cima).
Vamos lá, crie uma condição e nessa condição vá na "ABA 3" e marque "Personagem" e coloque o jogador e logo abaixo em direção coloque "ESQUERDA". Agora no meio dessa condição adicione o comando "Mover Evento" , marque como "Este evento", em opções marque "Ignorar se possível" e "Aguardar até o fim", vamos aos comandos de movimento, selecione "Mudar Gráfico" e escolha algo para o disparo eu escolhi o "!Flame", coloque um "Mover à Esquerda" e coloque uma distância para o projétil percorrer, botarei cinco passos a frente, portanto cinco  "Avançar um passo", e por fim desative a switch responsável pelo disparo do projétil, ficando assim!
HVrOtaN.png

5° Passo:


Faça o mesmo procedimento com as direções restantes (baixo, direita e cima), ficando assim!
BvyoQeO.png


Agora vamos fazer a colisão entre o projétil feito e algum objeto no mapa, irei usar um monstro como exemplo.

1° Passo:
Crie um evento com o nome de "Boss", irei fazer um exemplo com o inimigo imóvel, coloque o evento "Boss" em "Processo Paralelo", vamos trabalhar com quatro variáveis então vamos lá, crie quatro variáveis ("Boss X", "Boss Y", "Projétil X" e "Projétil Y") agora vamos associá-las a suas coordenadas no mapa ficando assim!
J0IUTcj.png


2º Passo:

Agora vamos criar duas condições, vamos a primeira delas, crie uma condição na "ABA 1" marque "Variável" e coloque "Boss X" >>"Igual a" e marque novamente "Variável" e coloque "Projétil X", ficando assim "Boss X = Projétil X" e o mesmo com a coordenada Y.
aBK1nZm.png


3° Passo:

Agora vamos criar o efeito que acontecerá se o "Projétil" acertar o evento "Boss", vamos lá !
No meio dessas duas condições vamos adicionar o comando "Mostrar Animação" marque "Este Evento" e coloque a animação "[Luta/Fogo]", agora em "Opções de Switch Local" coloque a "A=ON", agora crie uma nova "ABA", nessa nova aba em "Opções" marque a caixinha "Switch Local :A=ON", coloque a segunda "ABA" também em "Processo Paralelo" e adicione um comando de evento "Apagar Evento Temporário" ficando assim!
sffpJlG.png


É algo simples, fácil. Porém, pode haver alguém que ainda não saiba como funciona. Ficou enorme porque não soube explicar, então deixarei o download logo abaixo.  :XP:


Download:
[descarga]http://www.mediafire.com/download/7w0dds5yjaz7ahe/STR+-+TUTO+PROJ%C3%89TEIS.exe[/descarga]
 
[member=17]Haru[/member]: Valeu mano, realmente é uma mão na roda para quem pretende fazer um ABS por eventos.  :XP:
----------------------------
[member=123]Aspirante[/member]: Lisonjeado, agradeço o feedback positivo!  :XD:
 
Valeu Driko,

gostei de como você distribuiu os passos, os detalhes adicionais,

até caprichou nas cores, pra ajudar no entendimento,

que no caso, ficou tudo bem claro, eu lembro que foi de um tutorial parecido com esse,

de onde eu tirei muita coisa, até hoje sou super agradecido por ter visto aquele tutorial,

a gente nunca para pra pensar como isso realmente pode ser importante xD



 
Cara, gostei muito do tutorial. Muito bem explicado e com exemplos práticos e diretos.
Tem mais algum tutorial seu assim por aki?

Ai eu estava pensando em usar isso em um ABS mesmo, e queria saber como eu poderia usar para que o boss não morresse com um só golpe. Acho que acabou ficando assim no seu certo?
Estou pensando em um minigame dentro do meu jogo que seria de tiro ao alvo e que o seu sistema ficaria perfeito. Hehe.

Parabéns!!!
:Okay_fix:
 
- Obrigado [member=262]Yzarck[/member]!  :^-^:

Então, no exemplo eu ensinei só a colisão entre o objeto e o projétil, e o efeito simples foi o evento apenas sumir com uma animação, no seu caso você pode usar uma variável tipo assim:

Durabilidade do alvo
Variável: Durabilidade do alvo = "x"

Se o projétil atingir o alvo
Variável: Durabilidade do alvo = -1

É simples, espero que dê para entender, qualquer coisa só mandar PM, até!  :Okay_fix:
 
Voltar
Topo Inferior