Conectar-se
Quem está conectado
26 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 26 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 31/10/2013
Número de Mensagens : 206
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 10

Prêmios
   : 0
   : 1
   : 0
Ver perfil do usuário

problema com pulo

em Qua 14 Maio 2014, 20:30
Eu usei esse código para movimentação http://gmbr.forumeiros.com/t16270-tuto-a-melhor-movimentacao-em-plataforma-com-sprites#122693

Funcionou 99% bem, só tem um problema, quando eu pulo virado para a direita ele fica normal quando ta subindo, mas quando começa a  cair a sprite muda para a esquerda mas quando cai no chão ele vira para a direita de novo.

Vou deixar o código de como está no meu:

No create:
image_speed=0.5;
parado=true; 
andando=false;
noar=false;

lado=0;


No step:
if (place_free(x,y+1))
{gravity=0.5; noar=true; 

} else

 {gravity=0; noar=false; 
 }

//Definiões de pulo
if (keyboard_check_pressed(vk_up)) && ! (place_free(x,y+1))
{
vspeed=-9; noar=true; friction=0 
}

if (vspeed>16)
vspeed=16;

if (keyboard_check(vk_left)) && ! (keyboard_check(vk_right)) && (place_free(x-5,y)) 
{x-=5; lado=0; andando=true; parado=false
}

if (keyboard_check(vk_right)) && ! (keyboard_check(vk_left)) && (place_free(x+5,y)) 
{x+=5; lado=1; andando=true; parado=false;
}

if ! (keyboard_check(vk_left)) && ! (keyboard_check(vk_right))
{andando=false; parado=true;

//Sprites
if (noar==false) 
{
if (andando=true) && (lado==1) 
{
sprite_index=spr_heroi_correndo_right;
}
if (andando=true) && (lado==0) 
{
sprite_index=spr_heroi_correndo_left; 
}
if (andando==false) && (parado==true) && (lado==1) 
{
sprite_index=spr_heroi_right;
}
if (andando==false) && (parado==true) && (lado==0) 
sprite_index=spr_heroi_left; 
}

else //Caso o personagem NÃO esteja com os pés no chão:
{
if (vspeed>0) || (vspeed<0) && (lado==1)
{
sprite_index=spr_heroi_pulando_right; 
}
if (vspeed>0) || (vspeed<0) && (lado==0)
{
sprite_index=spr_heroi_pulando_left;
}

}
avatar
Ranking : Nota D
Notas recebidas : D
Data de inscrição : 29/03/2009
Número de Mensagens : 927
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 6

Prêmios
   :
   : 1
   :
Ver perfil do usuário

Re: problema com pulo

em Qua 14 Maio 2014, 20:52
cara, acho que você está exagerando nos códigos atoa '-'
sinceramente não sou bom em entender código dos outros, mas façamos assim:
tira o create...
tira esse tanto de sprite.. você só precisa da sprite dele andando pra direita e dele pulando(virado pra direita)...
e no step:
Código:
image_speed=0.3;
//gravidade
if place_free(x,y+2){gravity=0.3}else{gravity=0};
gravity_direction=270;
//andando
if keyboard_check(vk_left) and place_free(x-4,y){x-=4 image_xscale=-1;}else if keyboard_check(vk_right) and place_free(x+4,y){x+=4 image_xscale=1;}else{if vspeed=0{image_index=0}}
//pulando
if keyboard_check(vk_up) and vspeed=0{vspeed=-7}
if vspeed>16 then vspeed=16;
//definindo sprite
if vspeed=0{sprite_index=spr_player_andando}else{sprite_index=spr_player_pulando}

agora explicando:
não precisa deste tanto de sprites cara, afinal, na sprite dele correndo normalmente no 1 frame ele ta parado, sendo apenas necessario mecher com o image_index, e quando a estar virado, você só precisa dele andando pra direita, já que o image_xscale se encarrega de virar ele pra você...

obs: fiz esse code de cabeça então se tiver algo errado fala ai que eu testo e concerto '-'
avatar
Data de inscrição : 31/10/2013
Número de Mensagens : 206
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 10

Prêmios
   : 0
   : 1
   : 0
Ver perfil do usuário

Re: problema com pulo

em Qua 14 Maio 2014, 21:09
makgamer é que este código não é meu é do cara que pus o link ai, por isso esse tanto de coisa kk mas continuando, coloquei seu código e funcionou o movimento mas quando vou da esquerda para direita e direita para esquerda ele da um teleporte, o  que eu faço?
avatar
Ranking : Nota A
Notas recebidas : B-B-B-A-A
Data de inscrição : 02/08/2013
Número de Mensagens : 306
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 33

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: problema com pulo

em Qua 14 Maio 2014, 21:14
manobrother escreveu:makgamer é que este código não é meu é do cara que pus o link ai, por isso esse tanto de coisa kk mas continuando, coloquei seu código e funcionou o movimento mas quando vou da esquerda para direita e direita para esquerda ele da um teleporte, o  que eu faço?

Desculpa a intromissão, vc Centralizou suas Sprites?
avatar
Data de inscrição : 31/10/2013
Número de Mensagens : 206
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 10

Prêmios
   : 0
   : 1
   : 0
Ver perfil do usuário

Re: problema com pulo

em Qua 14 Maio 2014, 21:20
willy kkk vlw tinha esquecido dessa parada, mas tenho outro problema, pq quando eu paro de andar o sprite que fica é o um dos sprites de correr, nao o qual eu escolhi para ficar parado, sabe o que posso fazer?
avatar
Ranking : Nota A
Notas recebidas : B-B-B-A-A
Data de inscrição : 02/08/2013
Número de Mensagens : 306
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 33

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: problema com pulo

em Qua 14 Maio 2014, 21:33
manobrother escreveu:mas tenho outro problema, pq quando eu paro de andar o sprite que fica é o um dos sprites de correr, nao o qual eu escolhi para ficar parado, sabe o que posso fazer?
 
Não entendi, ele fica andando ou em uma imagem errada?

se for uma imagem errada troque o image_index=?   o ? pelo numero da imagem a ser usada!
avatar
Data de inscrição : 31/10/2013
Número de Mensagens : 206
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 10

Prêmios
   : 0
   : 1
   : 0
Ver perfil do usuário

Re: problema com pulo

em Qui 15 Maio 2014, 15:54
vlw makgamer e willy resolvi tudo aqui
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum