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

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 23/08/2011
Número de Mensagens : 23
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

[AJUDA] Como fazer um cronômetro de contagem regressiva?

em Qua 01 Fev 2012, 17:28
Olá, eu estou com um problema Exclamation Eu gostaria de saber como fazer um cronômetro de contagem regressiva com minutos e segundos Exclamation Eu já procurei aqui na GMBR, mas não tive resultados satisfatórios Exclamation Agradeço a todos que ajudarem Exclamation

Editado por Joton
Use letras coloridas apenas para destacar algo importante
avatar
Ranking : Nota B
Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Número de Mensagens : 2490
Insígnias de JAM :

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

Prêmios
   : 0
   : 2
   : 1
Ver perfil do usuáriohttp://xcreatorgames.weebly.com/

Re: [Resolvido] Como fazer um cronômetro de contagem regressiva?

em Qua 01 Fev 2012, 17:42
Pode ser assim:
NO evento CREATE:
Código:

min = 30;
seg = 60;
alarm[0] = room_speed; //1 segundo
NO Evento alarm[0]
Código:

seg -= 1;
if (seg < 0)
{
  seg = 60;
  if (min > 0) min -= 1;
}
alarm[0] = room_speed;// 1 segundo
No Evento Draw()
Código:

draw_text(x, y, string(min) + ":" + string(seg));
É isso ai !
Flws
avatar
Ranking : Nota B
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Número de Mensagens : 2964
Insígnias de JAM :

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

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

Re: [Resolvido] Como fazer um cronômetro de contagem regressiva?

em Qua 01 Fev 2012, 18:00
Ou:
create
Código:
tempo = numeroDeSegundos * fps;
alarm[0] = tempo;
draw
Código:
draw_text(x, y, string(alarm[0] div (60 * fps)) + ":" + string((alarm[0] mod (60 * fps)) div fps));
(lembrando-se de colocar pelo menos um comentário no alarm)

Edit: Se for usar o do vinians, troque o "60" por "59", no alarm.
avatar
Ranking : Nota D
Notas recebidas : D+D
Data de inscrição : 05/10/2010
Número de Mensagens : 836
Insígnias de JAM :

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

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

Re: [Resolvido] Como fazer um cronômetro de contagem regressiva?

em Qua 01 Fev 2012, 18:09
eu tenho um projeto completo de cronometro incluindo nele o regressivo, tem os botoes pro usuario definir facilmente os minutos, horas e segundos que quer. se quiser te mando a engine pra tu estudar.
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 23/08/2011
Número de Mensagens : 23
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: [Resolvido] Como fazer um cronômetro de contagem regressiva?

em Qui 02 Fev 2012, 16:37
Era exatamente isso que eu queria, mas quando chega em menos de 10 segundos, ele faz :9 em vez de :09. Como faço para acrescentar o 0 na frente do 9 Question
avatar
Data de inscrição : 31/08/2010
Número de Mensagens : 630
Insígnias de JAM :

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

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuáriohttp://leninja.com.br

Re: [Resolvido] Como fazer um cronômetro de contagem regressiva?

em Qui 02 Fev 2012, 16:42
if seg<10 //se ele for menor que 10
{
seg=real(0)+seg
}
não sei se funciona com real,tenta ae!
avatar
Ranking : Nota B
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Número de Mensagens : 2964
Insígnias de JAM :

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

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

Re: [Resolvido] Como fazer um cronômetro de contagem regressiva?

em Sex 03 Fev 2012, 08:55
Teoricamente, você teria que usar string_format no lugar de string.
Mas eu testei aqui e não funcionou. Suponho que eu não esteja sabendo usar a função.
avatar
Ranking : Sem avaliações
Data de inscrição : 11/10/2009
Número de Mensagens : 2184
Insígnias de JAM :

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

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

Re: [Resolvido] Como fazer um cronômetro de contagem regressiva?

em Sex 03 Fev 2012, 09:56
Pit Bull escreveu:if seg<10 //se ele for menor que 10
{
seg=real(0)+seg
}
não sei se funciona com real,tenta ae!
Isso não vai dar certo. "09" e "9" são praticamente a mesma coisa, o número 9, pois é um número e não uma string.
saim escreveu:Teoricamente, você teria que usar string_format no lugar de string.
Mas eu testei aqui e não funcionou. Suponho que eu não esteja sabendo usar a função.
string_format é um pé no saco mesmo. A única maneira plausível de formatar seria esta:
Código:
var h, m, s;
// horas = variável das horas
// minutos = variável dos minutos
// segundos = variável dos segundos

if horas >= 0 and horas <= 9
    h = string(0) + string(horas)
else
    h = string(horas)

if minutos >= 0 and minutos <= 9
    m = string(0) + string(minutos)
else
    m = string(minutos)

if segundos >= 0 and segundos <= 9
    s = string(0) + string(segundos)
else
    s = string(segundos)

draw_text( x, y, string(h) + ":" + string(m) + ":" + string(s) );
PS.: O código é no Draw
Bons estudos ;)
avatar
Ranking : Nota B
Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Número de Mensagens : 2490
Insígnias de JAM :

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

Prêmios
   : 0
   : 2
   : 1
Ver perfil do usuáriohttp://xcreatorgames.weebly.com/

Re: [Resolvido] Como fazer um cronômetro de contagem regressiva?

em Sex 03 Fev 2012, 10:11
Eu geralmente uso um script que criei chamado PadZero(string, n) onde n seria o numero de casas. Veja:
Código:

var str, tam;
str = argument0;
tam = argument1;
while (string_length(str) < tam)
{
    str = "0"  + str;
}
return str;
Para utilizar, crie um novo script e coloque o nome dele de PadZero. Depois basta usa-lo assim:
Código:

draw_text(x, y, PadZero(string(min), 2) + ":" + PadZero(string(seg),2));
Flws!
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 23/08/2011
Número de Mensagens : 23
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: [Resolvido] Como fazer um cronômetro de contagem regressiva?

em Sex 03 Fev 2012, 16:40
Muito obrigado vinians, eu usei o seu código e funcionou perfeitamente, só substitui uma coisa:

DRAW

Código:
draw_text(x, y, PadZero(string(min), 1) + ":" + PadZero(string(seg),2));

Em vez de colocar 2, eu coloquei 1, apesar de não ter entendido o código; porque com 2 aparecia dois 0, mas com 1 apareceu um 0 [nos minutos].

A dúvida foi resolvida Exclamation Exclamation
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