Dois tipos de movimentos em plataforma.

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Dois tipos de movimentos em plataforma.

Mensagem por LORD @.N.D em Ter 01 Fev 2011, 12:05

Eu queria dois tipos de movimento o primeiro é que quando pressionada a tecla acima o personagem andar ao contrario do que seria normal a imagem explica de um modo simples.
Tecla acima o personagem estando a baixo ele sobe e fica na outra parede.
Tecla abaixo o personagem estando a cima ele desce.

O segundo tipo de movimento é que o personagem pula e bata na parede assim pegando mais embalo e subindo na outra direção (ele "kika" na parede).

Aqui as duas imagem.





Para ficar mais fácil já postei o sistema que uso para andar para direita esquerda.

Código:
if keyboard_check(vk_right){
sprite_index = Direita
if place_free(x+5,y)
x+=5
}

if keyboard_check(vk_left){
sprite_index = Esquerda
if place_free (x-5,y)
x+=-5
}

LORD @.N.D

Número de Mensagens : 36
Data de inscrição : 13/01/2011
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Dois tipos de movimentos em plataforma.

Mensagem por Henrique_GJ em Ter 01 Fev 2011, 12:18

para fazer o movimento que faz ele ir pra cima e pra baixo, coloque no step

if keyboard_check_pressed(vk_up)
{
gravity_direction = 90
image_yscale = -1
}
if keyboard_check_pressed(vk_down)
{
gravity_direction = 270
image_yscale = 1
}

e para fazer o pulo em parede, é bem simples, mas ja temos muitas engines aqui no forum, então entre nesse topico ae e baixe a engine

http://gmbr.forumeiros.com/t12958-engine-de-pulo-entre-paredes?highlight=pulo+parede


Henrique_GJ

Número de Mensagens : 1344
Idade : 19
Data de inscrição : 30/12/2009
Reputação : 4
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

http://sitedosjogos.forumeiros.com

Voltar ao Topo Ir em baixo

Re: Dois tipos de movimentos em plataforma.

Mensagem por LORD @.N.D em Ter 01 Fev 2011, 12:24

Quando o personagem sobe ele não anda mais, e ele sobe e desce travando.

Eu estou usando isso:
Código:
if keyboard_check(vk_right){
sprite_index = Direita
if place_free(x+5,y)
x+=5
}

if keyboard_check(vk_left){
sprite_index = Esquerda
if place_free (x-5,y)
x+=-5
}

if keyboard_check_pressed(vk_up)
{ if !place_free(x,y+2){ vspeed=-12 }}

// Gravidade
if place_free(x,y+2) gravity=1
//Se estiver livre de colisoes 2 pixels abaixo, a gravidade sera 1
else //caso contrario
gravity=0 //a gravidade será 0


if keyboard_check_pressed(vk_up)
{
gravity_direction = 90
image_yscale = -1
}
if keyboard_check_pressed(vk_down)
{
gravity_direction = 270
image_yscale = 1
}
 
 

LORD @.N.D

Número de Mensagens : 36
Data de inscrição : 13/01/2011
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Dois tipos de movimentos em plataforma.

Mensagem por PedroX em Ter 01 Fev 2011, 14:02

Troque o codigo por esse:

if keyboard_check(vk_right){
sprite_index = Direita
if place_free(x+5,y)
x+=5
}

if keyboard_check(vk_left){
sprite_index = Esquerda
if place_free (x-5,y)
x+=-5
}

if place_free(x,y+vspeed+image_yscale) vspeed+=sign(vspeed);

if keyboard_check_pressed(vk_up)
{
vspeed=-9
image_yscale = -1
}
if keyboard_check_pressed(vk_down)
{
vspeed=9
image_yscale = 1
}

PedroX

Ranking : Nota C
Número de Mensagens : 6034
Idade : 21
Data de inscrição : 26/07/2008
Notas recebidas : C+B
Reputação : 286
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Dois tipos de movimentos em plataforma.

Mensagem por LORD @.N.D em Ter 01 Fev 2011, 14:05

Mais esta sem gravidade e quando eu ponho gravidade ele da bug como arrumo isso?

LORD @.N.D

Número de Mensagens : 36
Data de inscrição : 13/01/2011
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Dois tipos de movimentos em plataforma.

Mensagem por PedroX em Ter 01 Fev 2011, 14:15

Nao esta sem. Eu so nao usei a funcao gravity.
Teste para ver.

FLW

PedroX

Ranking : Nota C
Número de Mensagens : 6034
Idade : 21
Data de inscrição : 26/07/2008
Notas recebidas : C+B
Reputação : 286
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Dois tipos de movimentos em plataforma.

Mensagem por LORD @.N.D em Ter 01 Fev 2011, 15:07

É parece que deu certo mais eu não sei por a gravidade junto com isso que você fez eu testei aqui não esta funcionando sem gravidade.
Alguem pode por a gravidade pra mim?

LORD @.N.D

Número de Mensagens : 36
Data de inscrição : 13/01/2011
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Dois tipos de movimentos em plataforma.

Mensagem por Mr. Kaleb em Ter 01 Fev 2011, 15:21

Lol?
Código:
gravity_direction=270
gravity=0.5
Pronto!

Mr. Kaleb

Ranking : Nota C
Número de Mensagens : 1400
Idade : 19
Data de inscrição : 07/09/2010
Notas recebidas : C
Reputação : 21
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Dois tipos de movimentos em plataforma.

Mensagem por Datebanhawn em Ter 01 Fev 2011, 15:31

LOL :AHHA

Datebanhawn

Número de Mensagens : 182
Data de inscrição : 29/01/2011
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Dois tipos de movimentos em plataforma.

Mensagem por LORD @.N.D em Ter 01 Fev 2011, 15:38

@The Games Never Finish...
Tente explicar o que isso faz e como vou por isso pra funcionar.

@Datebanhawn
Isso não ajudou em nada siga as regras.

LORD @.N.D

Número de Mensagens : 36
Data de inscrição : 13/01/2011
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Dois tipos de movimentos em plataforma.

Mensagem por Markituh em Ter 01 Fev 2011, 15:43

LOL :AHHA
Depois fica reclamando aí né Datebanhawn... Você floodou, postar em um tópico só para rir de "Lol" ._.

Lord, você pode fazer a bola quicar usando a função Bounce ;) O que o código do TGNF faz é definir a gravidade, definindo a direção e em seguida definindo a gravidade em si. Não é muito necessário definir a gravity_direction pois ela automaticamente vem 270, gravity, a gravidade em si, é um valor entre 0 e 1. É basicamente a força da gravidade.

___________

"Não deixe para amanhã o que se pode fazer hoje"

Links úteis:
Índice de Tutoriais
Manual online do GMS

Markituh

Ranking : Sem avaliações
Número de Mensagens : 2183
Data de inscrição : 11/10/2009
Reputação : 106
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Dois tipos de movimentos em plataforma.

Mensagem por LORD @.N.D em Ter 01 Fev 2011, 15:51

Eu tentei utilizar a função "Bounce" com o evento colisão mais não deu certo eu acho que o evento colisão quando o objeto esta na vertical na funciona.

Mais o sistema que eu estou tentando fazer o da imagem que esta marcado 1 eu não consegui fazer ainda aguem pode fazer ele inteiro para mim ver como que é feito para mim fazer no meu jogo?

Obs: Com todos os movimentos etc.

@Markituh Obrigado pelo comentário.

LORD @.N.D

Número de Mensagens : 36
Data de inscrição : 13/01/2011
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Dois tipos de movimentos em plataforma.

Mensagem por Markituh em Ter 01 Fev 2011, 16:10

Pelo que vi na ilustração da imagem 2, você quer que quando ele colida com a parede na esquerda ele "quique" para a direita. O que você pode fazer é na colisão com o objeto, fazer toda a checagem a respeito da sua posição e rolar. Mais ou menos assim:
Código:
if hspeed<0 // Se estiver na esquerda
{
// Rola pra direita
hspeed=4
speed=4
}
if hspeed>0 // Se estiver na direita
{
// Rola pra esquerda
hspeed=-4
vspeed=4
}
Um código assim. Quanto a primeira ilustração, sobre fazer um sistema de anti-gravidade, os amigos aí te passaram um código, mas ao que vi você está com problemas certo?
aguem pode fazer ele inteiro para mim ver como que é feito para mim fazer no meu jogo?

Obs: Com todos os movimentos etc.
Com todos os movimentos etc? Amigo acho que já estariamos passando o jogo quase completo pra você, queremos que você aprenda, entenda para conseguir aplicar sozinho! Assim, se você não tiver um bom conhecimento acerca dos fundamentos de um jogo de plataforma, vai terminar dando certos erros. Como erros de colisão, de pulo, movimento, etc. A maioria desses erros são concertados usando uma Mask(ou máscara, como preferir), que você pode achar sobre aqui no fórum mesmo. Mas se não for o caso, veremos posteriormente...

___________

"Não deixe para amanhã o que se pode fazer hoje"

Links úteis:
Índice de Tutoriais
Manual online do GMS

Markituh

Ranking : Sem avaliações
Número de Mensagens : 2183
Data de inscrição : 11/10/2009
Reputação : 106
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Dois tipos de movimentos em plataforma.

Mensagem por LORD @.N.D em Ter 01 Fev 2011, 21:36

Obrigado, mais o da imagem 1 não esta dando certo aqui porque quando ponho os códigos e junto com o sistema de gravidade sempre da bug eu queria que alguem fizer o sistema junto com o da gravidade por que eu não consigo fazer isso dar certo.

LORD @.N.D

Número de Mensagens : 36
Data de inscrição : 13/01/2011
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Dois tipos de movimentos em plataforma.

Mensagem por Henrique_GJ em Ter 01 Fev 2011, 21:57

cara, eu vou te ensinar a fazer isso:

vc num programou o movimento do player? não checou se tem alguma coisa embaixo do player? não fez ele cair e andar? use os mesmos codigos pra fazer ele kikar, não é mais complexo nem mais complicado, só que da um pouquinho mais de trabalho (só)

usa o place_free() pra checar se tem alguam coisa do lado, e usa ele denovo pra checar se ele pode pular pro outro, depois usa hspeed pra fazer ele pular, e friction pra fazer ele parar lentamente, e place_free denovo pra checar se ele deve parar e talz

vc SABE (só que ACHA que não sabe)

Henrique_GJ

Número de Mensagens : 1344
Idade : 19
Data de inscrição : 30/12/2009
Reputação : 4
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

http://sitedosjogos.forumeiros.com

Voltar ao Topo Ir em baixo

Re: Dois tipos de movimentos em plataforma.

Mensagem por LORD @.N.D em Ter 01 Fev 2011, 22:19

Isso eu sei :

Código:
if keyboard_check(vk_right){
sprite_index = Direita
if place_free(x+5,y)
x+=5
}

if keyboard_check(vk_left){
sprite_index = Esquerda
if place_free (x-5,y)
x+=-5
}

Eu não sei como fazer o sistema da imagem 1.
O cara passou esse mais não deu certo.

Código:
if place_free(x,y+vspeed+image_yscale) vspeed+=sign(vspeed);

if keyboard_check_pressed(vk_up)
{
vspeed=-9
image_yscale = -1
}
if keyboard_check_pressed(vk_down)
{
vspeed=9
image_yscale = 1
}

LORD @.N.D

Número de Mensagens : 36
Data de inscrição : 13/01/2011
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Dois tipos de movimentos em plataforma.

Mensagem por Conteúdo patrocinado Hoje à(s) 04:48


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum