Контакты (заказать плагин/исправить ошибки/другое) Поиск

[ вход ]
[ последние сообщения ]

  • Страница 1 из 1
  • 1
Life State Notifier
_wS_ Дата: Пятница, 27.03.2026, 07:49:57 | Сообщение # 1
Life State Notifier v1.0

Требования:
dhooks

Игры:
css:ob, css:34.

Код
//    @note    void CBasePlayer::SharedSpawn()
//    @note    Вызывается до `item_pickup`/`SDKHook_WeaponEquip`/`player_spawn`, когда оружие/бронь ещё не выданы, но они могут быть, если остались с прошлого раунда.
forward void OnPlayerSpawnPre(int client);

//    Погиб / перемещён в наблюдатели / покинул сервер.
//    @note    `player_death` недостаточно, т.к. не вызывается после взрыва бомбы и `ChangeClientTeam(client, 1)`.
//    @note    `IsClientInGame` может быть `false`.
forward void OnPlayerDied(int client);

#if defined LIFE_STATE_NOTIFIER1
public void OnPlayerSpawnPre(int client) { LIFE_STATE_NOTIFIER1(client); }
public void OnPlayerDied(int client) { LIFE_STATE_NOTIFIER1(client); }
#elseif defined LIFE_STATE_NOTIFIER2
public void OnPlayerSpawnPre(int client) { LIFE_STATE_NOTIFIER2(client, true); }
public void OnPlayerDied(int client) { LIFE_STATE_NOTIFIER2(client, false); }
#endif

/*
Если хочется ОДИН callback (для удобства), есть два варианта:

//    1
#define LIFE_STATE_NOTIFIER1 OnLifeStateChanged
#include <life_state_notifier>
void OnLifeStateChanged(int client)
{
}

//    2
#define LIFE_STATE_NOTIFIER2 OnLifeStateChanged
#include <life_state_notifier>
void OnLifeStateChanged(int client, bool alive)
{
}
*/


Буду и сам использовать, решил поделиться.
В OnPlayerDied удобно очищать всякие прицепленные к игроку entity.
Можно создать FL_ALIVE флаг для игрока и проверять его, вместо IsPlayerAlive спама (особенно в OnPlayerRunCmd и подобных).

Гости не могут скачивать файлы
 
xitman96rus Дата: Суббота, 28.03.2026, 08:29:39 | Сообщение # 2
Сообщений: 5
Репутация: 0 [ +/- ]
Не плохо,спасибо,пригодится.
 
  • Страница 1 из 1
  • 1
Поиск: