Главная | Комментарии | О проекте
Чтение RSS
Суперсайт
Главная Контакты Карта сайта Добавить в избранное
  • Кто OnLine

    Всего на сайте: 2
    Гостей: 0
    Пользователи: - отсутствуют
    Роботы: Yandex Bot, crawl Bot

    Опрос пользователей

    Для какого мода Вы пишите плагины?

    • Популярное

    Рекомендуем

    • AMX Mod X
    • up.org.ua

    Наши друзья


  • Автор: asd12345678184 Дата: 18-01-2016, 00:27 Просмотров: 5740

    query_client_cvar - проверка кваров игрока

    Проверка кваров игрока

    Инфо cvars.inc
    /**
    * Позволяет плагину узнать значение клиентского квара, путем отправки специального запроса.
    *
    * @note пример того, как можно оформить вызываемую callback функцию
    *
    * public cvar_query_callback(id, const cvar[], const value[], const param[])

    * id - индекс игрока
    * cvar - запрашиваемый квар
    * value - значение квара у игрока
    * param - необязательные доп. данные
    *
    * @param id индекс игрока
    * @param cvar запрашиваемый квар
    * @param resultFunc имя callback функции
    * @param paramlen размер массива доп. данных
    * @param params доп. данные, которые будут переданы в callback
    *
    * @noreturn
    * @error Сообщение об ошибке будет выдано в следующих случаях:
    * - если индекс игрока находится за пределами диапазона от 1 до
    * MaxClients
    * - игрок не подключен
    * - callback функция не объявлена
    * - в процессе запроса возникли проблемы
    */

    native query_client_cvar(id, const cvar[], const resultFunc[], paramlen=0, const params[]="");



    пример проверки:

    #include <amxmodx>

    #define PLUGIN "Check client cvar"
    #define VERSION "1.0"
    #define AUTHOR "amxxmodx.ru"

    #define MAX_CLIENTS 32
    #define NAME_LEN 32

    #define TASKID_CHECK_CLIENT_CVAR 12345

    // Название квара
    #define CVAR_NAME "rate"

    new user_name[NAME_LEN];

    public plugin_init()
    {
    register_plugin(PLUGIN, VERSION, AUTHOR);
    }

    public client_putinserver(id)
    {
    set_task(1.0, "check_client_cvar", id + TASKID_CHECK_CLIENT_CVAR);
    }

    public check_client_cvar(taskid)
    {
    new id = taskid - TASKID_CHECK_CLIENT_CVAR;

    if (!is_user_connected(id)) {
    return;
    }

    // Запрашиваем значение клиентского квара
    query_client_cvar(id, CVAR_NAME, "cvar_query_callback");
    }

    public cvar_query_callback(id, const cvar[], const value[])
    {
    get_user_name(id, user_name, charsmax(user_name));

    // Если квар не существует value будет 'Bad CVAR request'
    log_amx("User: '%s', cvar: '%s', value: '%s'", user_name, cvar, value);
    }
    Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
    Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
    query_client_cvar - проверка кваров игрока
Наверх

Реклама