![]() |
|
||||||||||
|
|||||
|
Есть такой код
function randomMenu() { var BrighTwo2:Tween = new Tween(thisClip2.rec, "_alpha", Strong.easeIn, 70, 0, 1, true); rnd = Math.ceil(Math.random()*11); trace(rnd); thisClip = this["m"+rnd];//первый квадратик rnd2 = rnd+Math.ceil(Math.random()*10); if (rnd2>11) { rnd2 = rnd2-11; } trace(rnd2); thisClip2 = this["m"+rnd2];//второй квадратик var Brigh:Tween = new Tween(thisClip.rec, "_alpha", Regular.easeOut, 0, 70, 1, true); Brigh.onMotionFinished = function() { var BrighTwo:Tween = new Tween(thisClip2.rec, "_alpha", Regular.easeOut, 0, 70, 1, true); var Brigh2:Tween = new Tween(thisClip.rec, "_alpha", Strong.easeIn, 70, 0, 1, true); Brigh2.onMotionFinished = function() { randomMenu();//вызывает сама себя, для повтора }; }; } randomMenu();
__________________
"Я был готов любить весь мир, но меня не поняли. И я выучился ненаидеть." |
|
|||||
|
Модрон-ветеринар
|
Ну введи флаг какой-нибудь для проверки:
|
|
|||||
|
флаг это понятно, а именно командой можно?
каким-нибудь брейком?
__________________
"Я был готов любить весь мир, но меня не поняли. И я выучился ненаидеть." |
|
|||||
|
Модрон-ветеринар
|
Пожалуйста.
Какая разница, как. Главное, чтобы переменная-флаг stopIt получила значение true. Тогда в моем примере при очередной проверке рекурсивный вызов не произойдет. Либо счетчик поставь на количество итераций, если нужно получить их конечное количество. Последний раз редактировалось mooncar; 16.06.2010 в 16:40. |
|
|||||
|
Квач
Регистрация: Sep 2006
Адрес: Украина, Киев
Сообщений: 1,526
|
2 smailik:
Рекурсию не просто можно, а нужно останавливать, ибо просто измерите глубину стека. ^_^ Вот вы вызываете внутри тела функции её же саму. Что вам мешает ввести проверку и делать такой вызов только при выполнении определённого условия? Как только условие перестанет выполняться, вызов не совершится и рекурсия прервётся.
__________________
Да не нужно тебе читать документацию по Flash и AS от Adobe - ты слишком умён для этого |
|
|||||
|
Регистрация: Feb 2008
Сообщений: 560
|
? |
![]() |
![]() |
Часовой пояс GMT +4, время: 01:22. |
|
|
« Предыдущая тема | Следующая тема » |
|
|