Hallo,
ich hätte eine Frage. was ist der Unterschied zu der Schleife mit GetMaxPlayers und der anderen Versionen?
Hat eine andere Vorteile, ist eine andere ressourcenfreundlicher?
Hallo,
ich hätte eine Frage. was ist der Unterschied zu der Schleife mit GetMaxPlayers und der anderen Versionen?
Hat eine andere Vorteile, ist eine andere ressourcenfreundlicher?
Es gibt ja hauptsächlich diese drei Methoden:
for(new i = 0; i < MAX_PLAYERS; i++)
for(new i = 0; i < GetMaxPlayers(); i++)
for(new i = 0; i <= GetPlayerPoolSize(); i++)
wobei man letztere beide eher so schreiben sollte:
for(new i = 0, j = GetMaxPlayers(); i < j; i++)
for(new i = 0, j = GetPlayerPoolSize(); i <= j; i++)
MAX_PLAYERS:
Das ist die Zahl, die in der a_samp.inc angegeben wurde. Die sollte der Anzahl der Slots entsprechen.
GetMaxPlayers:
Anzahl der Slots, die in der server.cfg stehen. Sollte MAX_PLAYERS entsprechen.
=> Daher sind Variante 1 & 2 eigentlich gleich, nur dass GetMaxPlayers etwas mehr (minimal) auf die Ressourcen geht.
GetPlayerPoolSize:
Das wurde mit 0.3.7 hinzugefügt und gibt dir die höchste Spieler-ID aus, die gerade online ist. Das kann, je nach leeren Slots, einige Schleifendurchläufe sparen. Von der Performance ist es daher die beste Variante.