GetPlayerPoolSize

Материал из Pro-Pawn Wiki
Перейти к: навигация, поиск
Add.png Данная функция была добавлена в SA-MP 0.3.7 R1 и не работает в более ранних версиях.


Описание:

Узнаёт самый большой ID игрока, находящегося на сервере.

Параметры:

У данной функции нет параметров.


Возвращаемое значение:

Cамый большой ID игрока, находящегося на сервере, либо 0, если сервер пуст.

Bug.png
Баг SA-MP
Функция возвращает 0 в двух случаях: если сервер пуст и если на сервере только один игрок с ID равным нулю. Чтобы отличить эти два случая, требуется дополнительно проверять подключение игрока 0 (IsPlayerConnected(0)).


Пример использования:

CMD:online(playerid, params[])
{
    // Перебор всех игроков на сервере с подсчётом онлайна.
    // Если i-й игрок подключен, к переменной "count" прибавится 1,
    // если нет - не прибавится ничего.
    new count = 0;
    for (new i = 0, size = GetPlayerPoolSize(); i <= size; ++i)
        count += IsPlayerConnected(i);
    // Форматирование и вывод сообщения с результатом.
    static const fmt_str[] = "Текущий онлайн: %d игроков";
    new string[sizeof(fmt_str) + (-2+4)];
    format(string, sizeof(string), fmt_str, c);
    return SendClientMessage(playerid, -1, string);
}


См. также: