![]() |
Переключение кадров и условие currentFrame
доброго времени суток
у меня вопрос следующего характера. Мне нужно было сделать меню такого вида- 4 мувиклипа, в каждом свои кнопки. и соответственно 2 кнопки, переключающие эти клипы. На первый взгляд ничего сложного, я прикинул каким способом лучше выполнить, и пришел к выводу сделать 4 кадра на главной сцене. Слой с кнопками переключения клипов, общий для всех. Так же как и слой АС3. Для мягкой смены кадром сделал следующим образом: добавляется класс Fader, создается экземпляр. Далее по условию, какой кадр проигрывается ( if currentFrame == (х)) прописываю слушатели на кнопки, внутри клипов. Без if это не получается, т.к. он ругается на нулевой объект. Вот небольшой пример кода Код AS3:
Код AS3:
далее сами исполнительные функции смены Код AS3:
Подтолкните пожалуйста, где же я совершил какую то концептуальную ошибку? |
Цитата:
Цитата:
Кадры нужны для анимации. А в вашем случае, думаю, простого переключения видимости хватит. И не нужно будет заново подписываться на события и отслеживать номер кадра. |
Окна - контейнеры (Sprite например).
Кнопки - SimpleButton из flash ide запихнутые в swc, или созданные кодом на основе того же Sprite, например. Осталось повесить слушатели на кнопки и в обработчиках addChild/removeChild нужных/не нужных окон. А кадры если и использовать, то только как мультик/кадр с контентом без каких либо интерактивных элементов. |
я в итоге потом так и сделал. Правда еще не понял как сделать плавный переход между кадрами, то есть сделать клип в alpha 0, следующий клип сделать видимым, и потом из альфа 0 в 1.
А по поводу 4 кадров- мне бы понять, почему такая структура не работает (чтобы избегать дальнейших ошибок) Ведь по идеи переключение происходит... spirit2 только сейчас увидел ваш ответ. Итог 1- все в 1 кадр, и по-другому никак? У меня есть примеры работ, которые сделаны с полной функциональностью на подобном принципе.. поэтому я так изначально и подумал сделать |
Вариантов всегда больше одного. Просто проще отделить логику от графики (кадров, клипов и т.п.) и потом уже не задумываться в каком там кадре что-то отвалилось..
Для плавного изменения прозрачности нужно повесить слушатель на ENTER_FRAME или таймер и изменять альфу на каждой итерации по чуть-чуть. Или воспользоваться твинерами. |
| Часовой пояс GMT +4, время: 11:13. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.