there is any way to record the total played time for each player and showing into activity top 30 player?
Thanks.
Код:
enum pInfo
{
pMinutes,
pHours,
pSeconds,
};
new PlayerInfo[MAX_PLAYERS][pInfo];
Cуdigo:
onplayerconnect(playerid)
{
PlayerInfo[playerid][pConnectTime] = gettime();
}
Cуdigo:
CMD:test(playerid,params[])
{
foreach(Player,i)
{
if(Prijavljen[i]==1)
{
prvomjestoigrac=i;
}
}
new mins, hour, day;
new seconds = gettime() - PlayerInfo[playerid][pConnectTime];
new aktivnost[2024];
format(aktivnost,2024,"%s{FF0000}|----------------------------------------------------------------------|\n\n");
format(aktivnost,2024,"%s{FFFFFF}1.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}2.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}3.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}4.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}5.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}6.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}7.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}8.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}9.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}10.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}11.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}12.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}13.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}14.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}15.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}16.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}17.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}18.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}19.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}20.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}21.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}22.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}23.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}24.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}25.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}26.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}27.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}28.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}29.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FFFFFF}30.%s:%d dana %d h %d min %d sec\n2.%s:%d dana %d h %d min %d sec\n",aktivnost,prvomjestoigrac,ConvertTime(seconds,mins,hour,day));
format(aktivnost,2024,"%s{FF0000}|----------------------------------------------------------------------|\n\n");
ShowPlayerDialog(playerid, 13, DIALOG_STYLE_MSGBOX,"{FF0000}GAMING {FFFFFF} Top Lista 30 sa najvise ne-afk vreme na serveru",aktivnost,"OK","OK");
return 1; }
Unfortunately with each calling of that command you have to generate that list anew (you could do that with y_iterate, and shift players accordingly when someone disconnects). You could also cache the result to not recalculate each time, maybe with 10 seconds delay. Anyway: first fix your indentation. Remove redundant code. Notice that there is no pConnectTime present, and add that. Then grab
, as you have to sort array by player online times.
Oh sorry, it's place not i.
I have no idea how you store your playernames, if you have some function like PlayerName just pass playerOnlineTimes[place][0]
2) This fetches the name of player who called this command, you don't want that. Instead in GetPlayerName change playerid to "playerOnlineTimes[place][0]".
3) You want MAX_PLAYER_NAME + 1, so it won't take away last letter in case someone has 24 characters in his name.
Here is the picture who show me dialog, but don`t show me how long player was on the server