- 0
Как использовать значение переменной в качестве ключа?
Вопросы
Лучший ответ
@irtf у массивов нет ключей, это индексы. enum введен просто для удобства, чтобы вместо цифр указывать буквы, людям программистам так проще.
Поэтому Ваше обращение аналогично
PlayerInfo[0][2] // получить pPassword для игрока с playerid = 0
В Вашем случае необходимо делать проверку на то, что ввел пользователь и в зависимости от этого выдавать нужные данные.
Функция для сравнения срок - strcmp (альт. википедия)
-
Последние посетители 0 пользователей онлайн
Ни одного зарегистрированного пользователя не просматривает данную страницу
-
Похожий контент
-
От Daf
Здравствуйте, знатоки Pawn. У меня возникла такая проблема, сейчас попробую расписать ее подробно:
Я решил добавить в игру Real cars. Всё сделал правильно: подключил инклуд, знаю принцип добавление реал кара. Захожу в игру и вижу машину. Добавляю вторую — она тоже есть. Добавляю третью — снова всё нормально. Но когда я пытаюсь добавить четвёртую, игра крашится при входе.
Не важно, какой ид авто я ставлю, менял модельки, переделал всё, но проблема остаётся. Думаю, вы сможете подсказать, как её решить.
Include - m_custom_sync 1.0.0
CreateVehicleVEx(npoType, npoId, modelid, Float:x, Float:y, Float:z, Float:angle, color1, color2, respawn_delay = 180, addsiren = 0, tc_veh = 0) { new vehicle, custom_id = -1; if(!(400 <= modelid <= 20000)) { custom_id = GetSlotVehicleModelSync(modelid); if(custom_id == -1) return print("daf top"); modelid = customVehModels[custom_id][ModelID]; } #include <m_custom-sync> #define M_CUSTOM_CustomForPlayers 1 #define M_CUSTOM_CustomForActors 1 #define M_CUSTOM_CustomForVehicles 1 public OnGameModeInit() { AddVehicleSyncModel(560, 12500); // беха AddVehicleSyncModel(560, 12600); // порш AddVehicleSyncModel(579, 12700); // хамер AddVehicleSyncModel(560, 19929); // чирик
-


irtf Новичок 0
Добрый день, уважаемые скриптеры.
Вопрос мой таков: как использовать значение переменной в качестве ключа массива?
Пример кода:
enum pInfo { pID, pName, pPassword, }; new PlayerInfo[MAX_PLAYERS][pInfo]; // Тут массив заплняется значениями new key[24] = "pPassword"; // Допустим, это ввел пользователь print(PlayerInfo[playerid][key]); // ???Но при таком раскладе функция ищет ключ "key" вместо ключа "pPassword".
Я использую такой костыль для вывода данных, которые запросит пользователь.
Второй день не могу найти ответ на этот простой вопрос (я новичок).
Поделиться сообщением
Ссылка на сообщение