🤔 Para Refletir :
"Saber a hora de parar é quase tão importante quanto saber a hora de começar."
- Ricky O Bardo

[Tutorial] Criando um Sistema de Bombas Similar a Legend of Zelda: A Link to the Past

Gui Masculino

Cidadão
Membro
Membro
Juntou-se
09 de Julho de 2022
Postagens
141
Bravecoins
283
Motor de jogo
RPG Maker MV
Neste tutorial, vamos criar um sistema de bombas, similar ao de Zelda: A Link to the Past. Este sistema permitirá ao jogador colocar bombas no mapa, que explodirão após um tempo, podendo abrir passagens secretas ao interagir com rachaduras.

Plataforma: RPG Maker VX Ace (também compatível com MV/MZ e possivelmente versões anteriores ao VX Ace que tenham a feature de Script Call)

Preparações​

Criação do Item:
  • No banco de dados, crie um item chamado "Bombas".
1722030591668.png

Variáveis:
  • Crie duas variáveis: PlayerX e PlayerY.

Passo 1: Criando o Evento de Bombas​

  1. Evento de Bombas:
    • Crie um evento no canto superior esquerdo do mapa, chamado "Bombas".
    • Utilize um gráfico de bola preta para representar a bomba.
    • Ative a opção de Switch Local A.
    • Configure o evento como direção fixa e atravessar.
    • Defina o evento para iniciar em processo paralelo e adicione um comando para esperar 1 quadro.
1722030644636.png


Passo 2: Criando o Evento para Lançar a Bomba​

  1. Evento da Bomba:
    • Crie um segundo evento, chamado "Evento da Bomba".
    • Configure-o para rodar em processo paralelo.
    • Adicione um comando para esperar 1 quadro.
  2. Verificando a Ação do Jogador:
    • Insira uma condição para verificar se a tecla Q está sendo pressionada.
    • Dentro dessa condição, adicione outra para verificar se o jogador possui o item Bombas.
  3. Definindo a Posição da Bomba:
    • Configure a variável PlayerX para obter a posição MapaX do jogador.
    • Configure a variável PlayerY para obter a posição MapaY do jogador.
  4. Movendo o Evento de Bombas:
    • Mude a posição do evento "Bombas" para as variáveis PlayerX e PlayerY.
  5. Explosão da Bomba:
    • Utilize a seguinte script call para ativar a Switch Local A: $game_self_switches[[ID do Mapa, ID do Evento, 'A']] = true
    • Espere 120 quadros.
    • Utilize a seguinte script call para desativar a Switch Local A: $game_self_switches[[ID do Mapa, ID do Evento, 'A']] = false
    • Adicione um efeito de flash (desative a opção "esperar até o final").
    • Execute uma animação de fogo na bomba (mantenha a opção "esperar até o final").
    • Retorne a posição do evento da bomba para a posição inicial (canto superior esquerdo).
1722030920554.png

Passo 3: Criando uma Rachadura Explosível​

  1. Evento de Rachadura:
    • Crie um evento para a rachadura.
    • Defina-o para rodar em processo paralelo e espere 1 quadro.
  2. Verificando a Posição da Explosão:
    • Determine a posição do tile onde a bomba deve ser colocada para explodir a rachadura.
    • No meu caso, a posição é (8, 5), mas isso pode variar no seu projeto.
    • Crie uma condição para verificar se a variável PlayerX está na posição correta (8) e, dentro dela, uma condição para verificar se a variável PlayerY está na posição correta (5).
  3. Explodindo a Rachadura:
    • Dentro dessas condições, adicione um comando para esperar 120 quadros e ativar a Switch Local A.
    • Crie uma nova página no evento, ativada pela Switch Local A, com um gráfico de rachadura aberta.

1722030960369.png


Conclusão​

Teste o sistema para garantir que está funcionando corretamente. Embora este sistema exija que os eventos Bombas e Evento da Bomba sejam colocados em todos os mapas onde as bombas podem ser usadas, e que as script calls sejam ajustadas para cada mapa devido aos diferentes IDs, ele oferece uma mecânica divertida e dinâmica ao seu jogo. Espero que o tutorial tenha sido útil e qualquer dúvida que tenham comente abaixo que tentarei responder. Também colocarei um projeto aberto para vocês olharem caso queiram.
 

Anexos

Voltar
Topo Inferior