• Пожалуйста, создайте название темы отражающее ее смысл
  • Для ускорения решения Вашего вопроса заполните обязательные поля и подробно опишите возникшую проблему

Помощь ID пользователя на сайте | GameCMS API 5.3.5

Purpeex

Участник
Сообщения
7
Реакции
6
Баллы
3
В очередной раз столкнулся с небольшой ошибкой в Gcms API

Итак, в gamecms5.inc у нас есть:
C++:
enum _:userDataID
{
    MemberId,
    MemberLogin[MAX_NAME_LENGTH],
    MemberName[MAX_NAME_LENGTH*2],
    MemberBirth[MAX_INT_LEN + 1],
    MemberNick[MAX_NAME_LENGTH],
    Float:MemberMoney,
    Float:MemberMoneyCurr,
    Float:MemberMoneyOld,
    MemberGameTime,
    MemberGameTimeCurr,
    MemberPrefix[MAX_STRING_LEN],
    MemberGameMoney,
    MemberGameMoneyCurr,
    MemberGameMoneyOld,
    MemberMessages,
    MemberGroup,
    MemberGroupName[MAX_NAME_LENGTH*2],
    MemberThanks,
    MemberAnswers,
    MemberRaiting,
    MemberRegDate[MAX_STRING_LEN],
    MemberLastActivity[MAX_INT_LEN],
    MemberDiscount
};

Моя проблема связана с MemberId, который находится на первой строчке.
Если в своём скрипте создать переменную c этим enum'ом (например: PlayerData[32][userDataID])
и попытаться вывести MemberId в чат:
C++:
client_print(id, print_chat, "API MemberId - %d", PlayerData[id][MemberId])

То, в итоге, получаем цифру 0. (А остальное, например, MemberName/MemberMoney - прекрасно работает и отображает всё как надо)
Ed8hsXZ.png



Но если получить ID двумя другими способами:
C++:
//new AlternativeMemberId[33], AnotherAlternativeMemberId[33];

public OnAPIMemberConnected(id, memberId, memberName[]) {
    AlternativeMemberId[id] = cmsapi_is_user_member(id);
    AnotherAlternativeMemberId[id] = memberId;
}

И вывести всё это вместе в чат:
C++:
client_print(id, print_chat, "API MemberId - %d | Alternative MemberId - %d | Another Alternative MemberId - %d", PlayerData[id][MemberId], AlternativeMemberId[id], AnotherAlternativeMemberId[id]);

То можем увидеть совсем иную картину: (Мой ID действительно 2)
1584669818662.png



Логгирование прямо в gamecms_api.sma почему-то даёт другой результат (средняя строчка)
1584670056954.png




Почему так? Если это всё таки я что-то не так делаю, то дайте знать.
Исходник прикрепляю.
 

Вложения

  • MadLads_FuckingAPI.sma
    926 байт · Просмотры: 3
Последнее редактирование:
Purpeex,
Есть инициализация массива
C++:
new PlayerData[32][userDataID];
И вывод его ячейки в чат
C++:
log_amx("API MemberId - %d | Alternative MemberId - %d | Another Alternative MemberId - %d", PlayerData[id][MemberId], AlternativeMemberId[id], AnotherAlternativeMemberId[id]);

В вашем исходнике нет присвоения значения ячейке [MemberId]
 
Назад
Сверху