Нужно сохранить массив переменных в хэш таблицу. Можно ли? И если нет, то как можно выкрутится?

avuremybe, в хэштейбле данные хранятся по 2 ключам
т.е. хэштейбл это двумерный массив (массив в массиве)
1 ключ используй как id юнита по которому сохраняешь данные
2 ключ это индекс твоего массива
зачем чтото придумывать
всеравно готов поспорить что ты используешь только 1 ключ а для второго какая нибудь константа
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
20
Массивы в вц3 имеют размер в 8192 элемента. Можно ли сохранить переменную в хэштейбл? Да. А 8192 раза? Тоже да!
26
Diaboliko, ты предлагаешь сохранять каждую переменную из массива отдельно? у меня идея была в том, чтобы по одному ключу система могла достать нужный набор данных для любого юнита...
20
То есть? Как реализована ваша БД? Я не вижу проблемы
17
структуры используй
struct mystruct{

static mystruct My[]
float x
float y

}
пример
void MyFunc{

mystruct.My[0].x=GetUnitX(GetTriggerUnit())
mystruct.My[0].y=GetUnitY(GetTriggerUnit())
}
вроде так, давно структуры не использую + этого метода что можно делать так
и вытаскивать с любого места кода
void SetFunc(unit u,mystruct M){
	SetUnitX(u,M.My[0].x)
	SetUnitX(u,M.My[0].x)
}
или алтернативный вариант
library L{
	public float x[]
		public float y[]
}
сохранять так
void func(unit u){
	
	L_x[0]=GetUnitX(u)
		L_y[0]=GetUnitY(u)
}
но библеотека должна быть выше всего кода который её использует
32
Структруы Vjass в помощь, так же есть мемхак...
26
Diaboliko, я вяжу информацию к юниту через хэш.
Системы по универсальному ключу берут у обрабатываемого юнита нужную им информацию.
ledoed, я пока только jass изучаю. Где можно прочесть как это реализовано?
28
avuremybe, в хэштейбле данные хранятся по 2 ключам
т.е. хэштейбл это двумерный массив (массив в массиве)
1 ключ используй как id юнита по которому сохраняешь данные
2 ключ это индекс твоего массива
зачем чтото придумывать
всеравно готов поспорить что ты используешь только 1 ключ а для второго какая нибудь константа
Принятый ответ
20
А я использую параллельные массивы, каждый из которых по своей сути является столбцом БД, а номер строки хранится в UnitUserData. Вполне комфортно себя чувствую.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.