05.11.2011, 01:42
pawn Код:
//OPCT (OnPlayerCommandText)
if(!strcmp("/tempos", cmdtext, true))
{
if(!fexist("Tempos.txt")) fclose(fopen("Tempos.txt", io_write)); //Se nгo Exisir o Arquivo, irб cria-lo.
new File:Tempos,
LerNome[MAX_PLAYER_NAME],
string[256],
EscreverNome[40];
Tempos = fopen("Tempos.txt", io_append);
format(EscreverNome, sizeof(EscreverNome), "%s\r\n", GetPlayerNameEx(playerid));
fwrite(Tempos, EscreverNome);
fclose(Tempos);
Tempos = fopen("Tempos.txt", io_read);
new NumeroAtual = 0;
while(fread(Tempos, LerNome) && NumeroAtual < 10) //Loop
{
strdel(LerNome, strlen(LerNome)-2, strlen(LerNome));
strcat(string, LerNome, 255);
if(JogadorConectado(LerNome) != INVALID_PLAYER_ID)
{
new ID[10];
format(ID, sizeof(ID), " (%02d)\n", JogadorConectado(LerNome));
strcat(string, ID, 255);
}
else
{
strcat(string, " (OffLine)\n", 255);
}
NumeroAtual++;
}
strcat(string, "\nPrimeiros 10 Players.", 255);
ShowPlayerDialog(playerid, 200, DIALOG_STYLE_MSGBOX, "Tempos", string, "Fechar", "");
fclose(Tempos);
return 1;
}
//Algum Lugar No GM
stock GetPlayerNameEx(playerid)
{
new pName[MAX_PLAYER_NAME];
GetPlayerName(playerid, pName, sizeof(pName));
return pName;
}
stock JogadorConectado(Nome[])
{
new i = INVALID_PLAYER_ID;
for(new playerid = 0; playerid < GetMaxPlayers(); playerid++)
{
if(IsPlayerConnected(playerid))
{
if(!strcmp(GetPlayerNameEx(playerid), Nome))
{
// printf("%s(%d) = %s", GetPlayerNameEx(playerid), playerid, Nome);
i = playerid;
break;
}
}
}
return i;
}
Sу nгo pega + por causa que se nгo teria que aumentar as celulas da string (256 jб й alto).