Хелпа с GameCMS

Статус
В этой теме нельзя размещать новые ответы.
Сообщения
899
Реакции
150
Помог
25 раз(а)
Здравствуйте.
Имеется небольшой набросок кода, пытаюсь научится работать с GameCSM Api.
Получаю по названию услугу, и проверяю, есть она у игрока, или нет.
Но как проверить, активна ли услуга, или приостановлена? Не могу понять.
Код ниже:

C++:
#include <AmxModX>
#include <GameCMS5>

public plugin_init() {
    register_clcmd("test_cms", "Cmd_TestCms");
}

public Cmd_TestCms(const iPlayer) {
   static Array:Services;
    Services = cmsapi_get_user_services(id, "", "_tested");

    if (Services)
        client_print(iPlayer, print_chat, "Player Have Access");
    else
        client_print(iPlayer, print_chat, "Player Havent Access");
}
 

RockTheStreet

Саппорт года
Сообщения
1,743
Реакции
345
Помог
40 раз(а)
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
Код:
enum _:eServiceStatus
{
    SERVICE_NOT_FOUND = -2,    /*Услуга не найдена*/
    SERVICE_NONE,
    SERVICE_INACTIVE,        /*Услуга не активна*/
    SERVICE_ACTIVE,            /*Услуга активна*/
    SERVICE_STOPPED            /*Услуга приостановлена*/
}
 
Сообщения
596
Реакции
350
Предупреждения
1
Помог
9 раз(а)
Код:
enum _:eAdminInfo
{
    AdminId,
    AdminAuthId[MAX_STRING_LEN],
    AdminPassword[MAX_STRING_LEN],
    AdminServiceFlags[MAX_STRING_LEN],
    AdminType[MAX_INT_LEN],
    AdminExpired[MAX_STRING_LEN],
    AdminReason[MAX_STRING_LEN*2],
    AdminActive,
    AdminPaused,
    AdminService,   
    AdminServiceId,
    AdminServiceName[MAX_STRING_LEN*2],
    AdminServiceTime
};
native cmsapi_get_info_by_admin_id(iAdminIndex, aAdminData[eAdminInfo] = "");

if(aAdminData[eAdminInfo] == SERVICE_ACTIVE)
 
Сообщения
334
Реакции
290
Помог
9 раз(а)
C++:
/**
* Проверка на активацию услуги
*
* @param id            id игрока
* @param szReason    Причина отключения услуги, если она отклучена
* @param iLen        Размер массива szReason[]
* @param srvName    Флаги услуги
* @param part        Совпадение наименования услуги (флагов):
*                     true - частичное совпадение
*                     false - полное совпадение
*
* @return            true-  услуга активна
*                     false- услуга выключена
*/
native bool:cmsapi_is_admin_active(id, szReason[], iLen, const srvName[]="", bool:part = false);
Натив старый, описание не особо четкое.

C++:
public Cmd_TestCms(const iPlayer) {
    new szReason[MAX_STRING_LEN], bool:bIsActive;
    bIsActive = cmsapi_is_admin_active(iPlayer, szReason, charsmax(szReason), "_tested");

    if (bIsActive)
        client_print(iPlayer, print_chat, "Player Have Access");
    else
        client_print(iPlayer, print_chat, "Player Havent Access. Reason: %s", szReason);
}
 
Статус
В этой теме нельзя размещать новые ответы.

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу