Sprite não muda, quando personagem anda

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

Sprite não muda, quando personagem anda

Mensagem por vitorfernandes13 em Dom 09 Fev 2014, 16:40

Estou fazendo um game, e estou com dificuldade na animação, gostaria que meu personagem tivesse  a seguinte animação ao andar:
http://i.picasion.com/pic76/fd8f4c2fc986db94fbe96234a39ab5ea.gif

O problema, é que quando apertamos direita e o personagem anda, ele não muda de sprite (a animação é composta por 2 sprites) porém quando ele para, ai sim ele muda de sprite, gostaria de saber se tem jeito de arrumar isso. Olhe os codigos:

Código:

//Step personagem
if global.personagem = true { //Se o personagem poder se movimentar
    if keyboard_check(vk_right) {  //Movimento direita
        if place_free(x+4, y) {
            sprite_index = pers_dir  //Usarei a animação do link
            x += global.velocidade
            image_speed = 5
        }
    } else if keyboard_check(vk_left) {  //Movimento esquerda
        if place_free(x-4, y) {
            sprite_index = pers_esq
            x -= global.velocidade
            image_speed = 5
        }
    } else {   //Parado
    image_speed = 0
    }

    if place_free(x,y+1) {   //Gravidade
        gravity=0.45;  
        noar=true;
    }else {
        gravity=0;  
        noar=false;
        global.pulo = 0
    }
    
    if keyboard_check_pressed(vk_up) && !place_free(x,y+1) && global.pulo < 3 {
    vspeed = -8
    global.pulo += 1
    }

} else {   //Se personagem for falso
    image_speed = 0  //A imagem não será animada
}



Última edição por vitorfernandes13 em Dom 09 Fev 2014, 16:49, editado 1 vez(es)

vitorfernandes13

Ranking : Nota C
Número de Mensagens : 284
Data de inscrição : 11/01/2014
Notas recebidas : C
Reputação : 11
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Sprite não muda, quando personagem anda

Mensagem por crocha12 em Dom 09 Fev 2014, 16:46

tenta assim
Código:
//Step personagem
if global.personagem = true { //Se o personagem poder se movimentar
    if keyboard_check(vk_right) {  //Movimento direita
        if place_free(x+4, y) {
            sprite_index = pers_dir  //Usarei a animação do link
            x += global.velocidade
            image_speed = 5
        }
    } else if keyboard_check(vk_left) {  //Movimento esquerda
        if place_free(x-4, y) {
            sprite_index = pers_esq
            x -= global.velocidade
            image_speed = 5
        }
    } else {  //Parado
    image_index = 0
    }

    if place_free(x,y+1) {  //Gravidade
        gravity=0.45; 
        noar=true;
    }else {
        gravity=0; 
        noar=false;
        global.pulo = 0
    }
   
    if keyboard_check_pressed(vk_up) && !place_free(x,y+1) && global.pulo < 3 {
    vspeed = -8
    global.pulo += 1
    }

} else {  //Se personagem for falso
    image_index = 0  //A imagem não será animada
}

crocha12

Número de Mensagens : 96
Idade : 16
Data de inscrição : 08/11/2013
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Sprite não muda, quando personagem anda

Mensagem por vitorfernandes13 em Dom 09 Fev 2014, 16:59

Quanto eu tiro o image_speed dá certo, so que a animação vai rápido de mais. Será que eu to colocando o image_speed no lugar errado??
--
Eu sou topeira mesmo, não é image_speed = 5, e sim image_speed = 0.5 para a imagem ir mais lenta   
Tópico RESOLVIDO


Última edição por vitorfernandes13 em Dom 09 Fev 2014, 17:04, editado 1 vez(es)

vitorfernandes13

Ranking : Nota C
Número de Mensagens : 284
Data de inscrição : 11/01/2014
Notas recebidas : C
Reputação : 11
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Sprite não muda, quando personagem anda

Mensagem por crocha12 em Dom 09 Fev 2014, 17:01

coloque no create

crocha12

Número de Mensagens : 96
Idade : 16
Data de inscrição : 08/11/2013
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Sprite não muda, quando personagem anda

Mensagem por Pedrin72 em Dom 09 Fev 2014, 23:47

Eu sei que o tópico esta resolvido, mais só pra constar, na hora de criar um sistema de movimentação em que a animação só ocorre quando o player esta andando, é mais fácil usar isso ( em jogos de plataforma ):

No step do player

Código:

if keyboard_check(vk_right) and place_free(x+5,y){
x+= 5; // Anda 5 pixels a direita
image_speed = 0.5;// Velocidade da animação
image_xscale = 1;// Escala da imagem em x - 1 é normal e -1 é inveritda

 
}else if keyboard_check(vk_left) and place_free(x-5,y){
x-= 5; // Anda 5 pixels a direita
image_speed = 0.5;// Velocidade da animação
image_xscale = -1;// Escala da imagem em x - 1 é normal e -1 é inveritda
}else{
image_index = 0;
image_speed = 0;
}


Neste caso, você pode usar apenas uma sprite virada para a direita, pois o image_xscale vai tratar de vira-la para a esquerda na hora de andar para a esquerda!


Assim fica bem mais fácil!

Pedrin72

Ranking : Nota D
Número de Mensagens : 128
Idade : 18
Data de inscrição : 30/01/2013
Notas recebidas : D
Reputação : 6
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Sprite não muda, quando personagem anda

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


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