Иконка ресурса

Не поддерживается ResetScore [ReAPI] 1.0

Нет прав для скачивания
Обратите внимание: данный ресурс не поддерживается разработчиком.
Поддерживаемые игры
  1. Counter-Strike
  2. Team Fortress Classic
  3. Day of Defeat
  4. Deathmatch Classic
  5. Ricochet
  6. Half-Life
  7. Counter-Strike: Condition Zero
  8. Sven Co-op
* На данный ресурс установлено ограничение на скачивание в 5 сообщений и 3 лайков.
1590879184263.png

Всем известный плагин ResetScore на ReAPI.
Позволяет обнулить счёт игроку, написав в чат: /rs или /resetscore

Автор:
Leo_BH
Оригинал
Жду оценки!😋
Требования
Для работы плагина нужно: ReHLDS, ReGameDLL_CS, ReAPI.
Amx Mod X 1.8.2, (Re) Amx Mod X 1.8.3-dev
Переменные
Использует модуль ReAPI по умолчанию.

Исходник кода:
#include <amxmodx>

// - - - - - - - - - - - - - - - - - - - - КАСТОМИЗАЦИЯ ПЛАГИНА - - - - - - - - - - - - - - -
// Для отключения функции закомментируйте строку: В начале строки перед #define добавьте //
#define USE_REAPI         // Использовать модуль ReAPI & ReGameDLL_CS? (Если отключить, будет использован модуль fakemeta)
#define HIDE_CHAT_MSG     // Скрывать сообщение в чат, когда игрок пишет "/rs"
#define INFO_TEXT         // Показывать оповещение игроку в чат при обнулении счёта
#define RS_CHAT_MSG "^4[RS] ^3Ваш счёт обнулен"         // Текст сообщения при обнулении счёта
// - - - - - - - - - - - - - - - - - - - -  - - - - - - - - - - - - - - - - - - - - (Конец кастомизации)

#if defined USE_REAPI
    #include <reapi>
#else
    #include <fakemeta>
    const PDATA_SAFE = 2
    const OFFSET_CSDEATHS = 444
    const OFFSET_LINUX = 5 // offsets 5 higher in Linux builds
#endif

// - - - - - - - - - - - - - - - - - - - - //

public plugin_init()
{
    register_plugin("ResetScore", "1.0", "Leo_[BH]");

    register_clcmd("say /rs", "reset_score");
    register_clcmd("say_team /rs", "reset_score");
    register_clcmd("say /resetscore", "reset_score");
    register_clcmd("say_team /resetscore", "reset_score");
}

public reset_score(id)
{
    if(!is_user_connected(id)) return PLUGIN_CONTINUE;

    // - - - - - - - - -
    func_reset_score(id)
    // - - - - - - - - -

    #if defined INFO_TEXT
    text_reset_score(id)
    #endif

    // - - - - - - - - -

    #if defined HIDE_CHAT_MSG
    return PLUGIN_HANDLED;
    #else
    return PLUGIN_CONTINUE;
    #endif
}

// Функция обнуления счёта
public func_reset_score(id)
{
    #if defined USE_REAPI
    set_entvar(id, var_frags, 0.0);
    set_member(id, m_iDeaths, 0);
    #else
    set_pev(id, pev_frags, 0.0)
    fm_cs_set_user_deaths(id, 0)
    #endif

    message_begin(MSG_BROADCAST, 85);
    write_byte(id);
    write_short(0);
    write_short(0);
    write_short(0);
    write_short(0);
    message_end();
}

stock fm_cs_set_user_deaths(id, value)
{
    if (pev_valid(id) != PDATA_SAFE)
        return;

    set_pdata_int(id, OFFSET_CSDEATHS, value, OFFSET_LINUX)
}

#if defined INFO_TEXT
public text_reset_score(id)
    ChatColorOne(id, RS_CHAT_MSG);

stock ChatColorOne(const id, const szMessage[], any:...)
{
    static szMsg[191], IdMsg;
    vformat(szMsg, charsmax(szMsg), szMessage, 3);
    if(!IdMsg) IdMsg = get_user_msgid("SayText");
    if(!is_user_connected(id)) return 0;
    message_begin(MSG_ONE_UNRELIABLE, IdMsg, .player = id);
    write_byte(id);
    write_string(szMsg);
    message_end();
    return 1;
}
#endif
Команды
/rs или /resetscore
Установка
Настройки находятся в исходном коде плагина
// Для отключения функции закомментируйте строку: В начале строки перед #define добавьте //
#define USE_REAPI // Использовать модуль ReAPI & ReGameDLL_CS? (Если отключить, будет использован модуль fakemeta)
#define HIDE_CHAT_MSG // Скрывать сообщение в чат, когда игрок пишет "/rs"
#define INFO_TEXT // Показывать оповещение игроку в чат при обнулении счёта
#define RS_CHAT_MSG "^4[RS] ^3Ваш счёт обнулен" // Текст сообщения при обнулении счёта
Автор
Magomex
Скачивания
6
Просмотры
507
Первый выпуск
Обновление
Оценка
5.00 звёзд 1 оценок

Поделиться ресурсом

Последние отзывы

Полезный плагин
Сверху