Obrigado por visitar a The Game Makers Brasil Use o fórum de Dúvidas para fazer perguntas. Se está em busca de aprender dê uma olhada nos tutoriais. |
personagem fica trocando entre pulando e parado quando cai no chão gms2 Tópico resolvido
- Trevor Belmont
- Novato
- Reações: 0
- Mensagens: 10
personagem fica trocando entre pulando e parado quando cai no chão gms2 Tópico resolvido
apos colocar o codigo pro personagem entrar no estado de queda automaticamente , quando ele bate no chao fica trocando entre os estados de pulo e parado rapidamente, ou caso mecha na sprite, ele entra no chão, alguem sabe como corrigir?
case "pulando":
{
//Estou caindo
if (velv > 0)
{
sprite_index = spr_player_fall01;
}
else
{
sprite_index = spr_player_pulo;
//Garantindo que a animaçao não se repita
if (image_index >= image_number-1)
{
image_index = image_number-1
}
}
//Condição de troca de estado
if (chao)
{
estado = "parado";
velh = 0;
}
else if (bladedarsh)
{
estado = "bdarsh";
image_index = 0;
}
else if (hkick)
{
estado = "hkick";
image_index = 0;
velv = 0;
}
break;
}
case "parado":
{
//Comportamento do estado
sprite_index = spr_player1_parado;
//Condição de troca de estado
//Movendo
if (rigth || left)
{
estado = "movendo";
}
else if (jump || velv !=0)
{
estado = "pulando";
velv = (-max_velv * jump);
image_index = 0;
}
else if (attack)
{
estado = "ataque";
velh = 0;
image_index = 0;
}
else if (bladedarsh)
{
estado = "bdarsh";
image_index = 0;
}
else if (hkick)
{
estado = "hkick";
image_index = 0;
}
else if (uppercut)
{
estado = "uppercut";
image_index = 0;
}
break;
}
case "movendo":
{
//Comportamento do estado de movimento
sprite_index = spr_player_walk;
//Condição de troca de estado
//parado
if (abs(velh) < .1)
{
estado = "parado";
velh = 0;
}
else if (jump)
{
estado = "pulando";
velv = -max_velv;
image_index = 0;
}
else if (attack)
{
estado = "ataque";
velh = 0;
image_index = 0;
}
else if (bladedarsh)
{
estado = "bdarsh";
image_index = 0;
}
else if (hkick)
{
estado = "hkick";
image_index = 0;
}
break;
}
case "pulando":
{
//Estou caindo
if (velv > 0)
{
sprite_index = spr_player_fall01;
}
else
{
sprite_index = spr_player_pulo;
//Garantindo que a animaçao não se repita
if (image_index >= image_number-1)
{
image_index = image_number-1
}
}
//Condição de troca de estado
if (chao)
{
estado = "parado";
velh = 0;
}
else if (bladedarsh)
{
estado = "bdarsh";
image_index = 0;
}
else if (hkick)
{
estado = "hkick";
image_index = 0;
velv = 0;
}
break;
}
case "parado":
{
//Comportamento do estado
sprite_index = spr_player1_parado;
//Condição de troca de estado
//Movendo
if (rigth || left)
{
estado = "movendo";
}
else if (jump || velv !=0)
{
estado = "pulando";
velv = (-max_velv * jump);
image_index = 0;
}
else if (attack)
{
estado = "ataque";
velh = 0;
image_index = 0;
}
else if (bladedarsh)
{
estado = "bdarsh";
image_index = 0;
}
else if (hkick)
{
estado = "hkick";
image_index = 0;
}
else if (uppercut)
{
estado = "uppercut";
image_index = 0;
}
break;
}
case "movendo":
{
//Comportamento do estado de movimento
sprite_index = spr_player_walk;
//Condição de troca de estado
//parado
if (abs(velh) < .1)
{
estado = "parado";
velh = 0;
}
else if (jump)
{
estado = "pulando";
velv = -max_velv;
image_index = 0;
}
else if (attack)
{
estado = "ataque";
velh = 0;
image_index = 0;
}
else if (bladedarsh)
{
estado = "bdarsh";
image_index = 0;
}
else if (hkick)
{
estado = "hkick";
image_index = 0;
}
break;
}
Editado pela última vez por Trevor Belmont em Seg Jan 11, 2021 5:30 am, em um total de 1 vez.
- Chuaschinai
- Colaborador
- Reações: 6
- Mensagens: 198
-
Re: personagem fica trocando entre pulando e parado quando cai no chão gms2
Tente postar o código inteiro para termos uma ideia melhor.
- Trevor Belmont
- Novato
- Reações: 0
- Mensagens: 10
Re: personagem fica trocando entre pulando e parado quando cai no chão gms2
atualizadogrononmc escreveu:Tente postar o código inteiro para termos uma ideia melhor.
- Chuaschinai
- Colaborador
- Reações: 6
- Mensagens: 198
-
Re: personagem fica trocando entre pulando e parado quando cai no chão gms2
Não sei se pode ser isso, mas quando ele encontra o chão, você define a variável velh como 0 e não o velv, pelo que consegui compreender o velh é velocidade horizontal e velv é vertical, não é?.
- Trevor Belmont
- Novato
- Reações: 0
- Mensagens: 10
Re: Re: personagem fica trocando entre pulando e parado quando cai no chão gms2
sim, tentetei alterar isso mas n vi mudanças
- Chuaschinai
- Colaborador
- Reações: 6
- Mensagens: 198
-
Re: personagem fica trocando entre pulando e parado quando cai no chão gms2
O que tem na variável chão?
Seria um place_meeting ou algo do tipo?
Tem algumas partes de código que fica meio complicado entender, sem um apanhado geral das variáveis.
Seria um place_meeting ou algo do tipo?
Tem algumas partes de código que fica meio complicado entender, sem um apanhado geral das variáveis.
Quem está online
Usuários navegando neste fórum: Nenhum usuário registrado e 2 visitantes