Показать сообщение отдельно
Старый 03.06.2011, 16:25
Charly84 вне форума Посмотреть профиль Отправить личное сообщение для Charly84 Посетить домашнюю страницу Charly84 Найти все сообщения от Charly84
  № 1  
Ответить с цитированием
Charly84
 
Аватар для Charly84

Регистрация: Aug 2004
Адрес: Украина, Киев, Белая Церковь
Сообщений: 204
Отправить сообщение для Charly84 с помощью ICQ
По умолчанию Замена 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 в уже готовой, отттестированой программе (довольно большой программе с кучей кода % ) что б не поламать ее.

Спасибо.
__________________
Идущий осилит дорогу!