Como Disparar Projétil ?

10 Respostas   460 Visualizações

0 Membros e 1 Visitante estão vendo este tópico.

HammerStrike

  • Veterano
  • *
  • Posts: 333
  • Ouros: 280
  • "Quando vou terminar?quando estiver pronto!"
  • Equipamentos "Manejar espadas está lhe dando calos nas mãos? Uma bela luva pode ser uma boa saída, além de prover um manejo melhor das lâminas." "O norte sempre me surpreende, e este escudo não foi uma exceção. Em uma de minhas viagens lá vi ele, muito bonito e resistente, claro que não poderia deixar de trazer um." "Um dos melhores trabalhos dos povos das terras da noite é esse metal, que na escuridão mais gelada aquece o corpo que protege."
Tópico criado em: 26/03/2019 às 14:49

Aqui estou eu mais um dia, para tirar mais uma duvida.

Gostaria de fazer meu personagem disparar um projétil que mate inimigo quando acertar, se alguém puder me dar uma dica, agradeço.
Vou deixar alguns charset aqui do meu jogo (São 3 set's):

1 Bit Estúdio

Crixus

Resposta 1: 26/03/2019 às 18:31 - Última modificação por Crixus em 26/03/2019 às 20:53

Existem inumeras tutoriais sobre isto, mas no caso posso te explicar como fazer, pois você não disse a Engine que está usando.

Você precisará definir as coordenadas do evento projetil e dos eventos inimigos que podem receber dano ou mortos pelo projetil.
Evento Projetil: Pagina 1 (Ativado por Switch "Pode lançar poder")
-Sem gráfico
-Deve estar em processo paralelo:
Citar
<>Condição: Tecla - X
    <>Variavel [X-Jogador] = Personagem Coord X
    <>Variavel [Y-Jogador] = Personagem Coord Y
    <>Condição: Personagem - Olhando para Baixo
       <>Variavel [Y-Jogador] + 1
        <>Variavel [Direção do tiro]  = 1
        <>
    :Fim
    <>Condição: Personagem - Olhando para Cima
       <>Variavel [Y-Jogador] - 1
        <>Variavel [Direção do tiro]  = 2
        <>
    :Fim
    <>Condição: Personagem - Olhando para Direita
       <>Variavel [X-Jogador] + 1
        <>Variavel [Direção do tiro]  = 3
        <>
    :Fim
    <>Condição: Personagem - Olhando para Esquerda
       <>Variavel [X-Jogador] - 1
        <>Variavel [Direção do tiro]  = 4
        <>
    :Fim
   <>Teleportar Evento: Este Evento [Var[X-Jogador],Var[Y-Jogador]]
    <>Switch: [lançar energia] - ON
    <>
:FIM da Condição
<>

Evento Projetil: Pagina 2 (Ativado por Switch "Pode lançar poder")
- Com gráfico do projetil em constante animação
- Deve estar em processo paralelo:
Citar
<>Comentário: ########## Coordenadas Projetil ##########
<>Variavel [X-Projetil] - Este Evento - Coord X
<>Variavel [Y-Projetil] - Este Evento - Coord Y
<>Condição: Variavel [Direção do tiro] = 1
    <>Mover Evento - Este evento: Andar Passo para baixo (Modo Repetir)
    <>Variavel [Y-Projetil] + 1
    <>
:Fim
<>Condição: Variavel [Direção do tiro] = 2
    <>Mover Evento - Este evento: Andar Passo para Cima (Modo Repetir)
    <>Variavel [Y-Projetil] - 1
    <>
:Fim
<>Condição: Variavel [Direção do tiro] = 3
    <>Mover Evento - Este evento: Andar Passo para Direita (Modo Repetir)
    <>Variavel [X-Projetil] + 1
    <>
:Fim
<>Condição: Variavel [Direção do tiro] = 4
    <>Mover Evento - Este evento: Andar Passo para esquerda (Modo Repetir)
    <>Variavel [X-Projetil] - 1
    <>
:Fim
<>Comentário: ########## Coordenadas Inimigo A ##########
<>Variavel [X-Inimigo_A] - EV Inimigo A - Coord X
<>Variavel [Y-Inimigo_A] - EV Inimigo A - Coord Y
<>Condição: Variavel[X-Projetil] = Variavel[X-Inimigo A]
    <>Condição: Variavel[Y-Projetil] = Variavel[Y-Inimigo A]
        <>---->Evento de dano no inimigo A
        <>Variavel [Direção do tiro]  = 0
        <>Switch: [lançar energia] - OFF
        <>
    :Fim
    <>
:Fim
<>Comentário: ########## Coordenadas Inimigo B ##########
<>Variavel [X-Inimigo_B] - EV Inimigo B - Coord X
<>Variavel [Y-Inimigo_B] - EV Inimigo B - Coord Y
<>Condição: Variavel[X-Projetil] = Variavel[X-Inimigo B]
    <>Condição: Variavel[Y-Projetil] = Variavel[Y-Inimigo B]
        <>---->Evento de dano no inimigo B
        <>Variavel [Direção do tiro]  = 0
        <>Switch: [lançar energia] - OFF
        <>
    :Fim
    <>
:Fim
<>Comentário: ########## Pausa para evitar LAG ##########
<>              : Modifique dependendo da sua versão do Rpg Maker
<>Intervalo:15 fps
<>

Só não lembro como criar uma condição para quando o projetil colidir a paredes venha à desaparecer.

Em todo caso está uma das várias tutoriais deste tipo de sistema:
Rpg Maker 2000:
https://centrorpg.com/index.php?topic=9236.0
https://centrorpg.com/index.php?topic=19704.0

Rpg Maker VXACE:
https://centrorpg.com/index.php?topic=4605.0
https://centrorpg.com/index.php?topic=3567.0

Rpg Maker MV:
https://centrorpg.com/index.php?topic=16124.0

Não achei pra nenhuma outra engine.

Se você estiver usando o VX vai ter que adapatar um destes ou seguir minhas instruções.

razier

Resposta 2: 26/03/2019 às 19:28

Achei esses dois videos no youtube, com sistema de tiro:

Spoiler
[close]

Spoiler
[close]


HammerStrike

  • Veterano
  • *
  • Posts: 333
  • Ouros: 280
  • "Quando vou terminar?quando estiver pronto!"
  • Equipamentos "Manejar espadas está lhe dando calos nas mãos? Uma bela luva pode ser uma boa saída, além de prover um manejo melhor das lâminas." "O norte sempre me surpreende, e este escudo não foi uma exceção. Em uma de minhas viagens lá vi ele, muito bonito e resistente, claro que não poderia deixar de trazer um." "Um dos melhores trabalhos dos povos das terras da noite é esse metal, que na escuridão mais gelada aquece o corpo que protege."
Resposta 3: 26/03/2019 às 21:14 - Última modificação por HammerStrike em 26/03/2019 às 21:31

O RPG é o Maker VX Ace, eu já tinha dado uma olhada nesses outros sistema mas sempre achei eles bugados.
Tentei fazer aqui da maneira que você descreveu Crixus, mas quando aperto o botão nada acontece. Onde posso ter errado?



EDIT:

Achei o problema, era que a Condição de apertar o botão estava com Exceção e por isso nada pegava.
Em breve volto pra mostrar como está ficando.
1 Bit Estúdio

Jorge_Maker

  • Moderador
  • *
  • Posts: 634
  • Ouros: 997
  • Oink
  • Medalhas Participante do 'Amigo, Estou Aqui!' Vencedor do Evento A Visita do Sr.Harvey
Resposta 4: 26/03/2019 às 22:44

Hammer, eu tenho algumas perguntas: :batrick: Como tu quer exatamente que o projétil se comporte? Por exemplo, no RPG Maker, você vê muito a galera fazer com que o projétil se dissipe a medida que ele avança, sendo essa, a forma mais simples, eu diria. Entretendo, também é possível fazer com que o projétil colida apenas se houver algum obstáculo, ou caso este saia do campo de visão do jogador.
Oxe

Crixus

Resposta 5: 26/03/2019 às 23:48

Só pra constar, nenhuma das condições tem exceção.

HammerStrike

  • Veterano
  • *
  • Posts: 333
  • Ouros: 280
  • "Quando vou terminar?quando estiver pronto!"
  • Equipamentos "Manejar espadas está lhe dando calos nas mãos? Uma bela luva pode ser uma boa saída, além de prover um manejo melhor das lâminas." "O norte sempre me surpreende, e este escudo não foi uma exceção. Em uma de minhas viagens lá vi ele, muito bonito e resistente, claro que não poderia deixar de trazer um." "Um dos melhores trabalhos dos povos das terras da noite é esse metal, que na escuridão mais gelada aquece o corpo que protege."
Resposta 6: 27/03/2019 às 00:20

Tá andando aos poucos, entretanto, ainda não consegui fazer os inimigos tomar dano, vou dar mais uma olhada.
Aqui meu progresso até agora:


Eu tenho uma outra duvida, é possível criar uma forma mais fácil de configurar os inimigos? Porque pretendo colocar mapas grandes com vários inimigos.

Jorge, se quiser me ajudar eu posso te mandar uma demo do que estou fazendo até agora pra tu dar uma olhada.
1 Bit Estúdio

Crixus

Resposta 7: 27/03/2019 às 03:00 - Última modificação por Crixus em 27/03/2019 às 03:04

A parte de andar aos poucos é questão de mudar os temporizador que evita LAG e aumentar a velocidade do evento nos parametros da página 2.

Sobre o dano, pela imagem que você postou parecia certo, mas você precisará verificar se não fez algo errado nas condições que usam a variavel "Direção".

Não acredito que possa ser alguma coisa especifica do Rpg Maker VX Ace, se não der amanhã vejo de instalar o VXAce no meu computador e criar o sistema do zero baseado no outro de Rm2k que eu fiz.

Jorge_Maker

  • Moderador
  • *
  • Posts: 634
  • Ouros: 997
  • Oink
  • Medalhas Participante do 'Amigo, Estou Aqui!' Vencedor do Evento A Visita do Sr.Harvey
Resposta 8: 27/03/2019 às 18:52


https://drive.google.com/open?id=1sD9dL9rKPFdP3wSfzRpH0wyngCwX57sN
Prontinho, ta ai o sistema de disparar projétil. o/
Ele colide com o mapa, com os eventos e também caso saia da tela.
E como tu me pediu, também fiz o sistema de charge e aquele super ataque ali que acerta todos os eventos a frente do jogador.
Se houver algum bug ou qualquer outra alteração que você ache necessária, só falar.
Oxe

HammerStrike

  • Veterano
  • *
  • Posts: 333
  • Ouros: 280
  • "Quando vou terminar?quando estiver pronto!"
  • Equipamentos "Manejar espadas está lhe dando calos nas mãos? Uma bela luva pode ser uma boa saída, além de prover um manejo melhor das lâminas." "O norte sempre me surpreende, e este escudo não foi uma exceção. Em uma de minhas viagens lá vi ele, muito bonito e resistente, claro que não poderia deixar de trazer um." "Um dos melhores trabalhos dos povos das terras da noite é esse metal, que na escuridão mais gelada aquece o corpo que protege."
Resposta 9: 27/03/2019 às 19:07

SHOW!
Ficou muito bom, obrigado por toda ajuda galera.
1 Bit Estúdio

Crixus

Resposta 10: 27/03/2019 às 21:43

Eita Jorge_Maker, muito bom.