Como fazer um temporizador

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

Como fazer um temporizador

Mensagem por Isquilo_Roedor em Sex 21 Ago 2015, 15:05

Basicamente meu personagem quando tem a barra de vida zerada ele morre, e quando morre ele se transforma na sprite: spr_player_dead, e logo após isso vai para a room room_fase16 que é onde vai ficar escrito umas coisas tipo, reiniciar nivel, carregar checkpoint e tal porém eu gostaria que depois que ele morresse o jogo esperasse um pouco, isso pra quem estiver jogando ver bem que morreu, tipo o jogo esperasse um pouco pra depois ir pra room_fase16, basicamente o código é assim.

global.arma60=true quer dizer que o player morreu, eu sei que não faz sentido a primeira vista mas é uma longa história...
hsp=hspeed
vsp=vspeed

Código:
if (global.arma60=true){
hsp=0
vsp=10
if(global.morte_normal=true){
sprite_index=spr_player_dead;
image_speed=0
//aqui eu queria um codigo pro jogo tipo esperar 3 segundos antes de executar a //proxima linha que seria ir pra room_fase16
room_goto(room_fase16)
}

Isquilo_Roedor

Ranking : Nota D
Número de Mensagens : 334
Idade : 16
Data de inscrição : 22/03/2012
Notas recebidas : E-E-D
Reputação : 18
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como fazer um temporizador

Mensagem por AG Hydra em Sex 21 Ago 2015, 15:34

Olá, Isquilo.

bom, o sistema seria de acordo com a situação... ao meu ver, a ativação de um alarm poderia ser eficaz neste caso... ao tornar-se verdadeira a condição que exibe o efeito de morte do objeto, poderia ativar um alarm, este executaria o comando que alteraria a room. caso não seja esta resposta a esperada, reformule a dúvida para que eu possa compreender. até.

AG Hydra

Número de Mensagens : 130
Data de inscrição : 23/04/2012
Reputação : 7
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como fazer um temporizador

Mensagem por Isquilo_Roedor em Sex 21 Ago 2015, 15:41

Hydra eu queria saber como fazer isso sem usar alarms, acho que tem algum comando pra fazer isso,se me lembro bem tem um botão que faz esperar tantos milisegundos, aqueles botão que ficam do lado direito, tem um que é wait milsseconds algo assim, eu queria usar ele no codigo, como faço?

Isquilo_Roedor

Ranking : Nota D
Número de Mensagens : 334
Idade : 16
Data de inscrição : 22/03/2012
Notas recebidas : E-E-D
Reputação : 18
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como fazer um temporizador

Mensagem por First and Last em Sex 21 Ago 2015, 15:43

Não pode usar alarmes? É muito mais prático, não acha?  Bom, eu costumo fazer contadores usando while.

Código:

var contador = 3 * room_speed; /*Retorna o número de steps que se passam em 3 segundos*/
while(contador > 0){
contador -= 1; /* Enquanto for maior que 0 retiro 1. */
}
room_goto(room_fase16); //Estou indo para outra room


Porém eu acho o código acima não funcionaria muito bem, pois eu não tenho certeza se o while é chamado só uma vez por step, então tenta aí e avisa se funcionou. Também tem um tutorial muito bom aqui : http://www.tutoriaisgamemaker.com.br/2014/08/como-usar-alarmes.html     ele também ensina a criar temporizadores, só que usando uma variável que é descontada uma vez no step(esse aí eu garanto que funciona). Eu ainda, também, recomendo usar alarmes. Até mais.

First and Last

Ranking : Sem avaliações
Número de Mensagens : 30
Idade : 16
Data de inscrição : 16/06/2015
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como fazer um temporizador

Mensagem por Willy em Sex 21 Ago 2015, 16:01

Não pode usar alarms ou você não sabe usar alarms?
Se for o segundo caso, aprenda a usar alarms. blz

A função que você procura se chama sleep, porém, a mesma se encontra obsoleta no GMS. Não recomendo que use essa função pois demonstra amadorismo. Prefira usar alarms e use uma transição de tela bem suave para a tela de game over.

___________


Engines, tutoriais e projetos? Clique no banner!



Atenção:
Comporte-se, senão você vai levar a cintada do Willy no meio da bunda! bravo


Willy

Ranking : Nota A
Número de Mensagens : 1812
Idade : 22
Data de inscrição : 08/06/2009
Notas recebidas : C + B + A + A
Reputação : 245
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 1
   : 1

http://willy-gmbr.blogspot.com/

Voltar ao Topo Ir em baixo

Re: Como fazer um temporizador

Mensagem por LightSpeedy em Sex 21 Ago 2015, 16:58

Código:

if (global.arma60=true){
hsp=0
vsp=10
if(global.morte_normal=true){
sprite_index=spr_player_dead;
image_speed=0
alarm[9]=room_speed*3 /*3 segundos,usei o 9 para caso vc ja esteja usando os outros alarms*/
}

Alarm 9

Código:


room_goto(room_fase16)


LightSpeedy

Ranking : Nota C
Número de Mensagens : 354
Data de inscrição : 24/04/2013
Notas recebidas : C
Reputação : 40
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como fazer um temporizador

Mensagem por Isquilo_Roedor em Sex 21 Ago 2015, 19:02

Baseado na resposta de todos vocês criei uma solução, obrigado por todos que ajudaram.

Isquilo_Roedor

Ranking : Nota D
Número de Mensagens : 334
Idade : 16
Data de inscrição : 22/03/2012
Notas recebidas : E-E-D
Reputação : 18
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como fazer um temporizador

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


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