PDA

Просмотр полной версии : отслеживание изменения элемента массива, или как объединить два участка кода.


e15r
04.08.2010, 20:55
есть таймер, который отсчитывает 60 секунд по истечении которых издается звук.


var Seconds:Number = 60;
setInterval(TIMER, 1000);
function TIMER()
{
if (Seconds > 0)
{
Seconds--;
TIMER0.text = Seconds;
trace(Seconds)
if (Seconds == 0) {url_sound.start()};
}
}



есть массив элементы которого обновляются каждые 5 секунд
при этом часть этого массива может поменяться а часть нет
элементы массива выглядят следующим образом: NAME1 , NAME4, NAME7, ит.д.


point0.text = alarmArray[0]
point1.text = alarmArray[1]
point2.text = alarmArray[2]
point3.text = alarmArray[3]
point4.text = alarmArray[4]
point5.text = alarmArray[5]
point6.text = alarmArray[6]
point7.text = alarmArray[7]
point8.text = alarmArray[8]
point9.text = alarmArray[9]




это текстовые поля в которых отображаются элементы массива.

есть также текстовые поля типа TIMER0.text в которых отображается таймер.


проблема в том, что мне надо:
при появлении элемента массива, должен запускаться уникальный для него таймер.

при появлении второго элемента массива должен запускаться второй таймер, уникальный для этого элемента.

если время для первого ещё не истекло, а элемент уже исчез то таймер тоже должен исчезнуть.

при этом, второй элемент массива переместится на место первого, и вместе с ним должен переместится и его уникальный уже отсчитавший что-то таймер.


не совсем понимаю как это надо делать.

спасибо.

Добавлено через 2 часа 31 минуту
теория:
надо сделать 3 массива:
1ый массив формируется каждый раз заного при обновлении данных(это есть)
2ой массив каждый раз, должен сравниваться с первым:
а) на поиск в 1-ом массиве элементов имеющихся во 2-ом массиве,
если в первом массиве нет того или иного элемента имеющегося во 2-ом массиве, он из второго удаляется а его таймер удаляется.
б) на добавление новых элементов, если в 1-ом массиве содержаться элементы которых нет во 2-ом массиве они в него добавляются, и для них начинаются новые таймеры
3ий массив содержит в себе таймеры.


вопрос: я нашел несколько алгоритмов сравнение массивов но они как назло на as3.0
вопрос2: каким образом мне отслеживать 3 массив, я чегото не понимаю пока что.