GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» Retorno da GMBR!!!
por theguitarmester Ter 19 Mar 2024, 22:38

» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27

» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30

» Mudar cor de apenas uma palavra
por lunalol Sex 01 Mar 2024, 13:42

» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17

» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18

» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34

» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13

» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18

» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12

» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02

» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55

» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42

» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56

» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21

» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21

» Asteroid Core - Early Acesse Update [0.2.0.0]
por JOZ. Seg 08 Jan 2024, 14:39

» Versionamento de código com GitHub
por GabrielXavier Seg 08 Jan 2024, 07:32

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por kolesovsup Sex 29 Dez 2023, 07:16

» a funçao approach ainda existe?
por PEDRINDEV Ter 26 Dez 2023, 20:05

» Inimigo ataca até por trás! >:(
por saim Sex 22 Dez 2023, 08:55

» [RESOLVIDO]Spawn após morte
por Deception_1999 Dom 17 Dez 2023, 16:39

» Remunerado $$$ - Procuro programador para ajudar a "montar" um jogo
por theguitarmester Sáb 02 Dez 2023, 16:28

» Game maker nao abre
por Cerf Dom 26 Nov 2023, 12:01


Sprite_index no step

5 participantes

Ir para baixo

Sprite_index no step Empty Sprite_index no step

Mensagem por Esaucm98 Seg 30 Jul 2012, 16:18

Oi, eu to com uma duvida, preciso usar a variável sprite_index no evento step, mas o problema que os sprites serão animações, assim sendo, como o step executa toda hora, so fica aparecendo a primeira imagem da animação, ou seja não executa a animação, queria saber como resolver isso.

obrigado
avatar
Esaucm98

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 13/05/2012
Reputação : 4
Número de Mensagens : 275
Prêmios : Sprite_index no step Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://www.legioncrafters.tk

Ir para o topo Ir para baixo

Sprite_index no step Empty Re: Sprite_index no step

Mensagem por GabrielXavier Seg 30 Jul 2012, 16:27

Se voce colocar so sprite_index vai acontecer isso sempre.
voce tem que criar uma condiçao para o sprite_index exucultar
ex:
if keyboard_check(vk_space){sprite_index = spr_animaçao}
GabrielXavier
GabrielXavier

Games Ranking : Nota A

Notas recebidas : A
Data de inscrição : 25/02/2012
Reputação : 40
Número de Mensagens : 399
Prêmios : Sprite_index no step Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 1 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker Studio 2.0


Ir para o topo Ir para baixo

Sprite_index no step Empty Re: Sprite_index no step

Mensagem por Esaucm98 Seg 30 Jul 2012, 16:33

a condição é if speed > 0 no step
mesmo assim ainda tem esse problema
avatar
Esaucm98

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 13/05/2012
Reputação : 4
Número de Mensagens : 275
Prêmios : Sprite_index no step Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://www.legioncrafters.tk

Ir para o topo Ir para baixo

Sprite_index no step Empty Re: Sprite_index no step

Mensagem por GabrielXavier Seg 30 Jul 2012, 16:45

aqui ta funconando normal olhe:
https://dl.dropbox.com/s/x264h4snjjdfsjz/ex.gmk?dl=1

Faz uma pequena engine de exemplo e pote-a aqui que alguem te ajudara.
Flws.

Off: Terei que sair.
GabrielXavier
GabrielXavier

Games Ranking : Nota A

Notas recebidas : A
Data de inscrição : 25/02/2012
Reputação : 40
Número de Mensagens : 399
Prêmios : Sprite_index no step Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 1 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker Studio 2.0


Ir para o topo Ir para baixo

Sprite_index no step Empty Re: Sprite_index no step

Mensagem por Thiago_o_programador Seg 30 Jul 2012, 16:50

Se for o que eu to pensando coloque:
Código:
if speed > 0 {sprite_index=//animação
image_speed=.3}
pode ser por que você provalvemente setou a image_speed em 0.
Se não for isso basta dar um toque
Thiago_o_programador
Thiago_o_programador

Games Ranking : Nota D

Notas recebidas : D - C - D - C
Data de inscrição : 14/05/2009
Reputação : 7
Número de Mensagens : 713
Prêmios : Sprite_index no step Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Sprite_index no step Empty Re: Sprite_index no step

Mensagem por Esaucm98 Seg 30 Jul 2012, 17:02

Thiago_o_programador escreveu:Se for o que eu to pensando coloque:
Código:
if speed > 0 {sprite_index=//animação
image_speed=.3}
pode ser por que você provalvemente setou a image_speed em 0.
Se não for isso basta dar um toque

não a image_speed esta normal, oque eu fiz foi mais ou menos assim

//Sprites ajustados por direção e velocidade
if direction>0 && direction < 90 or direction > 270 && direction < 360
{
if speed=0
{
sprite_index=spr_direita_parado
}
else
{
sprite_index=spr_direita_andando
}
}
if direction > 90 && direction < 270
{
if speed=0
{
sprite_index=spr_esquerda_parado
}
else
{
sprite_index=spr_esquerda_andando
}
}
avatar
Esaucm98

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 13/05/2012
Reputação : 4
Número de Mensagens : 275
Prêmios : Sprite_index no step Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://www.legioncrafters.tk

Ir para o topo Ir para baixo

Sprite_index no step Empty Re: Sprite_index no step

Mensagem por Kapoty Seg 30 Jul 2012, 17:07

Crie uma var chamada "sprite_minha" e use-a assim :

Na condição de checar a direção coloque
Código:
if speed =  0
{
sprite_minha = "parado"
}

No Step coloque

Código:
if sprite_minha = "parado" and sprite_index !=spr_parado
{
sprite_index=spr_parado
}
Kapoty
Kapoty

Games Ranking : Nota B

Notas recebidas : E + D + C + B + D +B + A
Data de inscrição : 05/11/2011
Reputação : 22
Número de Mensagens : 635
Prêmios : Sprite_index no step Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Sprite_index no step Empty Re: Sprite_index no step

Mensagem por Esaucm98 Seg 30 Jul 2012, 17:12

kapoty escreveu:Crie uma var chamada "sprite_minha" e use-a assim :

Na condição de checar a direção coloque
Código:
if speed =  0
{
sprite_minha = "parado"
}

No Step coloque

Código:
if sprite_minha = "parado" and sprite_index !=spr_parado
{
sprite_index=spr_parado
}

vlw precinto que isso vai da certo, vo testar e edito ;D

edit:

Não, achei que ia funcionar esse , mas ficou a mesma coisa a animação ficou congelada na primeira "image_index".

acho que vou fazer uma engine e mostrar aqui oque ta acontecendo ai fica melhor


Última edição por Esaucm98 em Seg 30 Jul 2012, 17:25, editado 1 vez(es)
avatar
Esaucm98

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 13/05/2012
Reputação : 4
Número de Mensagens : 275
Prêmios : Sprite_index no step Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://www.legioncrafters.tk

Ir para o topo Ir para baixo

Sprite_index no step Empty Re: Sprite_index no step

Mensagem por Thiago_o_programador Seg 30 Jul 2012, 17:17

fiz umas mudanças na sintaxe, testa aí e vê se funcionou:
Código:
//Sprites ajustados por direção e velocidade
if (direction>=0&&direction<=90)or(direction>270&&direction<359) {
if speed=0{sprite_index=spr_direita_parado}else{sprite_index=spr_direita_andando}}
if direction>90&&direction<=270 {
if speed=0{
sprite_index=spr_esquerda_parado}else{sprite_index=spr_esquerda_andando}}
Thiago_o_programador
Thiago_o_programador

Games Ranking : Nota D

Notas recebidas : D - C - D - C
Data de inscrição : 14/05/2009
Reputação : 7
Número de Mensagens : 713
Prêmios : Sprite_index no step Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Sprite_index no step Empty Re: Sprite_index no step

Mensagem por Esaucm98 Seg 30 Jul 2012, 17:21

Não deu, desculpa perguntar mas oque mudou no código além da estrutura?
avatar
Esaucm98

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 13/05/2012
Reputação : 4
Número de Mensagens : 275
Prêmios : Sprite_index no step Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://www.legioncrafters.tk

Ir para o topo Ir para baixo

Sprite_index no step Empty Re: Sprite_index no step

Mensagem por Kapoty Seg 30 Jul 2012, 17:22

Esaucm98 escreveu:Não deu, desculpa perguntar mas oque mudou no código além da estrutura?

E o meu modo funcionou?
Kapoty
Kapoty

Games Ranking : Nota B

Notas recebidas : E + D + C + B + D +B + A
Data de inscrição : 05/11/2011
Reputação : 22
Número de Mensagens : 635
Prêmios : Sprite_index no step Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Sprite_index no step Empty Re: Sprite_index no step

Mensagem por Thiago_o_programador Seg 30 Jul 2012, 17:52

como estava:
Código:
if direction>0 && direction < 90 or direction > 270 && direction < 360
se ele estivesse exatamente em 0 não funcionaria, o que eu fiz foi adicionar um >= para evitar bugs futuras, mas quanto aos sprites tente usar o sistema do kapoty, creio que deve funcionar.
Thiago_o_programador
Thiago_o_programador

Games Ranking : Nota D

Notas recebidas : D - C - D - C
Data de inscrição : 14/05/2009
Reputação : 7
Número de Mensagens : 713
Prêmios : Sprite_index no step Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Sprite_index no step Empty Re: Sprite_index no step

Mensagem por Kapoty Seg 30 Jul 2012, 18:01

Fiz uma engine para você.

http://www.mediafire.com/?jvd5ljkc43tqn67
Kapoty
Kapoty

Games Ranking : Nota B

Notas recebidas : E + D + C + B + D +B + A
Data de inscrição : 05/11/2011
Reputação : 22
Número de Mensagens : 635
Prêmios : Sprite_index no step Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Sprite_index no step Empty Re: Sprite_index no step

Mensagem por Thomaz Seg 30 Jul 2012, 18:07

Thiago olhou certo. Provavelmente o problema do seu código é o fato de que você não está cobrindo todos os ângulos possíveis.

A condição que você colocou é:
if direction>0 && direction < 90 or direction > 270 && direction < 360{}

Suponha que a direção dele seja 0 / 360. Ele não trocará de sprite.
A condição mais correta seria aquela em que você cobre todas as possibilidades:
if direction>=0 && direction <= 90 or direction >= 270 && direction <= 360{}


Outra possível falha no teu código pode ser que você está utilizando o Draw para desenhar a sprite. Então tudo o que tu tens que fazer é utilizar o código "draw_sprite(sprite_index,image_index,x,y)" (Isso somente se você estiver utilizando o evento draw, caso contrário, descarte esta possibilidade).



Outra possível é que existe algum bug onde toda vez que troca a sprite, a subimage começa de novo a contagem.
A sua condição é:
if direction>=0 && direction <= 90 or direction >= 270 && direction <= 360{ if speed=0{}else{}}.

Qual o problema? Toda vez que o game maker checa se a velocidade é maior que zero, ele troca a sprite atual para a sprite "andando". E se toda vez que ele troca a sprite, ele recomeça o contador de imagem? Bem, Tudo o que tu tens que fazer é adicionar mais uma barreira para trocar de sprite. Cheque se a sprite_index já é a que você quer. Trocando em miúdos o seu código ficaria assim:

if direction>=0 && direction <= 90 or direction >= 270 && direction <= 360{
if speed=0 && sprite_index != spr_direita_parado {
sprite_index=spr_direita_parado
}
if speed !=0 && sprite_index != spr_direita_andando{ sprite_index=spr_direita_andando}
}




Faça o teste em cada uma dos possíveis problemas e, se não der certo, recomendo que você poste uma gmk exemplo para que a gente possa ver o que você pode estar fazendo errado.
Thomaz
Thomaz

Games Ranking : Nota A

Notas recebidas : A
Data de inscrição : 13/10/2011
Reputação : 4
Número de Mensagens : 106
Prêmios : Sprite_index no step Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://bigleafeater.tumblr.com/

Ir para o topo Ir para baixo

Sprite_index no step Empty Re: Sprite_index no step

Mensagem por Esaucm98 Seg 30 Jul 2012, 18:13

Thomaz escreveu:Thiago olhou certo. Provavelmente o problema do seu código é o fato de que você não está cobrindo todos os ângulos possíveis.

A condição que você colocou é:
if direction>0 && direction < 90 or direction > 270 && direction < 360{}

Suponha que a direção dele seja 0 / 360. Ele não trocará de sprite.
A condição mais correta seria aquela em que você cobre todas as possibilidades:
if direction>=0 && direction <= 90 or direction >= 270 && direction <= 360{}


Outra possível falha no teu código pode ser que você está utilizando o Draw para desenhar a sprite. Então tudo o que tu tens que fazer é utilizar o código "draw_sprite(sprite_index,image_index,x,y)" (Isso somente se você estiver utilizando o evento draw, caso contrário, descarte esta possibilidade).



Outra possível é que existe algum bug onde toda vez que troca a sprite, a subimage começa de novo a contagem.
A sua condição é:
if direction>=0 && direction <= 90 or direction >= 270 && direction <= 360{ if speed=0{}else{}}.

Qual o problema? Toda vez que o game maker checa se a velocidade é maior que zero, ele troca a sprite atual para a sprite "andando". E se toda vez que ele troca a sprite, ele recomeça o contador de imagem? Bem, Tudo o que tu tens que fazer é adicionar mais uma barreira para trocar de sprite. Cheque se a sprite_index já é a que você quer. Trocando em miúdos o seu código ficaria assim:

if direction>=0 && direction <= 90 or direction >= 270 && direction <= 360{
if speed=0 && sprite_index != spr_direita_parado {
sprite_index=spr_direita_parado
}
if speed !=0 && sprite_index != spr_direita_andando{ sprite_index=spr_direita_andando}
}




Faça o teste em cada uma dos possíveis problemas e, se não der certo, recomendo que você poste uma gmk exemplo para que a gente possa ver o que você pode estar fazendo errado.

sim mas essa historia de a direção ser =0 e não mudar o sprite não tem nada a ver com o problema, o problema e que a animação CONGELA.
O problema era que no draw_sprite eu setei a image_index para 0 como de costume.

obrigado a você e a todos ;D problema resolvido
avatar
Esaucm98

Games Ranking : Nota D

Notas recebidas : D
Data de inscrição : 13/05/2012
Reputação : 4
Número de Mensagens : 275
Prêmios : Sprite_index no step Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://www.legioncrafters.tk

Ir para o topo Ir para baixo

Sprite_index no step Empty Re: Sprite_index no step

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos