personagem fica trocando entre pulando e parado quando cai no chão gms2 Tópico resolvido

Perguntas? A comunidade te ajuda a resolver.
Trevor Belmont
Novato
Novato
Mensagens: 10

personagem fica trocando entre pulando e parado quando cai no chão gms2  Tópico resolvido

Mensagem por Trevor Belmont » Qua Jan 06, 2021 2:27 pm

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;
}
Editado pela última vez por Trevor Belmont em Seg Jan 11, 2021 5:30 am, em um total de 1 vez.

Chuaschinai
Colaborador
Colaborador
Mensagens: 148

Re: personagem fica trocando entre pulando e parado quando cai no chão gms2

Mensagem por Chuaschinai » Qua Jan 06, 2021 4:47 pm

Tente postar o código inteiro para termos uma ideia melhor.

Trevor Belmont
Novato
Novato
Mensagens: 10

Re: personagem fica trocando entre pulando e parado quando cai no chão gms2

Mensagem por Trevor Belmont » Seg Jan 11, 2021 5:31 am

grononmc escreveu:Tente postar o código inteiro para termos uma ideia melhor.
atualizado

Chuaschinai
Colaborador
Colaborador
Mensagens: 148

Re: personagem fica trocando entre pulando e parado quando cai no chão gms2

Mensagem por Chuaschinai » Seg Jan 11, 2021 9:32 am

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
Novato
Mensagens: 10

Re: Re: personagem fica trocando entre pulando e parado quando cai no chão gms2

Mensagem por Trevor Belmont » Seg Jan 11, 2021 5:46 pm

sim, tentetei alterar isso mas n vi mudanças

Chuaschinai
Colaborador
Colaborador
Mensagens: 148

Re: personagem fica trocando entre pulando e parado quando cai no chão gms2

Mensagem por Chuaschinai » Seg Jan 11, 2021 9:49 pm

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.

Responder

Quem está online

Usuários navegando neste fórum: Bing [Bot] e 0 visitante