GameCMS API

Плагин АМХХ GameCMS API 5.6.3

Нет прав для скачивания
C++:
5.6.3
            * фикс натива _cmsapi_remove_user_service
                * исправлено удаление услуги из массива на сервере при указании параметра iAdminServiceId
            * g_hMForwards[AdminsLoaded] теперь выполнется до проверки онлайн игроков
            * изменен натив native bool:cmsapi_is_admin_active(id, szReason[]="", iLen = 0, const srvName[]="", bool:part = false)
                Параметры szReason и iLen стали необязательными
            * изменен натив native cmsapi_service_timeleft(id, szDate[]="", iLen=0, const srvName[]="", bool:part = false)
                Параметру srvName назначен тип данных const
            * изменен натив native cmsapi_reload_wallet(index, Float:flValue, bool:full_update = false, iMoneyAction = 0)
                Добавле параметр * @iMoneyAction        Тип операции (для отображения в блоке Последние операции). Создается в таблице money__actions вручную!!!
            * убрано соощение из лога https://cs-games.club/index.php?threads/gamecms-api.9/page-42#post-9789
  • Like
  • Love
Реакции: 123xexe, ArKaNeMaN и bro
* фикс бесконечного цикла
  • Like
Реакции: kazgo
C++:
5.6.2
    * исправлено суммирование флагов с разных услуг, когда в услуге только 1 добавляемый флаг
Благодарность "veres"
  • Like
Реакции: kazgo
C++:
5.6.1
    * изменен натив cmsapi_set_user_flags. Кроме выдачи флагов доступа добавлена возможность выдачи дополнительной услуги, с символом _
    cmsapi_set_user_flags(index, "_service_name")
  • Like
Реакции: kazgo, .psx и D1m0n41k
C++:
5.6.0
    * изменено описание натива cmsapi_reload_wallet(index, Float:flValue, bool:send = false) в инклуде
    * фикс работы натива cmsapi_reload_wallet с дробными числами
    * фикс значения member_online, при перезагрузке кошелька он сбрасывался на 0
C++:
5.5.5
    + добавлен форвард forward OnAPIPostAdminCheck(const id, szFlags[MAX_STRING_LEN]);
        * Выполняется после проверки наличия услуг игрока и их записи в массив админов, находящихся на сервере (native Trie:cmsapi_get_online_admins())
        * @param id            id игрока
        * @param szFlags    Флаги, полученные в результате поиска и суммирования всех услуг с флагами. Не включаются дополнительные услуги через "_"
        * @note                Параметр szFlags может быть перезаписан. В этом случае, игроку будут выданы заданные флаги, вместо флагов услуги.
        *                    Данные массива админов изменены не будут!
        * @note                Выполняется непосредственно перед авторизацией игрока и вызовом форварда OnAPIAdminConnected
        * @noreturn

Пример
C++:
public OnAPIPostAdminCheck(const id, szFlags[MAX_STRING_LEN])
{
    copy(szFlags, charsmax(szFlags), "zxcv")
}
//Результат: были флаги "abcdefijlmntu" стали "cvxz"
//OnAPIPostAdminCheck 1 | ret 1 flags abcdefijlmntu (new zxcv)
//Authentication Post... "..." bit 44040196 / 0 | flags cvxz
  • Like
Реакции: kazgo
C++:
5.5.4
    * фикс динамического учета услуг после их добавления
  • Like
Реакции: kazgo
C++:
5.5.2
    * изменен натив native bool:cmsapi_remove_user_service(iClient, iServiceId, iAdminServiceId = 0, bool:bUpdateDB = false);
    * Удаление услуги игрока
    *
    * @param iClient            id игрока
    * @param iServiceId         Номер услуги
    * @param iAdminServiceId    Номер услуги админа `admins__services`.`id`
    * @param bUpdateDB          Отправить запрос в базу данных. Если false, то услуга будет удалена только на сервере (для удаления временных услуг, которых нет в БД и у которых нет автоудаления)
    *
    * @return        true- при удачном удалении услуги, иначе false
    *
    * @Note            Если игрок на сервере, можно использовать его индекс (iClient) и номер услуги iServiceId (Идентификатор AdminService).
    *                Если игрока нет, то нужно использовать индекс услуги админа iAdminServiceId, это `id` строки из таблицы `admins_services` (Идентификатор AdminServiceId).
    * @Note            При отправке запроса в БД плагин не удаляет услугу физически. Услуге устанавливается текущее время окончания, дальнейшее удаление производится движком на общих условиях.
            
        
5.5.3
    * изменен натив native cmsapi_reload_wallet(index, Float:value, bool:full_update = false);

    * Изменение баланса на сайте с перезагрузкой значения из БД
    *
    * @param index    Индекс игрока
    * @param value    Сумма для добавления/списания (value / -value)
    * @param full_update    true - после сохранения изменений будет произведена полная перезагрузка данных пользователя из БД
    *                        false - изменения будет учтены в базе, но новая информация о пользователе загружаться не будет
    *
    * @noreturn
            
    Изменен параметр send на full_update
    Изменено описание параметра full_update
    Параметр value принимает дробные начения
C++:
    5.5.1
        * исправление компиляции при отключенной опции настроек пользователя gamecms_user_settings
        + добавлен натив
            * Получение данных пользователя из массива eMemberData
            *
            * @param iClient        Индекс игрока
            * @param iIdentifier    Идентификатор массива eMemberData
            * @param szUserData        Массив для записи строкового значения идентификатора
            * @param iLen            Размер массива для записи
            *
            * @return                Целочисленное значение идентификатора массива eMemberData, если параметр szUserData не указано.
            *                        Если указан параметр szUserData, то вернет количество записанных ячеек.
            native cmsapi_get_user_data(iClient, eMemberData:iIdentifier, szUserData[] = "", iUserDataLen = 0);
            
            Пример:
            new iInteger, szString[MAX_NAME_LENGTH];
            //получение группы пользователя
            iInteger = cmsapi_get_user_data(iClient, MemberGroup);
            
            //получение игрового префикса пользователя
            cmsapi_get_user_data(iClient, MemberPrefix, szString, charsmax(szString));
  • Like
Реакции: kazgo и AkycTuk
C++:
5.5.0
        + добавлен словарь gamecms_api.txt (За перевод прошу прощения)

        * изменен форвард OnAPIPreAdminCheck
            * Выполняется перед проверкой наличия услуг игрока
            *
            * @param id                    id игрока
            * @param bRemoveFlags        Удалить имеющиеся у игрока флаги, true- по-умолчанию
            * @param bSetDefFlags        Установить игроку дефолтные флаги, true- по-умолчанию
            * @return        PLUGIN_HANDLED, если нужно пропустить проверку имеющихся услуг. В этом случае, будут применены параметры bRemoveFlags и bSetDefFlags.
            * @note            Параметры bRemoveFlags и bSetDefFlags действуют только при условии возврата PLUGIN_HANDLED

            forward OnAPIPreAdminCheck(const id, &bRemoveFlags, &bSetDefFlags);
            
            Пример:
                Игроку не будут выданы услуги из БД
                Игроку будет выдан флаг "t"
                Игроку будет добавлен дефолтный флаг amx_default_access, т.к. true- по-умолчанию
                У игрока не будут удалены имеющиеся флаги, т.к. мы установили bRemoveFlags = false;
                Вернем return PLUGIN_HANDLED, иначе, плагин будет проводить стандартную авторизацию по услугам из БД
                public OnAPIPreAdminCheck(const id, &bRemoveFlags, &bSetDefFlags)
                {
                    set_user_flags(id, read_flags("t"));
                    bRemoveFlags = false;
                    return PLUGIN_HANDLED;
                }
                
        * изменена функция чтения настроек пользователя    (файл gamecms_user_settings)   
        
        * исправлена ошибка при отключении админки после истечения срока
            [AMXX] Run time error 10: native error (native "ArraySetArray")
            
        * изменен форвард OnAPIAdminsLoaded
            В него добавлены параметры:
            @param eQueryStatus:status    Статус загрузки списка (LOAD_ALL- полная загрузка, RELOAD - перезагрузка, в том числе для одного игрока)
            @param iAdminIndex            Индекс админа (0, если статус LOAD_ALL)
Назад
Сверху