Помогите с gamecms api 5.4.9

Сообщения
11
Реакции
0
Ошибка
L 02/01/2021 - 23:05:50: [gamecms_api.amxx] Connection error: 0. Host: 185.158.113.223 | Error: Access denied for user 'u6362_mysql'@'185.158.113.223' (using password: YES)
L 02/01/2021 - 23:05:50: [gamecms_api.amxx] Connection error: 1. Host: 127.0.0.1 | Error: Access denied for user 'u6362_mysql'@'localhost' (using password: YES)
L 02/01/2021 - 23:05:50: [gamecms_api.amxx] Connection to the GameCMS database is established
L 02/01/2021 - 23:05:50: [gamecms_api.amxx] SQL_QueryError: Table 'u6362_mysql.servers' doesn't exist
L 02/01/2021 - 23:05:50: [gamecms_api.amxx] SQL_QueryString: SELECT `id` FROM `servers` WHERE `servers`.`ip` = '185.158.113.223' AND `servers`.`port` = '27037';
L 02/01/2021 - 23:05:50: [gamecms_api.amxx] SELECT `id`, `name` FROM `users__groups`
L 02/01/2021 - 23:05:50: [MySQL] Invalid info tuple handle: 2
L 02/01/2021 - 23:05:50: [AMXX] <span style="color:red;">Run time error 10 (plugin "gamecms_api.amxx") (native "SQL_ThreadQuery") - debug not enabled!
</span>L 02/01/2021 - 23:05:50: [AMXX] To enable debug mode, add "debug" after the plugin name in plugins.ini (without quotes
ОС
Linux
Amx Mod X
AMX Mod X 1.9.0.5271
Билд
ReHLDS version: 3.8.0.702-dev
ReGamedll
ReHLDS version: 3.8.0.702-dev
Версия Metamod
Metamod-r v1.3.0.128
Список метамодулей
[ 1] SafeNameAndChat  RUN   -    SafeNameAndChat.so          v1.1             ini  ANY   ANY  
[ 2] Rechecker RUN - rechecker_mm_i386.so v2.5 ini Chlvl ANY
[ 3] ReSemiclip RUN - resemiclip_mm_i386.so v2.3.9 ini Chlvl ANY
[ 4] WHBlocker RUN - whblocker_mm_i386.so v1.5.697 ini Chlvl ANY
[ 5] Reunion RUN - reunion_mm_i386.so v0.1.92d ini Start Never
[ 6] Revoice RUN - revoice_mm_i386.so v0.1.0.34 ini Start Never
[ 7] AMX Mod X RUN - amxmodx_mm_i386.so v1.9.0.5271 ini Start ANY
[ 8] ReAuthCheck RUN - reauthcheck_mm_i386.so v0.1.6 ini Start Never
[ 9] MySQL RUN - mysql_amxx_i386.so v1.9.0.5271 pl7 ANY ANY
[10] Fun RUN - fun_amxx_i386.so v1.9.0.5271 pl7 ANY ANY
[11] Engine RUN - engine_amxx_i386.so v1.9.0.5271 pl7 ANY ANY
[12] FakeMeta RUN - fakemeta_amxx_i386.so v1.9.0.5271 pl7 ANY ANY
[13] CStrike RUN - cstrike_amxx_i386.so v1.9.0.5271 pl7 ANY ANY
[14] CSX RUN - csx_amxx_i386.so v1.9.0.5271 pl7 ANY ANY
[15] Ham Sandwich RUN - hamsandwich_amxx_i386.so v1.9.0.5271 pl7 ANY ANY
[16] ReAPI RUN - reapi_amxx_i386.so v5.19.0.210-dev pl7 ANY Never
[17] ReAimDetector RUN - reaimdetector_amxx_i386.so v0.2.2 pl7 ANY Never
Список плагинов
[  1] GameCMS_API             5.4.9       zhorzh78          gamecms_api.amx  paused   
[ 2] fb_forwards 0.1.4 Kanagava &amp; Realu fb_forwards.amx running
[ 3] Admin Commands 1.9.0.5271 AMXX Dev Team admincmd.amxx running
[ 4] Admin Help 1.9.0.5271 AMXX Dev Team adminhelp.amxx running
[ 5] Slots Reservation 1.8.3-Re AMXX Dev Team adminslots.amxx running
[ 6] Menus Front-End 1.9.0.5271 AMXX Dev Team menufront.amxx running
[ 7] Commands Menu 1.9.0.5271 AMXX Dev Team cmdmenu.amxx running
[ 8] Players Menu 1.7 neugomon players_menu.am running
[ 9] Maps Menu 1.4.1 neugomon mapsmenu.amxx running
[ 10] Plugin Menu 1.9.0.5271 AMXX Dev Team pluginmenu.amxx running
[ 11] Admin Chat 1.9.0.5271 AMXX Dev Team adminchat.amxx running
[ 12] Anti Flood 1.9.0.5271 AMXX Dev Team antiflood.amxx running
[ 13] Info. Messages 1.9.0.5271 AMXX Dev Team imessage.amxx running
[ 14] Admin Votes 1.9.0.5271 AMXX Dev Team adminvote.amxx running
[ 15] Pause Plugins 1.9.0.5271 AMXX Dev Team pausecfg.amxx running
[ 16] Stats Configuration 1.9.0.5271 AMXX Dev Team statscfg.amxx running
[ 17] Restrict Weapons 1.9.0.5271 AMXX Dev Team restmenu.amxx running
[ 18] [ReAPI] AdminFreeLook 1.0 ReHLDS Team adminfreelook.a running
[ 19] BhopHack Detector 0.1 Mistrick bhophack_detect running
[ 20] Team Select 1.6.0 F@nt0M teamselect.amxx running
[ 21] High Ping Kicker 1.6 UFPS.Team high_ping_kicke running
[ 22] c4 0.1 Artemka c4.amxx running
[ 23] Lite Admin ESP 1.0 neygomon admin_esp.amxx running
[ 24] Knife Duel with Telepo 1.2 neygomon knife_duel.amxx running
[ 25] ReAimDetector API 0.2.2 ReHLDS Team reaimdetector.a running
[ 26] Auto recording demo 2.0 IzI | Bonaqua (R amx_autodemorec running
[ 27] AFK Control 1.4.1 [Rnd neygomon afk_control.amx running
[ 28] Autochange de_dust2 1.0 Artem P. autochange_de_d running
[ 29] Check Admin &amp; Vip 2.0 Leo_[BH] check_admin_vip running
[ 30] ResetScore 1.0 Leo_[BH] resetscore_reap running
[ 31] Killa HP 1.6 jas0n killa_hp.amxx running
[ 32] Instant AutoTeamBalanc 1.2.0 ConnorMcLeod instant_autotea running
[ 33] [ReAPI] Custom Models 1.6.1 neugomon custom_models.a running
[ 34] Screen Fade 0.1 neygomon screen_fade.amx running
[ 35] Nice Live 1.0 sector nice_live.amxx running
[ 36] [ReAPI] TopRoundDamage 1.0.6 Dager* *.* -G- damage_round.am running
[ 37] [ReAPI] AWPoff 1.4.3 PAffAEJIkA :3 awp_off.amxx running
[ 38] Parachute for ALL [ReA 3.0 Leo_[BH] parachute_for_a running
[ 39] C4 Timer on roundtime 0.3.3a neygomon c4timer.amxx running
[ 40] Advanced Gag 1.9.0 neygomon amx_gag.amxx running
[ 41] [ReAPI] No Team Flash 0.0.2 Vaqtincha no_team_flash.a running
[ 42] Killing Particles 1.01 metallicawOw KP_FIX.amxx running
[ 43] Lite Kill Assist 1.17 neygomon lite_kill_assis running
[ 44] VIP Custom Weapons 1.0 Vaqtincha vip_custom_weap running
[ 45] Reklama 20.05.2020 mx?! reklama.amxx running
[ 46] SpecList 1.2a FatalisDK speclist_rus.am running
[ 47] VoteBan Menu 1.1 Author + ApXuTek voteban_menu.am running
[ 48] Kill Manager Sound 1.3 ShaTalKiN kmansound.amxx running
[ 49] [ReAPI] Hint blocker 0.1.0 F@tn0M reapi_hint_bloc running
[ 50] Simple Grenade Trail 1.0 seroff granade_trail.a running
[ 51] FreeAmmoEveryRound 0.1 SHLAKBAUM freeammoeveryro running
[ 52] Ultimate Flags 29.10.19 by detu mou ultimate_flags. running
[ 53] Descriptive 'Fire in t 0.1 VEN descriptive_fir running
[ 54] CSStatsX SQL 0.7.4+2 serfreeman1337 csstatsx_sql.am running
[ 55] Advanced Experience Sy 0.5 Vega serfreeman1337 aes_main.amxx running
[ 56] AES: StatsX 0.5 Vega serfreeman1337 aes_statsx_cstr running
[ 57] AES: StatsX Info Rank 0.1 serfreeman1337 aes_statsx_rank running
[ 58] AES: CStrike Addon 0.5 Vega serfreeman1337 aes_exp_cstrike running
[ 59] AES: Informer 0.5 Vega serfreeman1337 aes_informer.am running
[ 60] AES: Admin Tools 0.5 Vega serfreeman1337 aes_exp_editor. running
[ 61] AES: Bonus System 0.5 Vega serfreeman1337 aes_bonus_syste running
[ 62] AES: Bonus CSTRIKE 0.5 Vega serfreeman1337 aes_bonus_cstri running
[ 63] AES: StatsX 0.5 Vega serfreeman1337 aes_statsx.amxx running
[ 64] V.I.P Custom KNIFE 1.0.0 Vaqtincha custom_knife.am running
[ 65] V.I.P Custom DEAGLE 1.0.0 Vaqtincha custom_deagle.a running
[ 66] V.I.P Custom M4A1 1.0.0 Vaqtincha custom_m4a1.amx running
[ 67] V.I.P Custom AK-47 1.0.0 Vaqtincha custom_ak47.amx running
[ 68] V.I.P Custom AWP 1.0.0 Vaqtincha custom_awp.amxx running
[ 69] Block Pickup Gold 0.1 Vaqtincha blockpickupgold running
[ 70] Map Manager: Core 3.0.7 Mistrick map_manager_cor running
[ 71] Map Manager: Scheduler 0.1.5 Mistrick map_manager_sch running
[ 72] Map Manager: Rtv 0.1.1 Mistrick map_manager_rtv running
[ 73] Map Manager: Nominatio 0.1.2 Mistrick map_manager_nom running
[ 74] Map Manager: BlockList 0.0.3 Mistrick map_manager_blo running
[ 75] Map Manager: Online so 0.0.2 Mistrick map_manager_onl running
[ 76] Map Manager: Effects 0.0.9 Mistrick map_manager_eff running
[ 77] Map Manager: Informer 0.0.5 Mistrick map_manager_inf running
[ 78] Lite Translit 2.8 neygomon lite_translit_c running
Автор плагина
zhorzh78
Версия плагина
5.4.9
Исходный код
#if defined _gamecms5_included
#endinput
#endif
#define _gamecms5_included

#if !defined MAX_PLAYERS
const MAX_PLAYERS = 32;
#endif
#if !defined MAX_NAME_LENGTH
const MAX_NAME_LENGTH = 32;
#endif

#define API54

#define MAX_STRING_LEN 33
#define MAX_INT_LEN 11
#define DUPLICATE_ENTRY 1062
#define DUPLICATE_COLUMN 1060
#define MAX_QUERY_MEDIUM_LEN 2048
#define MAX_QUERY_SMALL_LEN 512
#define AdminInfo eAdminInfo


#if AMXX_VERSION_NUM < 183
#define client_disconnected client_disconnect
#define socket_is_readable socket_change
#include <colorchat>
stock MaxClients;
#define AMXX_182
#else
#define client_disconnect client_disconnected
#endif

#define IsValidPlayer(%0) (0 < %0 <= MaxClients)
#define DestroyArray(%1) if(%1 != Invalid_Array) ArrayDestroy(%1)
#define DestroyTrie(%1) if(%1 != Invalid_Trie) TrieDestroy(%1)

/*Состояние услуги или параметра*/
enum _:eServiceStatus
{
SERVICE_NOT_FOUND = -2, /*Услуга не найдена*/
SERVICE_NONE,
SERVICE_INACTIVE, /*Услуга не активна*/
SERVICE_ACTIVE, /*Услуга активна*/
SERVICE_STOPPED /*Услуга приостановлена*/
}

/*Время окончания действия услуги*/
enum _:eServiceTime
{
TIME_TRACKING_STOPPED = -2, /*Услуга остановлена, неактивна*/
TIME_MAP_END_EXPIRING, /*В конце карты*/
TIME_NOT_EXPIRING /*Время не ограничено*/
}

/*GagManager Проверка наличия блокировки*/
enum _:eBlockStatus
{
BLOCK_STATUS_NONE = -1, /*Нет блокировки*/
BLOCK_STATUS_ALL, /*Блокировка голос+чат*/
BLOCK_STATUS_CHAT, /*Блокировка чат*/
BLOCK_STATUS_VOICE /*Блокировка голос*/
}

/*GagManager Управление блокировкой*/
enum _:eBlockFunc
{
BLOCK_FUNC_ADD = 1, /*Добавить блокировку*/
BLOCK_FUNC_CHANGE, /*Изменить блокировку*/
BLOCK_FUNC_REMOVE /*Удалить блокировку*/
}

/*Адрес сайта. example: http://site.com*/
stock SiteUrl[MAX_STRING_LEN];

/*Указатели таблиц для получения их имен через cmsapi_get_table_name*/
enum TablePtr
{
admins_services,
dialogs,
users_groups,
services,
services_tarifs,
config_secondary,
sortition,
sortition__participants,
users__friends,
users__online,
last_online
}

/*Названия таблиц в БД, которые нужно изменить при обновлении движка*/
stock const TABLE_NAMES[TablePtr][] =
{
"admins__services",
"pm__dialogs",
"users__groups",
"services",
"services__tarifs",
"config__secondary",
"sortition",
"sortition__participants",
"users__friends",
"users__online",
"last_online"
}

/*Массив для хранения информации об услуге*/
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
};

/*Массив для хранения информации о пользователе*/
enum _:eMemberData
{
MemberId,
MemberLogin[MAX_NAME_LENGTH],
MemberName[MAX_NAME_LENGTH*2],
MemberBirth[MAX_INT_LEN + 1],
MemberNick[MAX_NAME_LENGTH],
Float:MemberMoney,
Float:MemberMoneySaved,
MemberGameTime,
MemberPrefix[MAX_STRING_LEN],
MemberGameMoney,
MemberGameMoneySaved,
MemberMessages,
MemberGroup,
MemberGroupName[MAX_NAME_LENGTH*2],
MemberThanks,
MemberAnswers,
MemberRaiting,
MemberRegDate[MAX_STRING_LEN],
MemberLastActivity[MAX_INT_LEN],
MemberDiscount
};

/*Статус запросов в БД*/
enum
{
LOAD_ALL,
LOAD,
UPDATE,
SAVE,
SET,
ADD,
RELOAD
}

/*Статус работы плагина cmsapi_get_api_status*/
enum _:eApiStatus(<<=1) /*api status*/
{
UseGameCms = 1, /*плагин подключен к базе данных GameCMS*/
UseGameCmsAdmins, /*используется база данных GameCMS для загрузки админов*/
UseGameCmsGroups, /*используется группа пользователя на сайте для выдачи флагов админа*/
UseAddAdmin /*используется функция добавления услуги в базу сайта*/
}

/*статус авторизации клиента stock StGetUserAuthStatus(szAuth[])*/
enum eAuthStatus
{
USER_AUTH_NOT, /*клиент не авторизован*/
USER_AUTH_BOT, /*BOT*/
USER_AUTH_HLTV, /*HLTV*/
USER_AUTH_VALID /*клиент имеет допустимую авторизацию (STEAM or VALVE)*/
}


/**
* Получение версии плагина
*
* @param iMajorVersion Мажор версии
* @param iMinorVersion Минор версии
*
* @noreturn
*/
native cmsapi_get_plugin_version(&iMajorVersion, &iMinorVersion);


/**
* Получение статуса работы плагина
*
* @return Битсумма значения enum eApiStatus
*/
native cmsapi_get_api_status();


/**
* Получение имени таблицы в БД по ее указателю
*
* @param Pointer Указатель таблицы из TablePtr
* @param szTableName Массив для записи имени таблицы
* @param iLen максимальный размер массива
*
* @return Количество ячеек, записанных в массив
*/

native cmsapi_get_table_name(TablePtr:Pointer, szTableName[], iLen);

/**
* Получение данных участника форума
*
* @param id id игрока
* @param szData Массив с данными участника форума
* szData[0] количество "спасибо"
* szData[1] количество ответов на форуме
* szData[2] рейтинг на форуме
* szData[3] количество новых личных сообщений
* @param szName Имя игрока, указанное в профиле
* @param iLen Размер массива для записи имени
*
* @return 1 - При успешном получении данных об игроке
* 0 - Если игрок не зарегистрирован или ошибка при получении данных
*/
native cmsapi_get_forum_data(id, szData[4], szName[]="", iLen=0);


/**
* Получение ника игрока, указанного в профиле форума
*
* @param id id игрока
* @param szNick Ник игрока
* @param iLen Размер массива
*
* @return Количество ячеек, записанных в массив
* -1 - Если игрок не зарегистрирован или ошибка при получении данных
*/
native cmsapi_get_user_nick(id, szNick[], iLen);


/**
* Получение id группы пользователя
*
* @param id id игрока
* @param szGroup Массив для записи названия группы пользователя
* @param iLen Размер массива
*
* @return id группы пользователя
* 0 - пользователь не найден (не зарегистрирован)
*/
native cmsapi_get_user_group(id, szGroup[] = "", iLen = 0);


/**
* Установка группы пользователя на сайте
*
* @param id id игрока
* @param iGroupId Номер (индекс) группы
* @param bool:bSetFlags Выдать флаги группы
*
* @return true- при удачном выполнении, иначе false
*/
native bool:cmsapi_set_user_group(id, iGroupId, bool:bSetFlags = true);

/**
* Получение даты окончания услуги
*
* @param id id игрока
* @param szDate Дата истечения срока услуги в формате ГГГГ-ММ-ДД
* @param iLen Размер массива szDate[]
* @param srvName Флаги услуги
* @param part Совпадение наименования услуги (флагов): true - частичное совпадение, false - полное совпадение
*
* @return Время окончания в формате UNIX
* TIME_MAP_END_EXPIRING - до смены карты
* TIME_NOT_EXPIRING - нет ограничений
* SERVICE_NOT_FOUND услуга не найдена
* TIME_TRACKING_STOPPED - услуга не активна, остановлена
*/
native cmsapi_service_timeleft(id, szDate[]="", iLen=0, srvName[]="", bool:part = false);


/**
* Проверка на активацию услуги
*
* @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);


/**
* Проверка регистрации игрока на сайте
*
* @param id id игрока
*
* @return id пользователя в БД
* 0 - пользователь не найден (не зарегистрирован)
*/
native cmsapi_is_user_member(id);


/**
* Получение информации о балансе кошелька зарегистрированного игрока
*
* @param id id игрока
*
* @return Баланс игрока на сайте
*/
native Float:cmsapi_get_user_money(id);


/**
* Установка баланса кошелька зарегистрированного игрока
*
* @param id id игрока
* @param Float:fAmmount Новое значение баланса
*
* @return 1 в случае успеха
* 0 в случае неудачи
*/
native cmsapi_set_user_money(id, Float:fAmmount);


/**
* Изменение баланса кошелька зарегистрированного игрока (добавить / отнять)
*
* @param id id игрока
* @param Float:fAmmount Добавить значение к балансу
*
* @return 1 в случае успеха
* 0 в случае неудачи
*/
native cmsapi_add_user_money(id, Float:fAmmount);


/**
* Получение данных всех имеющихся на сервере услуг
*
* @return New array handle or Invalid_Array if empty
*/
native Array:cmsapi_get_all_services();

/**
* Получение данных всех имеющихся на сервере админов
*
* @return New array handle or Invalid_Array if empty
*/
#pragma deprecated Use cmsapi_get_all_services()
native Array:cmsapi_get_alladmins();


/**
* Получение данных авторизовавшихся админов
*
* @return New Map handle or Invalid_Trie if empty
*/
native Trie:cmsapi_get_online_admins();


/**
* Получение данных о всех купленных доп. услугах
*
* @return New array handle or Invalid_Array if empty
*/
#pragma deprecated Use cmsapi_get_all_services()
native Array:cmsapi_get_all_purchases();


/**
* Получение данных о купленных услугах игрока
*
* @Note Запрос информации обо всех услугах игрока: (szService[] = "" И serviceID = 0)
* Запрос информации о конкретной услуге: (szService[] = "`services`.`rights`" ИЛИ serviceID = `services`.`id`)
*
* @param index id игрока
* @param szAuth steamID игрока
* @param szService Название услуги
* @param serviceID Номер услуги
* @param part Совпадение наименования услуги (флагов)
* true - частичное совпадение
* false - полное совпадение
*
* @return New array handle or Invalid_Array if empty
*/
native Array:cmsapi_get_user_services(const index, const szAuth[] = "", const szService[] = "", serviceID = 0, bool:part = false);

/**
* Удаление услуги из массива по ее номеру у онлайн-игрока
*
* @Note Можно использовать для удаления временных услуг, у которых нет автоудаления
*
* @param iClient id игрока
* @param iServiceId Номер услуги
*
* @return true- при удачном удалении услуги, иначе false
*/
native bool:cmsapi_remove_user_service(const iClient, iServiceId);

/**
* Общее время, проведенное игроком на всех серверах проекта
*
* @param index Индекс игрока
*
* @return Время в секундах
*/
native cmsapi_get_user_gametime(index);


/**
* Получение ID аккаунта админа, под которым игрок авторизовался
*
* @param index Индекс игрока
* @param szAuth Массив для записи идентификатора услуги (ник / steamid)
* @param iLen Размер массива
*
* @return ID админа в базе
* 0 - если игрок не имеет флагов или ошибка при получении данных
*/
native cmsapi_get_admin_ident(index, szAuth[] = "", iLen = 0);

/**
* @deprecated
*/
#pragma deprecated Use cmsapi_get_info_by_admin_id()
native Trie:cmsapi_get_admin_info(aID);


/**
* Получение данных об услуге по индексу админа
*
* @param iAdminIndex ID администратора в БД сайта
* @param aAdminData массив для записи данных
*
* @return ArrayIndex массива
* SERVICE_NOT_FOUND, если данные не найдены
*/
native cmsapi_get_info_by_admin_id(iAdminIndex, aAdminData[eAdminInfo] = "");


/**
* Получение данных об услуге по индексу услуги
*
* @param iAdminServicе ID услуги в БД сайта
* @param aAdminData массив для записи данных
*
* @return ArrayIndex массива
* SERVICE_NOT_FOUND, если данные не найдены
*/
native cmsapi_get_info_by_admin_service(iAdminService, aAdminData[eAdminInfo] = "");


/**
* Получение идентификатора текущего сервера в БД сайта
*
* @return Идентификатор (колонка id таблицы servers) текущего сервера
*/
native cmsapi_get_server_id();


/**
* Получение информации о балансе БАНКА ИГРОВЫХ ДЕНЕГ зарегистрированного игрока
*
* @param id Индекс игрока
*
* @return Значение баланса игровых денег
*/
native cmsapi_get_user_bank(id);


/**
* Установка баланса БАНКА ИГРОВЫХ ДЕНЕГ зарегистрированного игрока
*
* @param id Индекс игрока
* @param ammount Новое значение баланса
*
* @return 1 в случае успеха
* 0 в случае неудачи
*/
native cmsapi_set_user_bank(id, ammount);


/**
* Изменение баланса ИГРОВЫХ ДЕНЕГ зарегистрированного игрока (добавить / отнять)
*
* @param id Индекс игрока
* @param ammount Добавить значение к балансу
*
* @return 1 в случае успеха
* 0 в случае неудачи
*/
native cmsapi_add_user_bank(id, ammount);


/**
* Получение даты регистрации игрока на сайте
*
* @param id Индекс игрока
* @param shortTime true- короткий формат даты ДД-ММ-ГГГГ
* false - ГГГГ-ММ-ДД Ч:М:С
* @param szDate Дата регистрации в формате @shortTime
* @param iLen Размер массива szDate
*
* @return Время в формате UNIX
* 0 - пользователь не найден (не зарегистрирован)
*/
native cmsapi_get_user_regdate(id, szDate[] = "", iLen = 0, bool:shortTime = true);


/**
* Получение даты последней активности пользователя на сайте
*
* @param id Индекс игрока
* @param szDate Дата последней активности в формате ГГГГ-ММ-ДД
* @param iLen Размер массива szDate[]
*
* @return Время в формате UNIX
* 0 - пользователь не найден (не зарегистрирован)
*/
native cmsapi_get_user_lastactiv(id, szDate[]="", iLen=0);


/**
* Получение величины персональной скидки на сайте
*
* @param id Индекс игрока
*
* @return Cкидка в %
*/
native cmsapi_get_user_discount(id);


/**
* Динамическая перепроверка прав доступа у игрока
*
* @param id Индекс игрока
*
* @noreturn
*/
native cmsapi_reaccess_admin(id);


/**
* Получение szAuthId игрока в формате steamid64 (profileID)
*
* @param index Индекс игрока
* @param auth64 Массив для записи steamID64 игрока
* @param iLen Размер массива auth64[]
*
* @return Количество ячеек, записанных в массив
*/
native cmsapi_get_user_authid64(index, auth64[], iLen);


/**
* Изменение баланса на сайте с перезагрузкой значения из БД
*
* @param index Индекс игрока
* @param value Сумма для добавления/списания (value / -value)
* @param send Отправить запрос в БД для обновления баланса
* true - да, будет произведена полная перезагрузка данных пользователя, в т.ч. баланс
* false - нет, изменение будет учтено в базе, но новый баланс загружаться не будет
*
* @noreturn
*/
native cmsapi_reload_wallet(index, value, bool:send = false);


/**
* Добавление флагов пользователю на текущую сессию до смены карты
*
* @note Добавляет данные в массив аккаунтов, для последующей авторизации игрока
* Если bAuthorize = false, то авторизацию для выдачи флагов необходимо произвести через cmsapi_reaccess_admin(index)
*
* @param index Индекс игрока
* @param szFlags Флаги доступа
* @param iTime Срок действия флагов, секунд (-1 - на карту)
* @param szServiceName Название услуги (например, "вип за стим", "ночной вип" и т.п.)
* @param bAuthorize Авторизовать пользователя сразу
*
* @return индекс ячейки, добавленной в массив админов (Array:cmsapi_get_all_services)
-1 - если услуга с этими флагами уже есть.
*/
native cmsapi_set_user_flags(index, const szFlags[], iTime = -1, const szServiceName[] = "", bAuthorize = true);


/**
* Добаление аккаунтов в базу данных
*
* @note При отключеной функции check_params существует вероятность ошибок со стороны пользователя
* @note Пример:
* cmsapi_add_account(id, "a", "180", "parol", "prt", 0, false)
* игроку №id с его ником выданы флаги "prt" на 180 минут, пароль- "parol"
*
* @param iClient Индекс игрока
* @param szAuthType Тип авторизации (смотри amxconst.inc: Admin authentication behavior flags)
* @param szFlags Флаги (уровни) доступа (смотри amxconst.inc: Admin level constants)
* @param iTime Время в минутах, 0- навсегда (если время не указано, значит 0)
* @param szPasswd Пароль доступа (если нужен)
* @param iServiceId Номер услуги на сайте (если известен)
* @param check_params Проверка введенных данных (true- включить).
*
* @noreturn
*/
native cmsapi_add_account(iClient, szAuthType[], iTime = 0, szPasswd[] = "", szFlags[] = "", iServiceId = 0, check_params = false);

/**
* Получение настроек пользователя из базы данных
*
* @param iClient Индекс игрока
* @param sszSettingName Идентификатор настройки (название)
* @param value Массив для записи значения настройки
* @param value_length Размер массива для записи значения настройки
*
* @return - размер записанного массива, если передается массив для записи значения
* - цифровое значение настройки, если массив не передан
* - -1, если идентификатор настройки не найден
*/
native cmsapi_get_user_setting(iClient, szSettingName[], value[] = "", value_length = 0);

/**
* Сохранение настроек пользователя в базу данных
*
* @param iClient Индекс игрока
* @param sszSettingName Идентификатор настройки (название)
* @param value Массив со значением настройки
* @param delete Удалить настройку
*
* @param return true - при успешном изменении (удалении)
false- при неудаче
*/
native bool:cmsapi_set_user_setting(iClient, szSettingName[], value[], bool:delete = false);


/**
* Проверка доступа игрока к услуге (проверка пароля, если она предсмотрена типом авторизации)
*
* @param iClient Индекс игрока
* @param szService Название услуги
*
* @return 1- при наличии доступа, иначе- 0
*/
native cmsapi_check_service_password(iClient, szServiceName[]);

/**
* Выполняется при заходе зарегистрированного игрока
*
* @param id id игрока
* @param memberId id профиля на сайте
* @param memberName Имя пользователя на сайте
*
* @noreturn
*/
forward OnAPIMemberConnected(id, memberId, memberName[]);

/**
* Выполняется перед проверкой наличия услуг игрока
*
* @param id id игрока
* @return PLUGIN_HANDLED, если нужно пропустить проверку имеющихся услуг. В этом случае, игроку будут выданы дефолтные флаги.
*/
forward OnAPIPreAdminCheck(const id);

/**
* Выполняется при заходе зарегистрированного именинника
*
* @param id id игрока
* @param const szLogin Имя игрока на сайте
* @param const SITE_URL Адрес сайта (квар "cms_url") для вывода поздравительного Motd
*
* @noreturn
*/
forward OnAPIBirthdayMember(id, const szLogin[], const SITE_URL[]);


/**
* Выполняется при успешной проверке соединения с БД
*
* @param Handle:sqlTuple Кешированные данные о соединении с БД
* @param version[] Версия плагина
* @param serverID Номер сервера в БД сайта (столбец `servers`.id`)
*
* @noreturn
*/
forward OnAPIPluginLoaded(Handle:sqlTuple, version[], serverID);


/**
* Выполняется при неудачной инициализации БД.
*
* @note После выполнения, плагин останавливается.
*
* @noreturn
*/
forward OnAPIPluginStop();


/**
* Выполняется после успешной загрузки данных об услугах из базы
*
* @noreturn
*/
forward OnAPIAdminsLoaded();


/**
* Установка префикса в чат из БД
*
* @param id id игрока
* @param prefix[] Префикс игрока в чате
* @param type Тип префикса:
* 1- личный префикс
* 2- префикс группы (админ, вип и т.п.)
*
* @noreturn
*/
forward OnAPISendChatPrefix(id, prefix[], type);

/**
* Выполняется при выдаче флагов игроку (авторизация админа)
*
* @param id id игрока
* @param const szName Ник админа
* @param adminID ID админа в БД сайта
* @param Flags Bitflag value- битсумма флагов
*
* @noreturn
*/
forward OnAPIAdminConnected(id, const szName[], adminID, Flags);

/**
* Выполняется при выходе админа (игрока с флагами доступа) с сервера
*
* @param id Индекс игрока
*
* @noreturn
*/
forward OnAPIAdminDisconnected(id);


/**
* Проверка текущего блока от Админа
*
* @param index Индекс игрока
*
* @return 0- voice + chat
* 1- chat
* 2- voice
* -1- not blocked
*/
native cmsgag_is_user_blocked(index);


/**
* Проверка текущего блока от игрока
*
* @param sender Индекс отправителя
* @param receiver Индекс получателя
*
* @return 1- получатель заблокировал отправителя
* 0- нет блокировки игрока
*/
native cmsgag_is_user_muted_by(receiver, sender);


/**
* Добавление блока игроку
*
* @param id Индекс игрока
* @param typeFunc Тип операции блокировки
* 1- создание
* 2- удаление
* @param blType Тип блока (чат / голос)
* @param blReason[] Причина
* @param blTime Время
* @param printChat Оповестить в чат об операции, false- нет, true- стандартное оповещение о блокировке/разблокировке
*
* @return 0 - блокировка не установлена
* >0 - установлена
*/
native cmsgag_add_user_block(id, typeFunc, blType = 0, blReason[] = "", blTime = 0, bool:printChat = true);

/**
* Общее время, проведенное игроком на всех серверах проекта
*
* @param index Индекс игрока
*
* @return Время игры в секундах
*/
native cmsta_get_user_realtime(index);


#include gamecms_stocks.inc
Не могу понять как записать запрос в базу данных, видимо нет столбцов
 

RockTheStreet

Саппорт года
Сообщения
1,744
Реакции
349
Помог
40 раз(а)
Обратите внимание, если вы хотите заключить сделку с этим пользователем, он заблокирован
Во-первых, по логам видно что нет доступа к базе данных.
Во-вторых, к автору плагина нужно обращаться.
В-третьих, Вы предоставили не исходный код, а инклюд. Более того, исходный код конкретно к версии 5.4.9 не предоставляется.
 
Сообщения
327
Реакции
289
Помог
9 раз(а)
4. У плагина есть официальный форум поддержки
5. Если плагин предоставлен хостингом, хотелось бы, чтобы хостинг и решал проблемы.
6. Не читаете файлы конфига, где ясно написано

2021-01-07_12-35-59.png


Вот вам плагин и говорит
 

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

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