OnPlayerDeath - Вызывается при смерти игрока

Описание:

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

Параметры:

(playerid, killerid, reason)
playeridID погибшего игрока.
killeridID убийцы. Может иметь значениеINVALID_PLAYER_ID, если игрок умер сам (например, утонул или упал с высоты).
reasonID причины смерти.


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

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

ПримечаниеФункция вызывается сначала в фильтрскриптах, затем в моде.

Внимание!Не забывайте проверять параметр killerid на равенство INVALID_PLAYER_ID , чтобы не получить выход за пределы массива из-за неосторожного обращения к какому-либо массиву по индексу killerid (см. пример ниже).

Код:

// Массивы под счётчики смертей и убийств
new num_deaths[MAX_PLAYERS], num_kills[MAX_PLAYERS];

public OnPlayerConnect(playerid)
{
    num_deaths[playerid] = 0;
    num_kills[playerid] = 0;
    return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
    // Отправим в киллфид сообщение о смерти
    SendDeathMessage(playerid, killerid, reason);

    // Увеличим счётчик смертей у убитого игрока
    num_deaths[playerid]++;

    // Перед тем, как увеличить счётчик убийств,
    // убедимся, что ID убийцы - не INVALID_PLAYER_ID
    if (killerid != INVALID_PLAYER_ID)
        num_kills[killerid]++;

    return 1;
}

RSS
Нет комментариев. Ваш будет первым!
Загрузка...