ezzel a kérdésen én is foglalkoztam már és több megoldást találtam rá:
1. létrehozol 1 tömböt (1 cella = 1 játékos) és egy timer-el növeled a cellák értékét és bármikor letudod kérdezni mióta Online a játékos (mennyi idõt töltött a szerveren)
Ugye te ezt szeretnéd megvalósítani...nem ajánlom, mivel ez terhel a legjobban és nem pontos értéket ad ! ( csak akkor ha a SetTimer-ed pontosan van belõve! mivel nem 1mp-enként fut le az 1000 milisec-es timer )
2. én ezzel kísérleteztem, de sajnos nekem nem úgy mûködött ahogy vártam
http://wiki.sa-mp.com/wiki/GetTickCountAz elõzõ megoldáshoz képest itt is egy tömböt hozol létre, csak itt mást tárolsz...
Csatlakozásnál eltárolod az aktuális visszatérési értéket (hogy mióta fut a szerver) és kilépésnél ismét lekéred és kivonod a csatlakozásnál mentett értéket:
new ConnectData[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
ConnectData[playerid] = GetTickCount();
return 1;
}
public OnPlayerDisconnect(playerid,reason)
{
new OnlineTime = GetTickCount() - ConnectData[playerid];
return 1;
}
és így millisec-ben megkapod, hogy mennyit volt online a játékos
3. megoldás az szinte ugyanaz mint a második csak dátumot+idõt tárolsz el és nem a GetTickCount visszatérési értékét