GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» Problema ao entrar por uma porta e voltar por ela
por aminaro Seg 06 maio 2024, 10:08

» Alguém aqui já ganha dinheiro com seus games?
por theguitarmester Ter 30 Abr 2024, 11:43

» Colisões não funcionando
por theguitarmester Ter 30 Abr 2024, 10:16

» Como ajustar velocidade de cada frame da animação no game maker
por pequetux Sex 26 Abr 2024, 16:45

» Preciso de ajuda
por AftonDuGrau Dom 21 Abr 2024, 20:18

» Como faz o evento drawn GUI, não se repetir?
por aminaro Sex 19 Abr 2024, 20:30

» PROBLEMAS COM FÍSICAS DE ÁGUA
por aminaro Ter 16 Abr 2024, 10:07

» Retorno da GMBR!!!
por Ralphed Sex 12 Abr 2024, 22:45

» JOGADOR PARANDO NO AR QUANDO ATACA
por aminaro Qua 10 Abr 2024, 13:51

» Problemas com texto interativo
por Kaaru72 Dom 07 Abr 2024, 11:31

» Erro escondido e indecifrável
por dev_gabize.azv Qui 04 Abr 2024, 10:11

» Mudar cor de apenas uma palavra
por Ralphed Sáb 30 Mar 2024, 00:39

» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27

» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30

» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17

» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18

» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34

» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13

» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18

» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12

» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02

» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55

» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42

» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21


Pulando em profundidade

+4
Igor KinGamer
Naut2006
Denis Lemos
itallo
8 participantes

Página 1 de 2 1, 2  Seguinte

Ir para baixo

Pulando em profundidade Empty Pulando em profundidade

Mensagem por itallo Seg 14 Set 2009, 18:55

bome stou desenvolvendo um jogo parecido com Little Fighter 2 , mas estou tendo dificuldades para fazer a parte do pulo do personagem, o pulo é fácil de fazer porem quero que o personagem continue na mesma linha que eles estava, de uma olhada:

Pulando em profundidade Little_fighter

quero que o personagem pule e quando cair, parar no mesmo valor de "Y" que ele estava antes, compreende?

O mapa teria profundidade

vlws
itallo
itallo

Games Ranking : Nota C

Notas recebidas : B - D
Data de inscrição : 26/08/2009
Reputação : 12
Número de Mensagens : 970
Prêmios : Pulando em profundidade Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Pulando em profundidade Empty Re: Pulando em profundidade

Mensagem por Denis Lemos Seg 14 Set 2009, 19:28

Olha eu não sei como, mas talves tenta bolar algo usando paths!
Tipo se ele fica parado e dar um pulo vc cria um path apenas com uma linha na vertical, e regula para quando ele chegar no fim do path ele faser o sentido contrário! Para um pulo parado eu acho que talves daria certo ,mas para pular para os lados não sei se assim ía funfá ! Espera para ver se alguém sabe um jeito certo ,senão em últimos casos tenta fazer isso!
Denis Lemos
Denis Lemos

Data de inscrição : 17/05/2009
Reputação : 1
Número de Mensagens : 938
Prêmios : Pulando em profundidade Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Unity
  • C#
  • Godot
  • C ou C++


Ir para o topo Ir para baixo

Pulando em profundidade Empty Re: Pulando em profundidade

Mensagem por Naut2006 Seg 14 Set 2009, 19:38

Não testei, ma pode dar certo:

Cria uma variavel (algo tipo yatual (lê-se ípcilon atual XD)) e otra pulando (se não tiver uma ainda).

Aí no evento do pulo coloca isso:
Código:
//evento do pulo then
  {//comandos
  pulando=true
  yatual=y}

Aí coloca depois:
Código:
if pulando=true and y=yatual then
  {gravity=0
  pulando=false

Testa aí e ve se funciona

Goodbye Happy
Naut2006
Naut2006

Data de inscrição : 11/08/2009
Reputação : 0
Número de Mensagens : 213
Prêmios : Pulando em profundidade Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Pulando em profundidade Empty Re: Pulando em profundidade

Mensagem por Igor KinGamer Seg 14 Set 2009, 20:11

Desse jeito aí, se você se aproximasse ou afastasse do fundo enquanto estivesse no ar, o "yatual" continuaria o mesmo, além de que seria difícil a gravidade fazer o y voltar a ser o yatual.

Aqui nesse tópico eu respondi essa mesma pergunta.
Igor KinGamer
Igor KinGamer

Data de inscrição : 26/09/2008
Reputação : 11
Número de Mensagens : 890
Prêmios : Pulando em profundidade Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Pulando em profundidade Empty Re: Pulando em profundidade

Mensagem por Convidad Seg 14 Set 2009, 23:08

Moçada, há um ano e meio eu fiz um joguinho parecido com Final Fight e que usava esse mesmo esquema de profundidade. Na verdade é que esse tipo de visão confunde mesmo na hora de programar mas não tem segredo.

O lance é você controlar o x (horizontal) e o y (vertical) numa boa. Controle-os normalmente e adicione às instâncias que se movem (no Step ou EndStep):

Código:
depth := (-y);

O que vai acontecer é que qualquer instância que se encontrar "acima" de outra, terá um depth maior que as que se encontrarem abaixo, portanto, o efeito de profundidade está pronto.

Agora, nos eventos de colisão, é só condicioná-los ao depth igual ou parecido. Por exemplo: se duas instâncias tiverem o depth igual (se estiverem no mesmo plano), elas podem colidir, do contrário, não.

No Colision:

Código:
// Aqui, colocamos uma tolerância de 20 pixels, 10 pra cima e pra baixo.
// É só adicionar isso na primeira linha.

if depth < other.depth - 10 or depth > other.depth + 10 then exit;

Obko. Para o pulo, eu recomendo que você dê uma olhada nas engines de plataforma do fórum. Tem várias formas de fazer e os meninos comentaram direitinho em todas.

Boa Sorte!
Capitão Commando.
avatar
Convidad
Convidado


Ir para o topo Ir para baixo

Pulando em profundidade Empty Re: Pulando em profundidade

Mensagem por CPinheiro Ter 15 Set 2009, 06:32

Código:

if (y > ystart) { y=ystart; }
Se o y for maior que o y de quando o objeto foi criado, ele se torna igual ao y de quando o objeto foi criado. (;
CPinheiro
CPinheiro

Data de inscrição : 01/06/2008
Reputação : 0
Número de Mensagens : 1015
Prêmios : Pulando em profundidade Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://supermariobrasileiro.blogspot.com

Ir para o topo Ir para baixo

Pulando em profundidade Empty Re: Pulando em profundidade

Mensagem por itallo Sex 18 Set 2009, 18:52

pocha tentei fazer todos esses modelos e nenhum deu certo =/
não sei aonde estou errando, preciso muito de ajuda nessa parte.....

tpw olha só:
ao apertar espaço{
y = yatual
pulando = true
vspeed = -8
alarm[0] = 8
}

no alarm[0] :

tem o sistema de gravidade que leva ele para baixo.

if y = yatual{
gravidade = 0
}

mas ele vai caindo sem parar, ele nao para no chão......

acho que fiquei meio que NB d+ nessa engine =/
itallo
itallo

Games Ranking : Nota C

Notas recebidas : B - D
Data de inscrição : 26/08/2009
Reputação : 12
Número de Mensagens : 970
Prêmios : Pulando em profundidade Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Pulando em profundidade Empty Re: Pulando em profundidade

Mensagem por CPinheiro Sex 18 Set 2009, 18:56

Tente trocar isso:
Código:

if y = yatual{
gravidade = 0
}

Por isso:
Código:

if (y>= yatual)
{
y = yatual;
gravidade = 0;
vspeed = 0;
}
else
{
alarm[0] = 1;
}
CPinheiro
CPinheiro

Data de inscrição : 01/06/2008
Reputação : 0
Número de Mensagens : 1015
Prêmios : Pulando em profundidade Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://supermariobrasileiro.blogspot.com

Ir para o topo Ir para baixo

Pulando em profundidade Empty Re: Pulando em profundidade

Mensagem por Denis Lemos Sex 18 Set 2009, 19:06

Eu encontrei aqui mesmo no forum uma engine desse tipo que voceis estão falando !
Os comentários estão em ingles e parece ser bem complicada !
aí ta o link

https://gmbr.forumeiros.com/perguntas-respostas-f10/inteligencia-artificial-de-inimigos-para-beat-em-up-como-streets-of-rage-t811.htm?highlight=inteligencia+artificial

ela tá mais pra baixo nos comentários, o nome dela é
beats of rage suorce code ou alguma coisa assim
talves possa ajuda-los!
Denis Lemos
Denis Lemos

Data de inscrição : 17/05/2009
Reputação : 1
Número de Mensagens : 938
Prêmios : Pulando em profundidade Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Unity
  • C#
  • Godot
  • C ou C++


Ir para o topo Ir para baixo

Pulando em profundidade Empty Re: Pulando em profundidade

Mensagem por itallo Sex 18 Set 2009, 19:16

denis L. o link ta quebrado.....
pocha.......
vou ver se encontro uma engine em outros foruns para usar como base.
vlwscpinheiro e denis Happy
itallo
itallo

Games Ranking : Nota C

Notas recebidas : B - D
Data de inscrição : 26/08/2009
Reputação : 12
Número de Mensagens : 970
Prêmios : Pulando em profundidade Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Pulando em profundidade Empty Re: Pulando em profundidade

Mensagem por Denis Lemos Sex 18 Set 2009, 19:53

denis L. o link ta quebrado.....
pocha.......
vou ver se encontro uma engine em outros foruns para usar como base.
vlwscpinheiro e denis
Desculpa aí oBKo eu que errei, o nome da engine é Beat 'em up engine
ela está no ultimo comentário !

o link ta funcionando ,eu baixei ela agora apouco !

desculpa o erro !
Denis Lemos
Denis Lemos

Data de inscrição : 17/05/2009
Reputação : 1
Número de Mensagens : 938
Prêmios : Pulando em profundidade Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Unity
  • C#
  • Godot
  • C ou C++


Ir para o topo Ir para baixo

Pulando em profundidade Empty Re: Pulando em profundidade

Mensagem por PedroX Sáb 19 Set 2009, 12:27

tente fazer isso, crie 5 objetos de cada carinha
ao ir para o "fundo", criar uma instancia do objeto que estara na outra posicao
ex: obj1, obj2
criar obj 2 , no obj1.y+10 e destruir o 1 (instance_destroy())
ai quando cada objeto der seu pulo ele volta proy start entendeu?
cada objeto se move so na horizontal
a vertical sera outro objeto

_________________


Leia o Manual do Iniciante e a Lista de Tutoriais, para aprender bastante sobre o GM.
Recomendo o Manual completo das colisões, bem útil.
O exemplo Criar um chat (banir, kickar, etc) é interessante.

Para seu jogo ficar rápido e legal, aprenda a Aumentar o desempenho do seu jogo.

Aprenda a calcular a velocidade de suas animações


Entre para o Clube do Inglês:
PedroX
PedroX

Games Ranking : Nota B

Notas recebidas : C+B
Data de inscrição : 26/07/2008
Reputação : 311
Número de Mensagens : 6087
Prêmios : Pulando em profundidade Empty

Medalhas x 0 Tutoriais x 17 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

https://web.whatsapp.com/send?phone=5519995935953&text=Pedro

Ir para o topo Ir para baixo

Pulando em profundidade Empty Re: Pulando em profundidade

Mensagem por itallo Sáb 19 Set 2009, 16:38

denis L. escreveu:
denis L. o link ta quebrado.....
pocha.......
vou ver se encontro uma engine em outros foruns para usar como base.
vlwscpinheiro e denis
Desculpa aí oBKo eu que errei, o nome da engine é Beat 'em up engine
ela está no ultimo comentário !

o link ta funcionando ,eu baixei ela agora apouco !

desculpa o erro !

kra vlw, mas......
eu abri a engine e não entendi nada, mto complicado a engine, fiquei perdido.....
acho que seria melhor vocês postarem um tutorial, ja que eu preciso, muitas pessoas tbm iram precisar..... assim ja ajuda a galera.... =D
itallo
itallo

Games Ranking : Nota C

Notas recebidas : B - D
Data de inscrição : 26/08/2009
Reputação : 12
Número de Mensagens : 970
Prêmios : Pulando em profundidade Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Pulando em profundidade Empty Re: Pulando em profundidade

Mensagem por ManoLego Sáb 19 Set 2009, 18:11

Olha..vou responder sua duvida de uma vez por todas....arruma uma Dlll,ou um extencion de gravidade,instala
e faz o seguinte faz quando pro exeplo vc aperta espaço o player segue um path
que sera so uma linha na vertical ai a gravidade fara tudo sosinha...
ManoLego
ManoLego

Data de inscrição : 06/09/2009
Reputação : 0
Número de Mensagens : 192
Prêmios : Pulando em profundidade Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Pulando em profundidade Empty Re: Pulando em profundidade

Mensagem por Thyago Sáb 19 Set 2009, 18:24

crie duas variaveis com os nomes de chao e pulando coloque
Código:
 pulando=0
em create event,ai no momento em que ele pular coloque pulando=1 chao=y.
e depois um codigo.
Código:
if(pulando=1 and y>chao){y=chao pulando=0 vspeed=0}
Ou seja se ele estiver caindo quando for passar do chao sua posicao y sera chao
e ele nao vai mais estar pulando pulando sera novamente =0
Thyago
Thyago

Games Ranking : Nota B

Notas recebidas : D+B+B+C+A
Data de inscrição : 24/08/2009
Reputação : 31
Número de Mensagens : 1101
Prêmios : Pulando em profundidade Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 1 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Pulando em profundidade Empty Re: Pulando em profundidade

Mensagem por Convidad Seg 21 Set 2009, 23:07

ManoLego escreveu:Olha..vou responder sua duvida de uma vez por todas....arruma uma Dlll,ou um extencion de gravidade,instala
e faz o seguinte faz quando pro exeplo vc aperta espaço o player segue um path
que sera so uma linha na vertical ai a gravidade fara tudo sosinha...

Amigo, você está enganado. Muito enganado. Hilariamente enganado. Evite responder algo que não sabe. Isso não ajuda em nada, só confunde quem está com dúvida.

oBKo, o exemplo do Thyago é exatamente o que eu faria também. Normalmente, eu gosto de controlar o pulo através de uma variável específica. Eu fiz um exemplo:

http://www.4shared.com/file/134438589/171577cd/exemplo_pulo_profundidade.html


Última edição por Capitão Commando em Qua 23 Set 2009, 21:24, editado 1 vez(es)
avatar
Convidad
Convidado


Ir para o topo Ir para baixo

Pulando em profundidade Empty Re: Pulando em profundidade

Mensagem por Denis Lemos Ter 22 Set 2009, 12:49

Valeu Cap Cmmando ta ajudando bastante hein !
É mais simples que eu pensava ! É só ter uma boa lógica de programação,
que se faz muita coisa,
sem precisar ta usando aqueles scripts complicados !
Denis Lemos
Denis Lemos

Data de inscrição : 17/05/2009
Reputação : 1
Número de Mensagens : 938
Prêmios : Pulando em profundidade Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Unity
  • C#
  • Godot
  • C ou C++


Ir para o topo Ir para baixo

Pulando em profundidade Empty Re: Pulando em profundidade

Mensagem por itallo Sáb 26 Set 2009, 18:07

tpw a engine deu certo mas.....
quando pulo o inimigo consegue me hitar mesmo ele estando numa posição diferente de y....
tpw.... quando to no chao ele me hita mas se ele estiver na minha frente, se ele estiver -50y do meu personagem e eu pular ele acerta o meu personagem......

como arrumo isso?
itallo
itallo

Games Ranking : Nota C

Notas recebidas : B - D
Data de inscrição : 26/08/2009
Reputação : 12
Número de Mensagens : 970
Prêmios : Pulando em profundidade Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Pulando em profundidade Empty Re: Pulando em profundidade

Mensagem por Denis Lemos Sáb 26 Set 2009, 18:30

Faz o mesmo que vc fez com o player, cria um eixo Y para ele também ,aí vc coloca no evento de colisão com player se o eixo Y for igual ao eixo Y do player, o código que irá ocorrer !
Denis Lemos
Denis Lemos

Data de inscrição : 17/05/2009
Reputação : 1
Número de Mensagens : 938
Prêmios : Pulando em profundidade Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Unity
  • C#
  • Godot
  • C ou C++


Ir para o topo Ir para baixo

Pulando em profundidade Empty Re: Pulando em profundidade

Mensagem por itallo Sáb 26 Set 2009, 21:13

a ta.... sabia que minha pergunta era de newbie =/
vlws vou fazer isso Very Happy
itallo
itallo

Games Ranking : Nota C

Notas recebidas : B - D
Data de inscrição : 26/08/2009
Reputação : 12
Número de Mensagens : 970
Prêmios : Pulando em profundidade Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Pulando em profundidade Empty Re: Pulando em profundidade

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Página 1 de 2 1, 2  Seguinte

Ir para o topo


 
Permissões neste sub-fórum
Não podes responder a tópicos