OnPlayerUpdate

Материал из Pro-Pawn Wiki
Перейти к: навигация, поиск

Описание:

Вызывается при обновлении состояния игрока.

Параметры:

(playerid)
playerid ID игрока, состояние которого сервер собирается обновить.


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

  • В моде: При возврате 0 состояние игрока не будет обновлено.
  • В фильтрскриптах: При возврате 0 функция не будет вызвана в других фильтрскриптах и моде, а состояние игрока не будет обновлено.

Info rhombus.png
Примечание
Функция вызывается сначала в фильтрскриптах, затем в моде.
Частота вызова функции зависит от действий игрока. Так при бездействии игрока функция вызывается сравнительно редко (~1 раз в секунду), а при передвижении (как пешком, так и на т/с) или стрельбе - часто.


Exclamation.png
Внимание!
Данная функция может вызывается очень часто (до ~30 раз в секунду для каждого игрока) и поэтому в ней особо заметна нагрузка от пользовательского кода. Используйте эту функцию только в случае крайней необходимости (например, для античитов, чтобы вовремя рассинхронизировать читеров). Большинство типовых задач можно решить с помощью таймеров с меньшей периодичностью срабатывания.


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

public OnPlayerUpdate(playerid)
{
    switch (GetPlayerWeapon(playerid))
    {
        // Пулемёт и гранатомёт не разрешены на сервере
        case WEAPON_ROCKETLAUNCHER, WEAPON_HEATSEEKER, WEAPON_MINIGUN:
            return 0; // Рассинхронизируем читера, чтобы он не мог нанести урон другим игрокам
    }
    return 1;
}