Entrar
Últimos assuntos
» player não consegue andarpor lovn7 Qui 21 Nov 2024, 13:33
» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56
» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22
» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31
» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23
» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49
» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58
» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36
» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36
» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33
» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51
» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28
» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18
» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08
» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10
» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16
» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40
» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01
» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45
» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34
» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28
» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48
» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54
» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14
» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50
Pulo do personagem
2 participantes
Página 1 de 1
Pulo do personagem
Preciso de um modo em que o personagem pulo quando um botao for acionado,poderia ser um modo de limitar a altura e depois fazer ele voltar.
BlackNight- Data de inscrição : 08/12/2010
Reputação : 0
Número de Mensagens : 35
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Pulo do personagem
Olhe esta engine que recentimente postei aqui no forum, nela tem os fundamentos basicos para se fazer um jogo de plataforma.
http://www.gamemakerbrasil.com/engines-f12/mecanica-basica-para-jogo-de-plataforma-t12328.htm
http://www.gamemakerbrasil.com/engines-f12/mecanica-basica-para-jogo-de-plataforma-t12328.htm
Da Galáxia- Data de inscrição : 14/01/2010
Reputação : 1
Número de Mensagens : 348
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Pulo do personagem
O engines é muito bom so que vc fez tudo um programaçao e eu so estou usando o programa para pegar os esquemas de programaçao e depois vou mudar de linguagem entao não vale apena estudar ela,nao tem como so me dar os eventos que posso colocar para que o personagem pule?
Ou melhor me passe o script do pulo que adiciono.
Ou melhor me passe o script do pulo que adiciono.
BlackNight- Data de inscrição : 08/12/2010
Reputação : 0
Número de Mensagens : 35
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Pulo do personagem
Para o pulo funcionar corretamente, não tem um script só do pulo. Por que? Simples, existe toda uma mecanica atrás do pulo, vamos ver...
1 - O player não pode pular estando no ar.
2 - Ao teclar, e estiver no chao o player pula até um limite de altura e depois ele volta automaticamente para o chão (gravidade). Você concorda?
Para seu melhor entendimento, vamos fazer do começo.
1 - Abra um novo projeto.
2 - Crie 2 sprites, uma para ser o player e outra para ser o chão.
3 - Crie um objeto player com a sprite player.
4 - Crie um objeto chão com a sprite chão, e neste objeto na tela object properties marque para solid, não se esqueça, no objeto chão, marque para SOLID.
5 - vamos programar.
Tudo no objeto player:
No evento Create, coloque:
//vai ser falso quando estiver no ar (sob o efeito da gravidade)
no_chao = true;
No evento STEP, coloque:
//gravidade
//se o lugar estiver livre +1 pixel abaixo do player,...
//...ou seja, se as outras sprites, estiverem...
//...a uma distancia superior a 1 pixel do player, a gravidade age.
//o sistema cartesiano na computação é invertido no sentido y...
//... por isso o pixel abaixo do player é positivo em relação a ele).
if place_free(x,y+1){
gravity = 1;//gravidade agindo
no_chao = false;//não esta no chão
}
else{//caso contrario (ter alguma sprite com uma distancia...
//...de apenas 1 pixel do player, não ha gravidade
gravity = 0;//gravidade desligada
no_chao = true;//variavel indicando que o player esta no chão.
}
//pulando
//se teclar espaço e o player estiver no chão, pula.
if keyboard_check(vk_space) && no_chao = true
vspeed = -12;
//se não por a variavel no_chao = true, quando o player...
//...estiver no ar e teclar espaço, o player vai pular estando no ar.
Na colisão com o chao, coloque:
//apesar de estar em um solido, pode-se movimentar livremente...
//...o objeto solido não vai interferir no movimento do player.
//toda a vez, setar solid para um objeto, na colisão com...
//...osolido deve-se por esse codigo.
move_contact_solid(direction,12)
speed = 0;
AGORA vou te dar uma sugestão:
Antes de mudar para uma linguagem profissional (padrão) como o Delphi, o Java ou o C++ por ex. eu aconselho a vc a aprender a logica da programação, e te digo, para isso o GM com sua linguagem é imbativel, vou te dizer porque:
Como o GM é um motor, no caso de jogo, tudo nele é facilitado, por ex. vc não precisa criar inicializações, não precisa criar TIPO (no caso do Delphi) ou CLASSES que é como é chamado o tipo em Java e C++, não precisa criar procedimentos e funções (Delphi) ou funçoes void e funçoes de retorno como em C++ e Java, não precisa fazer um backbuffer de video para jogos, dentre outras, resumindo, vc somente tem que se preocupar com a logica de programação. Dentre algum tempo, quando tudo que vc quizer fazer no GM (desde que ele suporte, é claro), vc conseguir, mas conseguir exatamente como vc planejou, porque se ficar pior ou ate mesmo melhor que vc planejou, vc programou errado, ai sim vc ate com uma facilidade que talves nem mesmo vc esperava, vc vai conseguir programar. E pode ser como eu fiz, aprender logo 3 linguagens ao mesmo tempo, no meu caso Delphi, java e C++, porque tirando as diferenças sintaticas a logica é sempre a mesma, por isso o mais importante é conhecer a logica, não se preocupe em decorar funçoes, o melhores programadores do mundo trabalham com anotações a seu lado, porque o importante é saber quando, porque, para que e onde usar determinados comandos, e se souber logica vai saber disso, vai saber que precisa usar algo, e vai procurar na ajuda da linguagem e/ou na internet, e pronto. Mas é apenas minha sugetão. Flw.
1 - O player não pode pular estando no ar.
2 - Ao teclar, e estiver no chao o player pula até um limite de altura e depois ele volta automaticamente para o chão (gravidade). Você concorda?
Para seu melhor entendimento, vamos fazer do começo.
1 - Abra um novo projeto.
2 - Crie 2 sprites, uma para ser o player e outra para ser o chão.
3 - Crie um objeto player com a sprite player.
4 - Crie um objeto chão com a sprite chão, e neste objeto na tela object properties marque para solid, não se esqueça, no objeto chão, marque para SOLID.
5 - vamos programar.
Tudo no objeto player:
No evento Create, coloque:
//vai ser falso quando estiver no ar (sob o efeito da gravidade)
no_chao = true;
No evento STEP, coloque:
//gravidade
//se o lugar estiver livre +1 pixel abaixo do player,...
//...ou seja, se as outras sprites, estiverem...
//...a uma distancia superior a 1 pixel do player, a gravidade age.
//o sistema cartesiano na computação é invertido no sentido y...
//... por isso o pixel abaixo do player é positivo em relação a ele).
if place_free(x,y+1){
gravity = 1;//gravidade agindo
no_chao = false;//não esta no chão
}
else{//caso contrario (ter alguma sprite com uma distancia...
//...de apenas 1 pixel do player, não ha gravidade
gravity = 0;//gravidade desligada
no_chao = true;//variavel indicando que o player esta no chão.
}
//pulando
//se teclar espaço e o player estiver no chão, pula.
if keyboard_check(vk_space) && no_chao = true
vspeed = -12;
//se não por a variavel no_chao = true, quando o player...
//...estiver no ar e teclar espaço, o player vai pular estando no ar.
Na colisão com o chao, coloque:
//apesar de estar em um solido, pode-se movimentar livremente...
//...o objeto solido não vai interferir no movimento do player.
//toda a vez, setar solid para um objeto, na colisão com...
//...osolido deve-se por esse codigo.
move_contact_solid(direction,12)
speed = 0;
AGORA vou te dar uma sugestão:
Antes de mudar para uma linguagem profissional (padrão) como o Delphi, o Java ou o C++ por ex. eu aconselho a vc a aprender a logica da programação, e te digo, para isso o GM com sua linguagem é imbativel, vou te dizer porque:
Como o GM é um motor, no caso de jogo, tudo nele é facilitado, por ex. vc não precisa criar inicializações, não precisa criar TIPO (no caso do Delphi) ou CLASSES que é como é chamado o tipo em Java e C++, não precisa criar procedimentos e funções (Delphi) ou funçoes void e funçoes de retorno como em C++ e Java, não precisa fazer um backbuffer de video para jogos, dentre outras, resumindo, vc somente tem que se preocupar com a logica de programação. Dentre algum tempo, quando tudo que vc quizer fazer no GM (desde que ele suporte, é claro), vc conseguir, mas conseguir exatamente como vc planejou, porque se ficar pior ou ate mesmo melhor que vc planejou, vc programou errado, ai sim vc ate com uma facilidade que talves nem mesmo vc esperava, vc vai conseguir programar. E pode ser como eu fiz, aprender logo 3 linguagens ao mesmo tempo, no meu caso Delphi, java e C++, porque tirando as diferenças sintaticas a logica é sempre a mesma, por isso o mais importante é conhecer a logica, não se preocupe em decorar funçoes, o melhores programadores do mundo trabalham com anotações a seu lado, porque o importante é saber quando, porque, para que e onde usar determinados comandos, e se souber logica vai saber disso, vai saber que precisa usar algo, e vai procurar na ajuda da linguagem e/ou na internet, e pronto. Mas é apenas minha sugetão. Flw.
Da Galáxia- Data de inscrição : 14/01/2010
Reputação : 1
Número de Mensagens : 348
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Tópicos semelhantes
» problema no pulo do personagem
» [Resolvido] Pulo do personagem
» duvida sobre pulo personagem
» personagem encosta na chão,e duvidade no pulo
» [PEDIDO]Alguem poderia criar pulo do meu personagem ?
» [Resolvido] Pulo do personagem
» duvida sobre pulo personagem
» personagem encosta na chão,e duvidade no pulo
» [PEDIDO]Alguem poderia criar pulo do meu personagem ?
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos