Работа с объектами, использующими Flash AS3, которые были созданы дизайнером вручную на временной шкале - PullRequest
1 голос
/ 26 июля 2011

Я пытался создать приложение, в котором дизайнер создавал контент на временной шкале в виде последовательности ключевых кадров. Каждый ключевой кадр совершенно другой. Когда приложение запускается, я выбираю один из фреймов, перемещаю головку воспроизведения к этому фрейму и останавливаюсь (используя gotoAndStop). Затем, ссылаясь на символы в ключевом кадре по имени, я использую AS3, чтобы разрешить перетаскивание, и я также делаю некоторые программные движения.

Проблема в том, что при переходе к другому ключевому кадру на временной шкале с помощью gotoAndStop символы, которые были затронуты AS3 в предыдущем кадре, даже если на них не ссылается ключевой кадр дизайнера, появляются на сцене , Как будто любой объект DisplayObject, к которому я прикасаюсь с AS3, отделен от временной шкалы.

Есть ли у кого-нибудь предложения о том, как программно работать с содержимым временной шкалы (MovieClip), созданным вручную дизайнером. Это только кажется, что это должен быть действительно распространенный вариант использования. Кажется, что единственное, что я могу сделать безопасно с временной шкалой, это переместить игровую головку и ответить на события (если я не изменю состояние объектов DisplayObject на временной шкале). Кроме того, есть ли хорошая документация о том, как объекты распределяются и уничтожаются при воспроизведении временной шкалы?

Спасибо!

1 Ответ

2 голосов
/ 26 июля 2011

Проблема в том, что при переходе к другому ключевому кадру на временной шкале с помощью gotoAndStop символы, которые были затронуты AS3 в предыдущем кадре, даже если на них не ссылается ключевой кадр дизайнера, появляются на сцене , Как будто любой объект DisplayObject, к которому я прикасаюсь с AS3, становится отделенным от временной шкалы.

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

Вы уверены, что на них не ссылаются ключевые кадры дизайнеров? В противном случае вы можете попробовать другой подход, чем просто кодирование на временной шкале.

Один из способов объединения FLA с пользовательским кодом - создать символы фрагмента ролика, созданные дизайнером, и экспортировать их, расширяя собственный класс AS. Таким образом, дизайнер может поиграть с внешним видом, а ваш класс .as может управлять функциональностью.

Для этого установите свой мувиклип на «Экспорт для ActionScript», а затем выберите файл класса, который вы написали в поле «Класс». Убедитесь, что ваш класс расширяется MovieClip.

Это также замечательно, потому что вы можете кодировать в своем AS-файле, так как дизайнер работает во Flash, и вам не нужно совместно использовать один и тот же файл.

Это не обязательно решит все ваши проблемы, скорее это рекомендация рабочего процесса, которая может работать для вас

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...