Мне нужен такой handle объект, создание которого, бы генерировало уникальный handleID при этом занимало минимальное количество памяти. Для того, чтобы можно было сохранять на его ID в хештаблицу другой ID такого же простого объекта, на которой можно было сохранять еще один handle, и так далее
Я это вижу примерно следующим образом
set handle1 = CreateHandle()//функция создания какого-то виртуального объекта, который я ищу
set handle2 = CreateHandle()
set handle3 = CreateHandle()
local integer ID_1 = GetHandleId(handle1)
local integer ID_2 = GetHandleId(handle2)
local integer ID_3 = GetHandleId(handle3)
set mainHash =  InitHashtable()
call SaveInteger(mainHash,ID_1,0,ID_2)
call SaveInteger(mainHash,ID_2,0,ID_3)
Вообще, очевидно, что мне просто нужно резервировать уникальный простой handleID, чтобы можно было вереницей доставать потом объекты, чтобы создавать что-то похожее на список. Но какой тип для этого мне подходит?

Используйте структруры или lua.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
30
На счет луа, наверное, это лучший вариант но пока нормальную официальную поддержку не завезли
Как это не завезли? И как это люди умудряются писать без официальной поддержки?
11
NazarPunk, да я не про то. Конечно, можно поставить себе vs code несколько неофициальных утилит и жить почти в шоколаде? О чем говорить , если в чистом варике без JNGP никогда не было подсветки синтаксиса в jass. Но все это неофициальные утилиты.
30
О чем говорить , если в чистом варике без JNGP никогда не было подсветки синтаксиса в jass
И вы думаете что-то изменится?
Можно вообще самому написать себе сборщик и не мучаться)
11
Vlod, я попробовал, спасибо, это решает мою проблему, если нельзя резервировать handleID без создания тяжелого объекта, спасибо за хороший вариант, однако не решает ее в глобальном смысле. Потому, что для этой нумерации придется отдельную хэштаблицу создавать.
NazarPunk:
И вы думаете что-то изменится?
Ну я думаю, что да jasshelper то они официально добавили раньше и его не было.
30
Ну я думаю, что да jasshelper то они официально добавили раньше и его не было.
В нём не так много возможностей, как у современной IDE, и врятли близы будут добавлять функционал по работе с кодом.
26
Хмм возможно я что то не так понял, но разве key не подходит как пустой хендл?
globals
key MyHandle
endglobals
24
Ну я думаю, что да jasshelper то они официально добавили раньше и его не было.
Не смешите моего вымышленного кота... Добавленый близами жассхелпер добавлен криво, работает хуже чем в JNGP, не обновляется, требует костылей и пинков под зад для нормальной работы, не может быть обновлен вручную до актуальной версии, не может быть правильно перенастроен... Кому нужен этот цирк с конями... Уж лучше навернуть вскод, ткнуть туда пару плагинов и радоваться жизни.

И да, для создания структур данных в жассе лучше подходят параллельные массивы, чем хештаблица. Если только данных не так много, что они начинают выходить за лимит размера массива, но тогда это уже совсем другая проблема...
28
Jack-of-shadow, это тип vJass, это просто число, причём довольно маленькое, может пересекаться с индексами игроков.
Я юзаю этот тип, потому что по индексу игрока ничего в хеше не храню.
38
Нет, ты неправильно это делаешь, хранить надо просто целые числа (или ключи-строки, а сохранять через StringHash())
P.S. С lua всё хорошо
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.