Página 1 de 1
como eu faço para, a animação do personagem iniciar so quando ele andar ?
Enviado: Dom Fev 04, 2024 5:28 pm
por Pato_Programador;
codigo usado para movimento
f(keyboard_check(vk_right)){
x+=4;
image_speed = 0.8
image_xscale = abs(image_xscale) * 1
sprite_index = S_Player
}else if(keyboard_check(vk_left)){
x-=4;
image_speed = 0.8
image_xscale = abs(image_xscale) * -1
sprite_index = S_Player
}
if(keyboard_check(vk_up)){
y-=4;
image_speed = 0.8
sprite_index = S_Pup
}else if(keyboard_check(vk_down)){
y+=4;
image_speed = 0.8
sprite_index = S_PDown
}
Re: como eu faço para, a animação do personagem iniciar so quando ele andar ? Tópico resolvido
Enviado: Dom Fev 04, 2024 5:39 pm
por ValdeciVieira
Defina
image_speed para 0 no create e redifina novamente para 0 quando nenhuma tecla de movimentação estiver sendo pressionada, seu código utiliza else if, então dá pra colocar um último else que indique justamente isso, mas precisa colocar outro else entre o as teclas horizontais e verticais, sendo assim seu código ficaria:
Código: Selecionar todos
if(keyboard_check(vk_right)){
x+=4;
image_speed = 0.8
image_xscale = abs(image_xscale) * 1
sprite_index = S_Player
}
else if(keyboard_check(vk_left)){
x-=4;
image_speed = 0.8
image_xscale = abs(image_xscale) * -1
sprite_index = S_Player
}
else if(keyboard_check(vk_up)){
y-=4;
image_speed = 0.8
sprite_index = S_Pup
}
else if(keyboard_check(vk_down)){
y+=4;
image_speed = 0.8
sprite_index = S_PDown
}
else {
image_speed = 0
image_index = 0 //usado pra zerar o frame de animação do sprite
}
deu certo, +ou- pq, colocando o else no ultimo "else if " ele funciona para cima e para baixo,
Enviado: Dom Fev 04, 2024 6:16 pm
por Pato_Programador;
deu certo, +ou- pq, colocando o else no ultimo "else if " ele funciona para cima e para baixo,mas quando coloco para horizontal ele so fica parado, parado na horizontal e na vertical
Re: como eu faço para, a animação do personagem iniciar so quando ele andar ?
Enviado: Dom Fev 04, 2024 6:20 pm
por ValdeciVieira
Manda o código novamente.
Re: como eu faço para, a animação do personagem iniciar so quando ele andar ?
Enviado: Dom Fev 04, 2024 6:23 pm
por Pato_Programador;
if(keyboard_check(vk_right)){
x+=4;
image_speed = 0.8
image_xscale = abs(image_xscale) * 1
sprite_index = S_Player
}else if(keyboard_check(vk_left)){
x-=4;
image_speed = 0.8
image_xscale = abs(image_xscale) * -1
sprite_index = S_Player
}
else{
image_speed = 0
image_index = 0
}
if(keyboard_check(vk_up)){
y-=4;
image_speed = 0.8
sprite_index = S_Pup
}else if(keyboard_check(vk_down)){
y+=4;
image_speed = 0.8
sprite_index = S_PDown
}
else{
image_speed = 0
image_index = 0
}
Re: como eu faço para, a animação do personagem iniciar so quando ele andar ?
Enviado: Dom Fev 04, 2024 6:32 pm
por ValdeciVieira
Como imaginei, as instruções que eu passei eram uma das formas de se chegar ao resultado esperado mas o código que eu mandei já estava com elas implementadas.
Desculpe se fui muito vago e acabei te confundindo :(
Re: como eu faço para, a animação do personagem iniciar so quando ele andar ?
Enviado: Dom Fev 04, 2024 6:36 pm
por Pato_Programador;
tranquilo
mas teria outro jeito de chegar no resultado ?
Re: como eu faço para, a animação do personagem iniciar so quando ele andar ?
Enviado: Dom Fev 04, 2024 6:45 pm
por ValdeciVieira
Pato_Programador; escreveu: ↑Dom Fev 04, 2024 6:36 pm
mas teria outro jeito de chegar no resultado ?
Sempre há inúmeras formas de se chegar a um resultado quando se trata de programação, dado o grande número de funções, é possível ter n códigos que façam exatamente a mesma coisa.
Ainda mais com a possibilidade de criar suas próprias funções.