Entrar
Ú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
Sprites
+2
Witen
DUDU951
6 participantes
Página 1 de 1
Sprites
Oi
Tem um objeto que eu queria que ficasse trocando de sprite a cada 2 segundos, cada vez um sprite diferente, mas eles tem sua ordem:
spr_100 > spr_95 > spr_85 > spr_80 > spr_70 > spr_65 > spr_60 > spr_50 > spr_50 > spr_40 > spr_30 > spr_25 >spr_20 > spr_10 > spr_5 > spr_00
Quando houvesse a colisão entre 2 outros objetos, voltaria para a spr_100, e as sprites começariam a trocar de novo, sempre na ordem.
Como fazer isso?
Tem um objeto que eu queria que ficasse trocando de sprite a cada 2 segundos, cada vez um sprite diferente, mas eles tem sua ordem:
spr_100 > spr_95 > spr_85 > spr_80 > spr_70 > spr_65 > spr_60 > spr_50 > spr_50 > spr_40 > spr_30 > spr_25 >spr_20 > spr_10 > spr_5 > spr_00
Quando houvesse a colisão entre 2 outros objetos, voltaria para a spr_100, e as sprites começariam a trocar de novo, sempre na ordem.
Como fazer isso?
DUDU951- Data de inscrição : 24/06/2014
Reputação : 2
Número de Mensagens : 90
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Sprites
Cara isso é muito fácil de se fazer com alarme, mas vai ficar maior bagunça, me diz ai como quer que funcione seu projeto, a ideia inicial, ai sim te aponto a melhor maneira e como chegar la.
Re: Sprites
Na verdade o ideal é que tudo seja um unico sprite e você fique trocando a subimagem.
adicionando com o alarme +1 ao image_index.
no evento de colisão o número volta a 0
é preciso uma variável pra isso.
--------------- eu faria ------------------
antes de tudo, criar 1 sprite com todas as imagens que você quer como frames. Sendo 0 o frame relativo a spr_100
create
step
alarm 0
adicionando com o alarme +1 ao image_index.
no evento de colisão o número volta a 0
é preciso uma variável pra isso.
--------------- eu faria ------------------
antes de tudo, criar 1 sprite com todas as imagens que você quer como frames. Sendo 0 o frame relativo a spr_100
create
- Código:
sprite_index = (nome_da_sua_sprite)
image_index = 0
image_speed = 0 //esses codigos dizem como a sua imagem começa
frame = 0 //essa variavel controla a subimagem da sprite
alarm[0] = room_speed*2
// o 2 corresponde a 2 segundos qualquer que seja a velocidade o seu room
step
- Código:
sprite_index = (nome_da_sua_sprite) //nomeia a sprite
image_index = frame // a subimagem é igual a variavel frame
alarm 0
- Código:
if frame <= 15 // for menor ou igual a 15
{
frame = frame + 1 // frame recebe +1
}
else frame = 0 //senão frame recebe 0
alarm[0] = room_speed*2 //o alarme se chama de novo.
Última edição por 7hiagomp em Qui 26 Jun 2014, 21:34, editado 4 vez(es)
7hiagomp- Data de inscrição : 21/04/2014
Reputação : 24
Número de Mensagens : 124
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Sprites
Use um array
Um array é uma variavel, você já deve saber usar variáveis, mas a diferença é que essa variavel guarda vários valores diferentes para assesar ou mudar o valor use : variavel[numero]
Ex.:
spr_array[0]=spr_100
spr_array[1]=spr_95
... etc
spr_array[16]=spr_00
No evento create você cria uma variável que representa o índice.
Agora vou construir algo que pode lhe ajudar:
Um array é uma variavel, você já deve saber usar variáveis, mas a diferença é que essa variavel guarda vários valores diferentes para assesar ou mudar o valor use : variavel[numero]
Ex.:
spr_array[0]=spr_100
spr_array[1]=spr_95
... etc
spr_array[16]=spr_00
No evento create você cria uma variável que representa o índice.
Agora vou construir algo que pode lhe ajudar:
- Código:
//No evento create
spr_array[0]=spr_100
spr_array[1]=spr_95
... etc
spr_array[16]=spr_00
indice=0
alarm[0]=room_speed*2
//No evento alarm 0
indice+=1
if indice>16 indice=16 ;//Vai parar no 16
alarm[0]=room_speed*2
//No evento colisao
indice=0
//No evento Step
sprite_index=spr_array[indice]
Rodrigo Santiago- Games Ranking :
Notas recebidas : C + C + B
Data de inscrição : 28/07/2012
Reputação : 73
Número de Mensagens : 1281
Prêmios :
x 0 x 0 x 0
x 3 x 1 x 3
x 0 x 0 x 0
Re: Sprites
no create:
no alarm 0:
e na colisão com o objeto que faz ele voltar ao 100
igual ao Rodrigo Santiago que tb esta certa,fiz esta de um jeito na minha visão mais simples de entender(embora seja quase a mesma coisa)
- Código:
alarm[0]=60
//spr_100 > spr_95 > spr_85 > spr_80 > spr_70 > spr_65 > spr_60 > spr_50 > spr_50 > spr_40 > spr_30 > spr_25 spr_20 > spr_10 > spr_5 > spr_00
spr_index[0]=spr_100
spr_index[1]=spr_95
spr_index[2]=spr_85
spr_index[3]=spr_80
spr_index[4]=spr_70
spr_index[5]=spr_65
spr_index[6]=spr_60
spr_index[7]=spr_50
spr_index[8]=spr_50
spr_index[9]=spr_40
spr_index[10]=spr_30
spr_index[11]=spr_25
spr_index[12]=spr_20
spr_index[13]=spr_10
spr_index[14]=spr_5
spr_index[15]=spr_00
no alarm 0:
- Código:
alarm[0]=60
if spr_index<15{spr_index+=1}
e na colisão com o objeto que faz ele voltar ao 100
- Código:
spr_index=0
igual ao Rodrigo Santiago que tb esta certa,fiz esta de um jeito na minha visão mais simples de entender(embora seja quase a mesma coisa)
LightSpeedy- Games Ranking :
Notas recebidas : C
Data de inscrição : 24/04/2013
Reputação : 40
Número de Mensagens : 354
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Sprites
Me deixaram confuso agora uhsuahsuahs
Gostei desse, eu já estou me familiarizando com o image index
Mas eu preciso de mais algumas coisas:
> Que quando chegar no último seja Game Over
Step
Colisão objeto
Gostei desse, eu já estou me familiarizando com o image index
Mas eu preciso de mais algumas coisas:
> Que quando chegar no último seja Game Over
Step
- Código:
if sprite_index = 15
game over
Colisão objeto
- Código:
if sprite_index =! 00
frame = 00
7hiagomp escreveu:Na verdade o ideal é que tudo seja um unico sprite e você fique trocando a subimagem.
adicionando com o alarme +1 ao image_index.
no evento de colisão o número volta a 0
é preciso uma variável pra isso.
--------------- eu faria ------------------
antes de tudo, criar 1 sprite com todas as imagens que você quer como frames. Sendo 0 o frame relativo a spr_100
create
- Código:
sprite_index = (nome_da_sua_sprite)
image_index = 0
image_speed = 0 //esses codigos dizem como a sua imagem começa
frame = 0 //essa variavel controla a subimagem da sprite
alarm[0] = room_speed*2
// o 2 corresponde a 2 segundos qualquer que seja a velocidade o seu room
step
- Código:
sprite_index = (nome_da_sua_sprite) //nomeia a sprite
image_index = frame // a subimagem é igual a variavel frame
alarm 0
- Código:
if frame <= 15 // for menor ou igual a 15
{
frame = frame + 1 // frame recebe +1
}
else frame = 0 //senão frame recebe 0
alarm[0] = room_speed*2 //o alarme se chama de novo.
Última edição por DUDU951 em Sex 27 Jun 2014, 13:35, editado 4 vez(es)
DUDU951- Data de inscrição : 24/06/2014
Reputação : 2
Número de Mensagens : 90
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: Sprites
1-SimplesDUDU951 escreveu:Me deixaram confuso agora uhsuahsuahs
Gostei desse, eu já estou me familiarizando com o image index
Mas eu preciso de mais algumas coisas:
> Que quando chegar no último seja Game Over (isso já dá pra fazer com o if ali no step)
> Que quando houver a colisão entre 2 outros objetos volte para a primeira imagem(como faz??)
- Código:
if sprite_index=spr_00{show_message('Você perdeu!');
game_restart()}
- Código:
sprite_index=spr_100
Re: Sprites
1 - é simplesDUDU951 escreveu:Me deixaram confuso agora uhsuahsuahs
Gostei desse, eu já estou me familiarizando com o image index
Mas eu preciso de mais algumas coisas:
> Que quando chegar no último seja Game Over (isso já dá pra fazer com o if ali no step)
> Que quando houver a colisão entre 2 outros objetos volte para a primeira imagem(como faz??)7hiagomp escreveu:Na verdade o ideal é que tudo seja um unico sprite e você fique trocando a subimagem.
adicionando com o alarme +1 ao image_index.
no evento de colisão o número volta a 0
é preciso uma variável pra isso.
--------------- eu faria ------------------
antes de tudo, criar 1 sprite com todas as imagens que você quer como frames. Sendo 0 o frame relativo a spr_100
create
- Código:
sprite_index = (nome_da_sua_sprite)
image_index = 0
image_speed = 0 //esses codigos dizem como a sua imagem começa
frame = 0 //essa variavel controla a subimagem da sprite
alarm[0] = room_speed*2
// o 2 corresponde a 2 segundos qualquer que seja a velocidade o seu room
step
- Código:
sprite_index = (nome_da_sua_sprite) //nomeia a sprite
image_index = frame // a subimagem é igual a variavel frame
alarm 0
- Código:
if frame <= 15 // for menor ou igual a 15
{
frame = frame + 1 // frame recebe +1
}
else frame = 0 //senão frame recebe 0
alarm[0] = room_speed*2 //o alarme se chama de novo.
o que o Witen falou está certo mas tem outra possibilidade
- Código:
if sprite_index=spr_00{show_message('Você perdeu!');
room_goto (nome_da_room) //Muda a room especificada entre as ()
Riccardoric- Data de inscrição : 17/06/2014
Reputação : 34
Número de Mensagens : 206
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Tópicos semelhantes
» Como criar sprites no GM a partir de uma imagem com sprites conjuntos?
» [Sprites] Avaliem Meus novos Sprites
» [Sprites]Sprites editaveis
» sprites em top down
» Sprites De Pokemon X/Y
» [Sprites] Avaliem Meus novos Sprites
» [Sprites]Sprites editaveis
» sprites em top down
» Sprites De Pokemon X/Y
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos