Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   2 в одном... (http://www.flasher.ru/forum/showthread.php?t=58860)

rojok-online 31.05.2004 20:13

2 в одном...
 
1.Есть массив...
Код:

y = [0, 80, 160, 240, 320, 400, 480, 560, 640, 720, 800, 880, 960, 1040, 1120, 1200, 1280, 1360];
Как сделать так чтобы геометрическая прогрессияросла шла в такой последовательности?!?! И как сделать так чтоб при добавлении обьекта в массив добавлялась ячейка...
например: есть 5 обектов (jpg), они выстраиваются по оси у 0, 80, 160, 240, 320... Я добовляю еще 1 (jpg) и добовляется еще одна позиция на оси у 400

2.почему мув не встает на свои места(_х и _у) ?!
Код:

this["photo"+i].onRelease = function() {
                _root.createEmptyMovieClip("foto", 0).attachMovie("big", "big", 1);
                _root.foto.big._x = 105;
                _root.foto.big._y = 54;
        };


rojok-online 31.05.2004 20:40

с прибавлением разобрался... но как сделать гем. прогрессию ?! и 2 вопрос тож (((

Igor_MONSTR 31.05.2004 21:30

Попробуй аттачить так ...attachMovie("big", "big"+i, i);

rojok-online 31.05.2004 21:34

если я буду так аттачить то мув на мув ложеться и флеха начнет тормозить... помойму...

opex 31.05.2004 21:40

Это то что тебе нужно если я тебя правлено понял, но это не геометрическая прогресси.

Код:

y = [0, 80, 160];
function step(step) {
        y.push(y[y.length-1]+step);
}
for (i=0; i<20; i++) {
        step(80);
}
trace(y);

ГЕОМЕТРИЧЕСКАЯ ПРОГРЕССИЯ , последовательность чисел, из которых каждое следующее получается из предыдущего умножением на постоянное число q, называемого знаменателем геометрической прогрессии, напр., 2, 8, 32, 128,..., q = 4.
Если тебе всетаки нужна ГЕОМЕТРИЧЕСКАЯ ПРОГРЕССИЯ то вот

Код:

y = [1];
function step(q) {
        y.push(y[y.length-1]*q);
}
for (i=0; i<20; i++) {
        step(80);
}
trace(y);


rojok-online 31.05.2004 21:46

opex
Привет!
Че в аське то не появляешься?
хм... чет не рабтает.. ((

мож я че туплю ?!
вот полный скрип...
Код:

y = [0, 80, 160, 240, 320, 400, 480, 560, 640, 720, 800, 880, 960, 1040, 1120, 1200, 1280, 1360];
for (i=0; i<18; i++) {
        this.attachMovie("photo", "photo"+i, i);
        this["photo"+i]._xscale = this["photo"+i]._yscale=70;
        this["photo"+i]._x = 70;
        this["photo"+i]._y = y[i];
        this["photo"+i].LD.loadMovie("photo/mini/image_0"+i+".jpg");
        this["photo"+i].onRelease = function() {
                _root.createEmptyMovieClip("foto", 0).attachMovie("big", "big", 0);
                _root.foto.big._x = 105;
                _root.foto.big._y = 54;
        };
}


opex 31.05.2004 21:51

что то я тебя не очень догоняю ты сначало атачи фото из библиотеки а потом грузиш из вне

rojok-online 31.05.2004 21:57

нет )
this.attachMovie("photo", "photo"+i, i);
это я оттачу мувик из библиотеки пустой

this["photo"+i].LD.loadMovie("photo/mini/image_0"+i+".jpg");
а это я гружу саму картинку внутрь мува

rojok-online 01.06.2004 21:27

с прогрессией разобрался...
Код:

(80)*(y.length-i-1)
а вот со 2 вопросом подскажете в чем дело ?!? :)

Dindin 01.06.2004 23:29

Код:

this["photo"+i].onRelease = function() {
_root.createEmptyMovieClip("foto", 0);
_root.foto.attachMovie("big", "big", 1,{_x:105,_y:54});
};



Часовой пояс GMT +4, время: 23:35.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.