Страница 1 из 1

Массивы данных и работа с ними

Добавлено: 08 июл 2018, 17:09
дуьфыеук
Как можно инициализировать массив данных единожды и далее работать с ним?
если делаю так, то получается, он обнуляется после каждой итерации OnUpdate()

Код: Выделить всё

function OnUpdate()
{
int[] LevelList = new int[10];
}

Re: Массивы данных и работа с ними

Добавлено: 08 июл 2018, 22:45
evge
Ничего не мешает использовать для этого список Int (IntList) или DoubleList.

в Initialize()

Код: Выделить всё

AddGlobalVariable("MyList", Types.IntList);


в OnUpdate(), примеры:

Код: Выделить всё

MyList.Add(x);
MyList.Insert(0, x);
MyList.RemoveAt(0);
MyList.RemoveAt(MyList.Count - 1);

MyList[5] = 100;

if (MyList.Count > 10) MyList.RemoveAt(MyList.Count - 1);

//и т.д.

Re: Массивы данных и работа с ними

Добавлено: 08 июл 2018, 23:40
дуьфыеук
evge писал(а):Ничего не мешает использовать для этого список Int (IntList) или DoubleList.

в Initialize()


подскажите, а многомерные массивы и кортежи для расчетов он поддерживает?

Re: Массивы данных и работа с ними

Добавлено: 09 июл 2018, 07:57
evge
Глоб. многомерные массивы нет, кортежи тоже нет

Re: Массивы данных и работа с ними

Добавлено: 09 июл 2018, 21:07
ensh
Наличие одномерных массивов позволяет моделировать N-мерные массивы и кортежи конечной размерности.

Re: Массивы данных и работа с ними

Добавлено: 09 июл 2018, 21:07
AP_Bor
evge писал(а):Глоб. многомерные массивы нет, кортежи тоже нет

Можно попробовать Object to JSON to AddGlobalVariable Types.String
AddGlobalVariable("obj", typeof(Dictionary<string, object>));

Re: Массивы данных и работа с ними

Добавлено: 09 июл 2018, 22:19
дуьфыеук
ensh писал(а):Наличие одномерных массивов позволяет моделировать N-мерные массивы и кортежи конечной размерности.


а можно на примере показать, как это сделать?)

одномерные я немного освоил, вроде работает, не считая семантических ошибок

Код: Выделить всё

AddGlobalVariable("list1", Types.IntList);
AddGlobalVariable("list2", Types.DoubleList);
...
...
//очищаем массив
while(list1.Count > 0 || list2.Count > 0){
      list1.RemoveAt(0);      
      list2.RemoveAt(0);
}