/visitas ~ Informa ao jogador a quantidade de visitantes no dia atй o momento
/salvarvisitas ~ Salvar manualmente o contador de visitas "[18:59:10] Salvo com sucesso"
/*
|||||||| || || |||||| |||||| ||||||||||| |||||| || |||||||||||| ||||||||
|| || || || || || || || || || || || || ||
|| || || || || || || || || || || || || || || ||
|| || || || || || || || || || || || || || || ||
|| || || || || |||| || || || || || || || |||||||||||
|| || || || || || ||||||||| || || || || || || ||
|| || || || || || || || || || || || || ||
|| || || || || || || || || || || || || ||
|| || || || || || || || || || || || || || ||
|||||||| || || || || ||||||||||| || |||| |||||||||||| || ||*/
#include a_samp
#include zcmd
#include DOF2
new Acessos;
new PlayerText:AcessosDii[MAX_PLAYERS];
new arquivo[30], texto[50], ano, mes, dia;
new horas,minutos,segundos;
public OnPlayerConnect(playerid)
{
AcessosDii[playerid] = CreatePlayerTextDraw(playerid, 40.000000, 329.000000, " ");
PlayerTextDrawColor(playerid, AcessosDii[playerid], 12582911);
PlayerTextDrawFont(playerid, AcessosDii[playerid], 3);
PlayerTextDrawBackgroundColor(playerid, AcessosDii[playerid], 255);
PlayerTextDrawSetShadow(playerid, AcessosDii[playerid], 1);
PlayerTextDrawSetOutline(playerid, AcessosDii[playerid], 1);
Acessos ++;
return 1;
}
public OnFilterScriptInit()
{
SetTimer("Reset", 1000, false);
SetTimer("SalvarVisitas", 10*60000, true);
print("[DIIMENOR] ~ Contador de visitas iniciado com sucesso.");
getdate(ano, mes, dia);
format(arquivo, sizeof(arquivo), "Visitas/%i_%i_%i.ini", dia, mes, ano);
if(DOF2_FileExists(arquivo))
{
Acessos = DOF2_GetInt(arquivo, "Visitas");
DOF2_SaveFile();
}
else
{
DOF2_CreateFile(arquivo);
DOF2_SetInt(arquivo, "Visitas", Acessos);
DOF2_SaveFile();
}
return true;
}
public OnFilterScriptExit()
{
DOF2_Exit();
return 1;
}
forward SalvarVisitas();
public SalvarVisitas()
{
getdate(ano, mes, dia);
format(arquivo, sizeof(arquivo), "Visitas/%i_%i_%i.ini", dia, mes, ano);
if(DOF2_FileExists(arquivo))
{
DOF2_SetInt(arquivo, "Visitas", Acessos);
DOF2_SaveFile();
print("Salvo com sucesso");
}
else
{
DOF2_CreateFile(arquivo);
DOF2_SetInt(arquivo, "Visitas", Acessos);
DOF2_SaveFile();
print("Salvo com sucesso");
}
return 1;
}
public OnPlayerSpawn(playerid)
{
format(texto, sizeof(texto), "{FFFFFF}Vocк й visitante de numero: {00FFFF}%i", Acessos);
SendClientMessage(playerid, -1, texto);
PlayerTextDrawShow(playerid, AcessosDii[playerid]);
return 1;
}
public OnPlayerUpdate(playerid)
{
new string[20];
format(string, sizeof(string), "Visitas: ~w~%i", Acessos);
PlayerTextDrawSetString(playerid, AcessosDii[playerid], string);
}
forward Reset();
public Reset()
{
gettime(horas, minutos, segundos);
if(horas == 00 && minutos == 01 && segundos == 0)
{
Acessos = 0;
print("00:01 Horas - Contador de visitas resetados");
}
return true;
}
CMD:visitas(playerid)
{
new str[30];
format(str, sizeof(str), "Temos no total de %i visitas", Acessos);
SendClientMessage(playerid, -1, str);
return 1;
}
CMD:salvarvisitas(playerid)
{
SalvarVisitas();
SendClientMessage(playerid, -1, "/INFO/Quantidade de visitas salvas com sucesso.");
return 1;
}
Seria legal tambйm o player executar um comando e verificar quais foram as visitas, os dias, a data, hora e etc.
|
Sу achei desnecessбrio o uso da callback OnPlayerUpdate.. Poderia colocar para atualizar na OnPlayerConect.
|
Porque desnecessбrio? Tem alguma desvantagem ao utilizar OnPlayerUpdate?
|