Conectar-se
Quem está conectado
14 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 14 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 17/08/2010
Número de Mensagens : 8
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

ajuda com animaçoes

em Ter 17 Ago 2010, 14:33
Cara eu estou fazendo um jogo com o alucard do castlevania
mas o problema eh q ele tem uma animaçao quando começa a andar, e outra quando ja esta andando
entao eu queria q toda vez q acabasse a animaçao dele começando a andar, começasse a animaçao dele andando normal já, alguem sabe como ?
eu uso gm7pro
avatar
Data de inscrição : 14/01/2010
Número de Mensagens : 348
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: ajuda com animaçoes

em Qua 18 Ago 2010, 11:12
Eu não estou em meu pc em casa , pra poder te ajudar mais detalhadamente, porem vou de dar uma ideia como eu fiz mais ou menos isto no jogo do sonic que estou construindo.

Como o sonic ao andar vai adquirindo aceleração eu criei uma variavel ACELERACAO com valor 0 no create, a medida o sonic vai pra direita ou esquerda, esta variavel almenta o valor, pois bem, o sonic começa com uma sprite andando e depois passa a ter uma sprite correndo.
If aceleracao > 0 and aceleracao <10 {sprite anda}
If aceleracao > 10 {sprite corre}

Desta maneira se no lugar de >10 acrescentar colocar >10 and <20, vc pode fazer isto infinitamente, ou seja pode-se fazer com que ate 10 sonic anda de vagar, ate 20 anda normal, ate 30 corre, ate 40 corre de mais e assim por diante.
Se seu personagem não tem aceleração utilize esse principio par alguma coisa que marque um momento, que o gm entenda quando vc quer que as sprits mudem, mesmo ainda estando com o direcional pressionado. VLW.

-----------------------------------------------EDIT----------------------------------------------
Agora que reparei, vc quer que exatamente quando acabar a animação 1 comece a animaçao2
vc vpode usar image_index

Algo neste sentido deve resolver:
No step
image_speed = 0 //para as animaçoes começarem paradas
sprite_index = sprite_1
if image_index = 0 {image_index+=0.3}//ou a velocidade que quiser)
if image_index>10 //quantidade de sub-imagens
{sprite_index = sprite_2; image_index+=0.3}
avatar
Data de inscrição : 25/05/2010
Número de Mensagens : 35
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: ajuda com animaçoes

em Qua 18 Ago 2010, 12:01
cra isso eu nao sei ajuda mas eu amo castlevania fã nº1 de alucard
quero jogo esse jogo ai mas pelo amor de deus nao estraga a historia
avatar
Data de inscrição : 17/08/2010
Número de Mensagens : 8
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Re: ajuda com animaçoes

em Qua 18 Ago 2010, 12:48
mas galaxia eu to tentando aki e nao to conseguindo, tipo ele ta tocando um pedaçinho da segunda animaçao mas mei oq ateh a metade e corta ela e começa a primeira denovo e fica assim, eu keria q começasse a 1 e acabasse e mudasse pra 2 e a 2 seguisse ateh voce parar de andar

if keyboard_check(vk_left) or keyboard_check(vk_right){
sprite_index=spr_move1
image_speed=0.4
}
if !keyboard_check(vk_right) and !keyboard_check(vk_left){
sprite_index=spr_idle
image_speed=0.3
}

Meus codes limpos sao assim, voce axa q consegue juntar ai pra mim ?
spr_idle = eh ele parado
spr_move = eh ele andando 2
spr_move 1= eh ele começando a andar
spr_move 1 = tem 14 frames
spr_move = tem 16 frames
Desculpa por tirar o tempo da galera ai, essa duvida ta me travando muito D:
avatar
Data de inscrição : 14/01/2010
Número de Mensagens : 348
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: ajuda com animaçoes

em Qua 18 Ago 2010, 14:18
@sup_vic2 escreveu:mas galaxia eu to tentando aki e nao to conseguindo, tipo ele ta tocando um pedaçinho da segunda animaçao mas mei oq ateh a metade e corta ela e começa a primeira denovo e fica assim, eu keria q começasse a 1 e acabasse e mudasse pra 2 e a 2 seguisse ateh voce parar de andar

if keyboard_check(vk_left) or keyboard_check(vk_right){
sprite_index=spr_move1
image_speed=0.4
}
if !keyboard_check(vk_right) and !keyboard_check(vk_left){
sprite_index=spr_idle
image_speed=0.3
}

Meus codes limpos sao assim, voce axa q consegue juntar ai pra mim ?
spr_idle = eh ele parado
spr_move = eh ele andando 2
spr_move 1= eh ele começando a andar
spr_move 1 = tem 14 frames
spr_move = tem 16 frames
Desculpa por tirar o tempo da galera ai, essa duvida ta me travando muito D:

Quando sair do serviço vou tentar fazer, flw
avatar
Data de inscrição : 14/01/2010
Número de Mensagens : 348
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: ajuda com animaçoes

em Qua 18 Ago 2010, 19:37
Chequei do serviço, conforme combinado, segue;
Primeiramente vamos entender.
quando vc diz que tal sprite tem 14 frames, agente vai trata-la, como 13 pois ela começa na subimagem 0, a mesma coisa para a de 16, vai ser 15, ok, vamos lá.
Como a mudança de sprites é no mesmo evento Keyboard direita ou esquerda, temos que criar uma constante de controle, vamos chama-la de ctrl_spr
AO CODIGO:
No CREATE do player coloque:
ctrl_spr=false

No STEP coloque:
image_speed = 0 //para subimagem não avançarem sozinhas
if ! keyboard_check(vk_right)and ! keyboard_check(vk_left)
{sprite_index = spr_idle;ctrl_spr=false}//parado
if keyboard_check(vk_right)and ctrl_spr=false
{
image_xscale = 1//virado para a direita
x+=5//player anda direita//ou use seu movimento
sprite_index = spr_move_1 //começa a andar
if image_index<13 {image_index+=0.4;}
if image_index>13 ctrl_spr=true
}
else
if keyboard_check(vk_right)and ctrl_spr=true
{x+=5;//player anda direita//ou use seu movimento
sprite_index = spr_move;//andando 2
image_index+=0.4
}
//------------------------------
if ! keyboard_check(vk_left)and ! keyboard_check(vk_right)
{sprite_index = spr_idle;ctrl_spr=false}//parado
if keyboard_check(vk_left)and ctrl_spr=false
{
image_xscale = -1//virado para a direita
x-=5//player anda direita//ou use seu movimento
sprite_index = spr_move_1 //começa a andar
if image_index<13 {image_index+=0.4;}
if image_index>13 ctrl_spr=true
}
else
if keyboard_check(vk_left)and ctrl_spr=true
{x-=5;//player anda direita//ou use seu movimento
sprite_index = spr_move;//andando 2
image_index+=0.4
}
Responda se deu certo, se não der, pode ser alguma coisa no seu code, pois testei os codigos copiando e colando deste post e funcionou, qualquer coisa pergunte.
Espero ter ajudado, FLW.

-----------EDIT----------------
ah ja estava me esquecendo, no objeto player coloque a sprite dele parado.
avatar
Data de inscrição : 17/08/2010
Número de Mensagens : 8
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Re: ajuda com animaçoes

em Qua 18 Ago 2010, 20:03
CARACA MANO VOCE É DEMAIS, VALEU DEU CERTO MSM CARA *-----*
brigado eu tava travado nessa parte axei q eu nunca faria <333 muito obrigado
eu to com outras duvidas ai sei la se voce quiser me dar uma ajuda la tbm
http://www.gamemakerbrasil.com/perguntas-respostas-f8/ataque-durante-pulo-t9995.htm#75139
valeu ai cara serio, sem noçao muito obrigado
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum