Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Изменение параметров функции циклом. (http://www.flasher.ru/forum/showthread.php?t=72273)

Что такое хорошо? 23.11.2005 04:23

Изменение параметров функции циклом.
 
Изменение параметров функции циклом.

Прописал на _руте функцию.

function my_func(st1, st2, st3, st4, st5, st6, st7, st8) {
mc.sub1._alpha = st1;
mc.sub2._alpha = st2;
mc.sub3._alpha = st3;
mc.sub4._alpha = st4;
mc.sub5._alpha = st5;
mc.sub6._alpha = st6;
mc.sub7._alpha = st7;
mc.sub8._alpha = st8;
}

а в подгружаемом на _рут фильме, происходит переназначение ее параметров.
_level0.my_func(10, 7, 35, 100, 65, 20, 45, 14);
Вот в таком виде сейчас у меня все работает.

Теперь пытаюсь сократить писанину и циклом for все это дело укатать.
Но параметры функции "упорно" не переназначаются. :(
Вот так пытаюсь это сделать:

function my_func(st1, st2, st3, st4, st5, st6, st7, st8) {
for (i=0; i<9; i++) {
mc["sub"+i]._alpha = ["st"+i];
}
}
Подскажите, плиз.
Очень хочется разобраться. Где тут "борода"?
Спасибо.

Antares 23.11.2005 05:11

Очень интересно, где вы вычитали, что к параметрам функции можно обращаться через квадратные скобки подобным образом.

Вам нужен массив arguments. Оттрейсите его в первой строке функции и все поймете. Прямо так и пишем: trace(arguments);

antonyrec 23.11.2005 13:34

Совершенно верно. Вот на всякий случай.

function my_func(st1, st2, st3, st4, st5, st6, st7, st8) {
for (i=0; i<9; i++) {
mc["sub"+i]._alpha = arguments[i];
}
}

Что такое хорошо? 23.11.2005 17:01

Гуд! Все работает.
Где-то я предчувствовал наличие команды arguments :)
Спасибо.


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

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