
03.06.2011, 16:25
|
|
Регистрация: Aug 2004
Адрес: Украина, Киев, Белая Церковь
Сообщений: 204
|
Замена runtime sharing на loadMovie+attachMovie в AS 1.0?
Добрый день. Передо мной поставлена задача избавиться от runtime sharing для игры, которая в данный момент его использует (не буду углубляться почему его надо убрать).
game.swf - файл игры
content.swf - контент для кнопочен и т.д. на разных языках в виде картинок и мувиков.
Для этого:
1. Убираю "Import for runtime sharing" в FLA (game.swf) в который раньше подгружался контент из внешнего файла (content.swf) с помощью runtime sharing.
2. В "content.swf" убираю "Export for runtime sharing" и ставлю галочки над "Export for ActionScript", "..in first frame" и указываю Identifier для всех объектов в библиотеке.
3. Подгружаю в "game.swf" файл "content.swf" на _levelN (либо в мувик-контейнер).
4. Как только файл "content.swf" загружен в "game.swf" я делаю attachMovie и указываю идентификатор, который я указал в "content.swf".
Проблема в том, что клипы не аттачатся. C "game.swf" нет доступа к библиотеке загруженного в него "content.swf" кроме 2 случаев:
Есть 2 способа как можно приаттачить мувик с библиотеки загруженого в него SWF:
1. Можно аттачить объекты только в том мувике и всех его подмувиках, в который был загружен SWF методом loadMovie
2. Можно аттачить объекты только в том слое, в который был загружен SWF методом loadMovieNum.
Например:
1. гружу content.swf в game.swf на _root.container_mc.
- Если хочу сделать attachMovie для объекта, который находится в content.swf на _root - не аттачится
- Если хочу сделать attachMovie для объекта, который находится в content.swf на _root.container_mc - работает.
- Попытки дублировать клип через duplicateMovieClip с _root.container_mc на _root увенчались неудачей.
Но в игре объекты находятся в разных местах с разной вложенностью, поэому мне надо аттачить объекты с загруженного content.swf в разные места, а ActionScript 1.0 похоже против такого хода событий, он может аттачить только там (клип или слой) куда был загружен swf.
Игра написана на ActionScript 1.0 (Flash Player 6).
Вопрос: можно ли как-от обращаться и класть на сцену объекты с загруженного SWF при описанной ситуации.
Или может есть более простой способ как избавится от runtime sharing в уже готовой, отттестированой программе (довольно большой программе с кучей кода % ) что б не поламать ее.
Спасибо.
__________________
Идущий осилит дорогу!
|