Obrigado por visitar a The Game Makers Brasil 😁 Use o fórum de Dúvidas para fazer perguntas. Se está em busca de aprender dê uma olhada nos tutoriais.

Tempo do Sprite(Plataforma) Tópico resolvido

Perguntas? A comunidade te ajuda a resolver.
Avatar do usuário
KaykeBr
Membro
Membro
Reações: 2
Mensagens: 20
Localização: Rio de Janeiro

Tempo do Sprite(Plataforma)

Mensagem por KaykeBr » Sex Set 23, 2022 8:16 pm

Olá, estou tendo um problema com o meu Sprite de Tiro, o meu Sprite tem poucos quadros(apenas 1), não sei se esse é o problema. Mas quando eu atiro da pra ver a troca de sprite por poucos frames, eu queria poder "prolongar" por sla, alguns frames a mais(1 seg seria ótimo), porém, eu não sei como eu poderia fazer isso.

Código: Selecionar todos

STEP
#region TrocaSprite
if place_meeting(x,y+1,Obj_Block){
if hspd > 0{
	state = "move";
	sprite_index = sprt_PlayerWalkD
	image_xscale = 1;
}else if hspd < 0{
	state = "move";
	sprite_index = sprt_PlayerWalkD
	image_xscale = -1;
}else if global.key_shoot{
	state = "tiro";
	sprite_index = sprt_Tiro
}else{
	state = "idle";
	sprite_index = sprt_Player	
}
}
show_debug_message(state)

#endregion

Avatar do usuário
All-x
Administrador
Administrador
Reações: 8
Mensagens: 621
Localização: Dourados-MS

Contato:

Re: Tempo do Sprite(Plataforma)  Tópico resolvido

Mensagem por All-x » Sáb Set 24, 2022 5:44 pm

Sempre que trocar a sprite com sprite_index, reinicinie o frame atual (image_index), e selecione a velocidade da animação (image_speed), verificando antes se a sprite já não é a atual.

Ex:

Código: Selecionar todos

// Se a sprite não é a 'spr_atirando'
if (sprite_index != spr_atirando) {
	// Troca de sprite
	sprite_index = spr_atirando;

	// Reinicia frame atual para o 1º Frame
	image_index = 0;
	
	// Define a velocidade de animação
	image_speed = 0.05;
}
Se a imagem tem apenas 1 frame, então vai levar cerca de 0,66 segundos para percorrer 1 frame todo (Em uma room de 30 FPS). Ou seja para o image_index sair de 0 até 1, sendo incrementado pelo image_speed. Assim se diminui o image_speed para durar mais tempo.

Basta adaptar no teu código.
Começando com o Game Maker? Olhou para assinatura certa!

Imagem

Tutoriais e vídeo aulas de programação! Clique no Banner e confira!

Avatar do usuário
KaykeBr
Membro
Membro
Reações: 2
Mensagens: 20
Localização: Rio de Janeiro

Re: Tempo do Sprite(Plataforma)

Mensagem por KaykeBr » Dom Set 25, 2022 2:51 pm

Refiz o codigo novamente e ja melhorou muito :)

Responder

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 2 visitantes