Thread: [Pedido] Converter Tempo
View Single Post
Old 02/06/2020, 08:24 PM   #6
Locky_
High-roller
 
Locky_'s Avatar
 
Join Date: Jul 2012
Posts: 1,605
Reputation: 338
Default Re: Converter Tempo

Como é contabilizado o tempo do seu sistema? As vezes há algum erro neste.

Por exemplo, se quero definir 30 dias de VIP para meu jogador
pawn Code:
MeuTempoVIP[playerid] = gettime() + (86400 * 30);

Agora para saber quanto tempo tenho
pawn Code:
new MeuTempo = MeuTempoVIP[playerid] - gettime(); // Basicamente eu obtenho o tempo se for maior que gettime, se for menor, já expirou.
new Dias, Horas, Minutos, Segundos;
if(MeuTempo >= 86400) // é maior ou igual á 1 dia
{
    Dias = MeuTempo / 86400;
    MeuTempo -= 86400 * Dias;
}
if(MeuTempo >= 3600) // maior ou igual á 1 hora
{
    Horas = MeuTempo / 3600;
    MeuTempo -= 3600 * Horas;
}
if(MeuTempo >= 60) // maior ou igual a 1 minuto
{
    Minutos = MeuTempo / 60;
    MeuTempo -= 60 * Minutos;
}
Segundos = MeuTempo;
new MsgTempo[30];
format(MsgTempo, 30 ,"%02d dias %02d horas %02d minutos e %02d segundos", Dias, Horas, Minutos, Segundos);
Faça a adaptação conforme desejar. A lógica basicamente é esta. Há outras formas de exibir o tempo (no formato de data também), para isto, deverá utilizar include ou plugins para exibir por exemplo que o vip de tal jogador expira em 02/06/2020 por exemplo.
Locky_ is offline   Reply With Quote