Добавлен MpW
Использую хэш-таблицу в качестве хранилища. Но стал замечать, что не хватает еще одного массива. Мне бы хватило три массива залипить под хранилище.
Допустим, есть магазин, 1 ключ - его хэндл, 2 ключ - типы предмета (равкод итема), 3 ключ - номер).
Представьте, если можно как-нибудь сохранить вот так (примерно)
call SaveUnitHadle(udg_Hash, id, rawcode, 0, u)
call SaveBoolean(udg_Hash, id, rawcode, 1, true)
call SaveInteger(udg_Hash, id, rawcode, 2, 5)
Хотя так сохранить нельзя никак =(( Хэш-таблица использует два ключа.
Хотя так сохранить нельзя никак =(( Хэш-таблица использует два ключа.
Кстати вроде использовал обычный массив от переменной, то там индекс не такой большой. Нельзя туда ни хэндлы всунуть, ни равкоды. А в хэш-таблицу все влезает, и норм. Существует способ решения?
глупый вопрос
Еще вопрос, если сохранить в одну ячейку юнита, то повторно сохранив другой тип (например, boolean), то перезаписывается юнит на boolean? Просто что-то подумал, а что если можно было туда засунуть несколько разных типов(integer, unit, group и др.) в одну ячейку
call SaveUnitHadle(udg_Hash, id, 0, u)
call SaveBoolean(udg_Hash, id, 0, true)
call SaveUnitHadle(udg_Hash, id, 0, u)
call SaveBoolean(udg_Hash, id, 0, true)
Принятый ответ
Steal nerves, лови. Годный такой мануал.
На сишные структуры похожи. Короче. Прочитаешь на 2-3 раза - все поймешь.
На сишные структуры похожи. Короче. Прочитаешь на 2-3 раза - все поймешь.
Загруженные файлы
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
то есть SaveUnitHadle(udg_Hash, id, rawcode, 0, u)
преобразуется в SaveUnitHadle(udg_Hash, id, rawcode + 0 * max_rawcode, u)
но будет ограничение по размеру, max_rawcode должно быть константой которая больше чем все rawcod'ы
Отредактирован MpW
min_rawcode поставить как самый отрицательный равкод
Отредактирован MpW
Отредактирован EnergyFrost
На сишные структуры похожи. Короче. Прочитаешь на 2-3 раза - все поймешь.