alternar velocidade

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

alternar velocidade

Mensagem por glaysonmestre em Qua 02 Jan 2013, 07:32

crirei uma animaçao do akuma para meu jogo a animaçao dele parado esta perfeita em speed = image_speed=2.2 entretando essa veloxidade pra quando ele vai fazer a animaçao para andar pra frente e muito rapida gostaria de saber como faço para diminuir na hora q colocar pra frente para andar depois q parar voltar para a velocidade image_speed=2.2 fiz um video mas ficou lagado haha http://www.youtube.com/watch?feature=player_embedded&v=3j5H-g97lDU

glaysonmestre

Número de Mensagens : 187
Data de inscrição : 01/01/2013
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: alternar velocidade

Mensagem por Mannoroth em Qua 02 Jan 2013, 11:41

Põe no step:
Código:
if sprite_index=spr_andar image_speed=1.5 else image_speed=2.2

assim a velocidade vai pra 1.5 só quando o sprite for spr_andar.

Mannoroth

Ranking : Nota D
Número de Mensagens : 836
Idade : 26
Data de inscrição : 05/10/2010
Notas recebidas : D+D
Reputação : 12
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: alternar velocidade

Mensagem por Luan Maia em Qua 02 Jan 2013, 12:41

Ou:


if (vspeed == 0)//Se a velocidade vertical for zero (não está em queda e nem pulando)
{
if (hspeed == 0) //Se a velocidade horizontal for 0 (parado horizontalmente)
{ //Então
image_speed = 2.2; //Velocidade dos frames é 2,2
}
else //Senão, ou seja, se estiver se movendo horizontalmente
{
image_speed = AQUI A VELOCIDADE DOS FRAMES PARA QUANDO ANDAR; //Velocidade dos frames é a colocada
}
}
/*
O que está em azul eu coloquei porque se você quiser configurar uma velocidade para quando pular, isso é necessário para não confundir
*/



E se quiser configurar a velocidade do pulo e da queda:


//Primeiro a do pulo
if (vspeed < 0) //Se a velocidade vertical for menor que zero, ou seja, se estiver indo para cima
{
image_speed = AQUI A VELOCIDADE DOS FRAMES DO PULO; //Velocidade dos frames é a colocada
}

//Agora a da queda
if (vspeed > 0) //Se a velocidade vertical for maior que zero, ou seja, se estiver indo para baixo
{
image_speed = AQUI A VELOCIDADE DOS FRAMES DA QUEDA; //Velocidade dos frames é a colocada
}


Tentei mostrar como configurar a velocidade da transição de frames em cada situação, para você poder configurar todos.
Espero ter ajudado!

Luan Maia

Ranking : Sem avaliações
Número de Mensagens : 399
Idade : 20
Data de inscrição : 01/07/2010
Notas recebidas : D+C+C+D
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://blogluanmaia.blogspot.com.br/

Voltar ao Topo Ir em baixo

Re: alternar velocidade

Mensagem por glaysonmestre em Qua 02 Jan 2013, 15:35

valeu deu certo Mannoroth esse codigo

glaysonmestre

Número de Mensagens : 187
Data de inscrição : 01/01/2013
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: alternar velocidade

Mensagem por glaysonmestre em Qua 02 Jan 2013, 15:37

e luan maia meu codigo na tecla up ta assim

if keyboard_check(vk_up){ //se a tecla direita for pressionada
y-=4 //faz o player se mover 5 pixels relativos a ele
sprite_index = pulo_1 //invoca o sprite do player pulando
}
if place_free(x,y+2){gravity=1}
else
gravity=2.2
if vspeed>15{vspeed=15}


nao sei oq acontece q ele ta tipo grudado no chao teria como fazer ele pular sem ultilizar gravidade? nas rom de arcade sera q eles usam esse tipo de gravidade nesse estilo de jogo q eu to fazendo?

glaysonmestre

Número de Mensagens : 187
Data de inscrição : 01/01/2013
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: alternar velocidade

Mensagem por Luan Maia em Qui 03 Jan 2013, 13:17

Coloca isso no step:
Código:

gravity = 1;

if (keyboard_check_pressed(vk_up))
{
vspeed = -4; //No -4 coloque a velocidade do pulo, lembrando que deve ser negavita para poder subir!
sprite_index = pulo_1;
}
if (vspeed>15)
{
vspeed = 15;
}

E cria um evento de colisão com o chão e coloca:
Código:

vspeed = 0;

Luan Maia

Ranking : Sem avaliações
Número de Mensagens : 399
Idade : 20
Data de inscrição : 01/07/2010
Notas recebidas : D+C+C+D
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://blogluanmaia.blogspot.com.br/

Voltar ao Topo Ir em baixo

Re: alternar velocidade

Mensagem por glaysonmestre em Sex 04 Jan 2013, 23:00

alguns problemas eu pulo e ele nao sai muito do chao tem q segurar pra ele subir e se segura muito ele vai so subindo sem parar , outro problema depois q ele cai no chao nao da mais para movimentar para os lados

glaysonmestre

Número de Mensagens : 187
Data de inscrição : 01/01/2013
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: alternar velocidade

Mensagem por Mannoroth em Dom 06 Jan 2013, 23:59

coloca isso no evento step:
Código:
//abaixo tratamos da gravidade
if place_free(x,y+2)
{
 gravity=1
 gravity_direction=270
 }
else
{
 gravity=0
}

//abaixo tratamos do pulo em si
if keyboard_check_pressed(vk_up) {
if sprite_index=spr_parado
{
sprite_index=spr_pulando
vspeed=-13
gravity=1
}
}

voce tem que fazer o player só poder pular se já não estiver no ar, no exemplo ae eu botei a condição de que só pode pular se o sprite dele for spr_parado. E quando ele pular ele vai mudar o sprite para spr_pulando, e assim que ele tocar o chão mudará de novo o sprite para spr_parado, podendo só assim pular de novo.
O seu pulo tá baixo pq vc pegou o exemplo do luan que é vspeed=-4 e não alterou, vc tem que mudar ele (como o Luan falou) pra um valor menor, como vspeed=-13 do exemplo que eu dei aí, qt menor o valor, maior o pulo.
detalhe importante, use keyboard_check_pressed e não keyboard_check, como no meu exemplo acima.
e na colisao com o obj_chao (objeto que seria o chão), ponha isso:
Código:
if vspeed>1 {vspeed=0;
sprite_index=spr_parado} //se personagem estiver caindo, a queda irá parar ao colidir com o chão.

Mannoroth

Ranking : Nota D
Número de Mensagens : 836
Idade : 26
Data de inscrição : 05/10/2010
Notas recebidas : D+D
Reputação : 12
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: alternar velocidade

Mensagem por Luan Maia em Seg 07 Jan 2013, 00:10

Mannoroth escreveu:coloca isso no evento step:
Código:
//abaixo tratamos da gravidade
if place_free(x,y+2)
{
 gravity=1
 gravity_direction=270
 }
else
{
 gravity=0
}

//abaixo tratamos do pulo em si
if keyboard_check_pressed(vk_up) {
if sprite_index=spr_parado
{
sprite_index=spr_pulando
vspeed=-13
gravity=1
}
}
Ai se ele não estiver parado e estiver com sprite dele andando não pode pular. O melhor seria verificar se a velocidade vertical é nula. Ficaria assim:
Código:

if (place_free(x,y+2))
{
 gravity = 1;
 gravity_direction = 270;
 }
else
{
gravity = 0;
}

if (keyboard_check_pressed(vk_up))
{
if (vspeed == 0)
{
sprite_index = spr_pulando;
vspeed=-13
}
}

Luan Maia

Ranking : Sem avaliações
Número de Mensagens : 399
Idade : 20
Data de inscrição : 01/07/2010
Notas recebidas : D+C+C+D
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://blogluanmaia.blogspot.com.br/

Voltar ao Topo Ir em baixo

Re: alternar velocidade

Mensagem por Mannoroth em Seg 07 Jan 2013, 00:53

Luan Maia escreveu:

Ai se ele não estiver parado e estiver com sprite dele andando não pode pular. O melhor seria verificar se a velocidade vertical é nula. Ficaria assim:
Código:

if (place_free(x,y+2))
{
 gravity = 1;
 gravity_direction = 270;
 }
else
{
gravity = 0;
}

if (keyboard_check_pressed(vk_up))
{
if (vspeed == 0)
{
sprite_index = spr_pulando;
vspeed=-13
}
}

o ruim do seu codigo luan é que se personagem estiver no meio da execução de um golpe, ou qualquer outra situação em que não deveria pular, ele poderá pular, daí o porquê do meu if spr_parado.
Então ficaria:
Código:
if keyboard_check_pressed(vk_up) {
if sprite_index=spr_parado or sprite_index=spr_andando //pra pular ele deve estar parado ou andando no chão, em outras situações nao pulará
{
sprite_index=spr_pulando
vspeed=-13
gravity=1
}
}
aê se por acaso tiver mais alguma situação em que pode pular acrescenta na condição.

Mannoroth

Ranking : Nota D
Número de Mensagens : 836
Idade : 26
Data de inscrição : 05/10/2010
Notas recebidas : D+D
Reputação : 12
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: alternar velocidade

Mensagem por Luan Maia em Seg 07 Jan 2013, 01:13

É, existe milhares de maneiras, uma outra seria fazer o que falei e anular a ação quando o sprite for de golpe ou criar uma variável que ativa quando estiver atacando e verifica-la na hora de pular e com certeza ainda existe muitas outras possibilidades que talvez sejam mais eficazes. O certo seria aplicar a que achar mais compreensível.

Luan Maia

Ranking : Sem avaliações
Número de Mensagens : 399
Idade : 20
Data de inscrição : 01/07/2010
Notas recebidas : D+C+C+D
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://blogluanmaia.blogspot.com.br/

Voltar ao Topo Ir em baixo

Re: alternar velocidade

Mensagem por Conteúdo patrocinado Hoje à(s) 16:19


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