/CONTA
format(String, sizeof(String), "{FFFFFF}» Tempo Online: {32CD32}%02d Dias %02d Horas e %02d Minutos %02d Segundos\n\n", ContaPlayer[playerid][TempoOn]); strcat(String2, String);
enum PlayerInfo
{
TempoOn,
}
ONGAMEMODEINIT
SetTimer("TempoOnline", 1000, true);
SALVANDO DADOS
DOF2_SetInt(StringRegistro, "TempoOn", ContaPlayer[playerid][TempoOn]);
CARREGANDO DADOS
TextOn[playerid] = true;
forward TempoOnline();
public TempoOnline()
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(Logado[i] == true)
{
ContaPlayer[i][TempoOn]++;
}
}
}
return 1;
}
stock ConvertDia(number)
{
new Hora = 0, StrHora[100];
Hora = floatround(number / 3600);
new Dia = 0;
if(Hora >= 24)
{
Dia = floatround((Hora/24), floatround_floor);
Hora = Hora % 24;
}
if(Dia > 0)
{
format(StrHora, 100, "%d", Dia);
}
else if(Dia == 0)
{
format(StrHora, 100, "0");
}
return StrHora;
}
stock ConvertHora(number)
{
new Hora = 0, StrHora[100];
Hora = floatround(number / 3600);
if(Hora >= 24)
{
Hora = Hora % 24;
}
format(StrHora, 100, "%d", Hora);
return StrHora;
}
stock ConvertMinuto(number)
{
new Hora = 0, Minuto = 0, StrHora[100];
Hora = floatround(number / 3600);
Minuto = floatround((number / 60) - (Hora * 60));
format(StrHora, 100, "%d", Minuto);
return StrHora;
}
stock ConvertSegundo(number)
{
new Hora = 0, Minuto = 0, Segundo = 0, StrHora[100];
Hora = floatround(number / 3600);
Minuto = floatround((number / 60) - (Hora * 60));
Segundo = floatround(number - ((Hora * 3600) + (Minuto * 60)));
format(StrHora, 100, "%d", Segundo);
return StrHora;
}
stock ConverterTempo(valor) { new dias = 0, horas = 0, minutos = 0, segundos = 0, resultado[100]; horas = floatround(valor / 3600); minutos = floatround((valor / 60) - (horas * 60)); segundos = floatround(valor - ((horas * 3600) + (minutos * 60))); if(horas >= 24) { dias = floatround((horas/24), floatround_floor); horas = horas % 24; } if(dias > 0) format(resultado, 100, "%ddias, %dh %dm e %ds", dias, horas, minutos, segundos); else if(horas > 0) format(resultado, 100, "%dh %dm e %ds", horas, minutos, segundos); else format(resultado, 100, "%dm e %ds", minutos, segundos); return resultado; }
format(String, sizeof(String), "{FFFFFF}» Tempo Online: {32CD32}%s\n\n", ConverterTempo(ContaPlayer[playerid][TempoOn])); strcat(String2, String);
ConvertUnix(Time:tempo)
{
new tm <tmTempo>;
new str[100];o
localtime(tempo, tmTempo);
strftime(str, sizeof(str), "%H:%M %d/%m/%Y", tmTempo);
return str;
}
Convert(numero)
{
new hours = 0, mins = 0, secs = 0, string[100];
hours = floatround(numero / 3600);
mins = floatround((numero / 60) - (hours * 60));
secs = floatround(numero - ((hours * 3600) + (mins * 60)));
new days = 0;
if(hours >= 24)
{
days = floatround((hours/24), floatround_floor);
hours = hours % 24;
}
if(days > 0)
{
format(string, 100, "%d, %dh %dm e %ds", days, hours, mins, secs);
}
else if(hours > 0)
{
format(string, 100, "%dh %dm e %ds", hours, mins, secs);
}
else
{
format(string, 100, "%dm e %ds", mins, secs);
}
return string;
}
Voce nгo esta convertendo a variavel TempoOn, ela esta sendo adicionada da forma correta, agora para vocк converter ela em formato real pode usar uma das funcoes abaixo uma usa oplugin ctime e outro nao.
PHP код:
|
format(String, sizeof(String), "{FFFFFF}» Tempo Online: {32CD32}%02d Dias %02d Horas e %02d Minutos %02d Segundos\n\n", ContaPlayer[playerid][TempoOn]); strcat(String2, String);
format(String, sizeof(String), "{FFFFFF}» Tempo Online: {32CD32}%s",Convert(ContaPlayer[playerid][TempoOn]));
passei 2 so para vc ver 2 codigos,agora na hora de formatar a strjng vce deve fazer assim
PHP код:
vc pode usar esta include tambem e formatar a data a seu gosto https://sampforum.blast.hk/showthread.php?tid=347605 |
format(String, sizeof(String), "{FFFFFF}» Tempo Online: {32CD32}%s",Convert(ContaPlayer[playerid][TempoOn]));
forward TempoOnline();
public TempoOnline()
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(Logado[i] == true)
{
ContaPlayer[i][TempoOn]++;
}
}
}
return 1;
}
ConvertUnix(Time:tempo)
{
new tm <tmTempo>;
new str[100];o
localtime(tempo, tmTempo);
strftime(str, sizeof(str), "%H:%M %d/%m/%Y", tmTempo);
return str;
}
Convert(numero)
{
new hours = 0, mins = 0, secs = 0, string[100];
hours = floatround(numero / 3600);
mins = floatround((numero / 60) - (hours * 60));
secs = floatround(numero - ((hours * 3600) + (mins * 60)));
new days = 0;
if(hours >= 24)
{
days = floatround((hours/24), floatround_floor);
hours = hours % 24;
}
if(days > 0)
{
format(string, 100, "%d, %dh %dm e %ds", days, hours, mins, secs);
}
else if(hours > 0)
{
format(string, 100, "%dh %dm e %ds", hours, mins, secs);
}
else
{
format(string, 100, "%dm e %ds", mins, secs);
}
return string;
}
A sua stock retorna uma string, entгo na hora de mostrar a hora do player tem que vir com %s e nгo %02d.
Pode criar uma stock que converte tudo ao inves de uma pra cada: Код:
stock ConverterTempo(valor) { new dias = 0, horas = 0, minutos = 0, segundos = 0, resultado[100]; horas = floatround(valor / 3600); minutos = floatround((valor / 60) - (horas * 60)); segundos = floatround(valor - ((horas * 3600) + (minutos * 60))); if(horas >= 24) { dias = floatround((horas/24), floatround_floor); horas = horas % 24; } if(dias > 0) format(resultado, 100, "%ddias, %dh %dm e %ds", dias, horas, minutos, segundos); else if(horas > 0) format(resultado, 100, "%dh %dm e %ds", horas, minutos, segundos); else format(resultado, 100, "%dm e %ds", minutos, segundos); return resultado; } Код:
format(String, sizeof(String), "{FFFFFF}» Tempo Online: {32CD32}%s\n\n", ConverterTempo(ContaPlayer[playerid][TempoOn])); strcat(String2, String); |
O Gabriel jб falou como deveria usar. Й sу ler.
Resposta abaixo |